XML Schema Documentation

Table of Contents

top

Schema Document Properties

Target Namespace http://www.hobby-astronomie.net/comast
Version 1.5
Element and Attribute Namespaces
  • Global element and attribute declarations belong to this schema's target namespace.
  • By default, local element declarations have no namespace.
  • By default, local attribute declarations have no namespace.

Declared Namespaces

Prefix Namespace
xml http://www.w3.org/XML/1998/namespace
xsd http://www.w3.org/2001/XMLSchema
fgca http://www.hobby-astronomie.net/comast
Schema Component Representation
<xsd:schema targetNamespace="http://www.hobby-astronomie.net/comast" version="1.5">
...
</xsd:schema>
top

Global Declarations

Element: observations

Name observations
Type Locally-defined complex type
Nillable no
Abstract no
XML Instance Representation
<fgca:observations
version=" xsd:string [1]">
<!--
Key Reference Constraint - siteRef
Selector - ./observation
Field(s) - site/@id
Refers to - fgca:siteKey
-->
<!--
Key Reference Constraint - sessionRef
Selector - ./session
Field(s) - session/@id
Refers to - fgca:sessionKey
-->
<!--
Key Reference Constraint - targetRef
Selector - ./observation
Field(s) - target/@id
Refers to - fgca:targetKey
-->
<!--
Key Reference Constraint - observerRef
Selector - ./observation
Field(s) - observer/@id
Refers to - fgca:observerKey
-->
<!--
Key Reference Constraint - opticsRef
Selector - ./observation
Field(s) - scope/@id
Refers to - fgca:opticsKey
-->
<!--
Key Reference Constraint - eyepiecesRef
Selector - ./observation
Field(s) - eyepiece/@id
Refers to - fgca:eyepieceKey
-->
<!--
Key Reference Constraint - filterRef
Selector - ./observation
Field(s) - filter/@id
Refers to - fgca:filterKey
-->
<!--
Key Reference Constraint - imagersRef
Selector - ./observation
Field(s) - imager/@id
Refers to - fgca:imagerKey
-->
<!--
Key Reference Constraint - datasourceRef
Selector - ./observation/target
Field(s) - observer/@id
Refers to - fgca:observerKey
-->

<observers> [1]
<!--
Key Constraint - observerKey
Selector - ./observer
Field(s) - @id
-->

<observer> fgca:observerType </observer> [0..*]
</observers>
<sites> [1]
<!--
Key Constraint - siteKey
Selector - ./site
Field(s) - @id
-->

<site> fgca:siteType </site> [0..*]
</sites>
<sessions> [1]
<!--
Key Constraint - sessionKey
Selector - ./session
Field(s) - @id
-->

<session> fgca:sessionType </session> [0..*]
</sessions>
<targets> [1]
<!--
Key Constraint - targetKey
Selector - ./target
Field(s) - @id
-->

<target> fgca:observationTargetType </target> [1..*]
</targets>
<scopes> [1]
<!--
Key Constraint - opticsKey
Selector - ./scope
Field(s) - @id
-->

<scope> fgca:opticsType </scope> [0..*]
</scopes>
<eyepieces> [1]
<!--
Key Constraint - eyepieceKey
Selector - ./eyepiece
Field(s) - @id
-->

<eyepiece> fgca:eyepieceType </eyepiece> [0..*]
</eyepieces>
<filters> [1]
<!--
Key Constraint - filterKey
Selector - ./filter
Field(s) - @id
-->

<filter> fgca:filterType </filter> [0..*]
</filters>
<imagers> [1]
<!--
Key Constraint - imagerKey
Selector - ./imager
Field(s) - @id
-->

<imager> fgca:imagerType </imager> [0..*]
</imagers>
<observation> fgca:observationType </observation> [0..*]
</fgca:observations>
Schema Component Representation
<xsd:element name="observations">
<xsd:complexType>
<xsd:sequence>
<-- *observers* referenced by the observations -->
<xsd:element name="observers">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="observer" type=" fgca:observerType " minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:key name="observerKey">
<xsd:selector xpath="./observer"/>
<xsd:field xpath="@id"/>
</xsd:key>
</xsd:element>
<-- *sites* referenced by observations -->
<xsd:element name="sites">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="site" type=" fgca:siteType " minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:key name="siteKey">
<xsd:selector xpath="./site"/>
<xsd:field xpath="@id"/>
</xsd:key>
</xsd:element>
<-- *session infos* referenced by observations -->
<xsd:element name="sessions">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="session" type=" fgca:sessionType " minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:key name="sessionKey">
<xsd:selector xpath="./session"/>
<xsd:field xpath="@id"/>
</xsd:key>
</xsd:element>
<-- *targets* referenced by observations -->
<xsd:element name="targets">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="target" type=" fgca:observationTargetType " maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:key name="targetKey">
<xsd:selector xpath="./target"/>
<xsd:field xpath="@id"/>
</xsd:key>
</xsd:element>
<-- *scopes* referenced by the observations -->
<xsd:element name="scopes">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="scope" type=" fgca:opticsType " minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:key name="opticsKey">
<xsd:selector xpath="./scope"/>
<xsd:field xpath="@id"/>
</xsd:key>
</xsd:element>
<-- *eyepieces* referenced by the observations -->
<xsd:element name="eyepieces">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="eyepiece" type=" fgca:eyepieceType " minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:key name="eyepieceKey">
<xsd:selector xpath="./eyepiece"/>
<xsd:field xpath="@id"/>
</xsd:key>
</xsd:element>
<-- New in V1.5: *filters* referenced by the observations -->
<xsd:element name="filters">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="filter" type=" fgca:filterType " minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:key name="filterKey">
<xsd:selector xpath="./filter"/>
<xsd:field xpath="@id"/>
</xsd:key>
</xsd:element>
<-- *imagers* referenced by the observations -->
<xsd:element name="imagers">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="imager" type=" fgca:imagerType " minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
</xsd:complexType>
<xsd:key name="imagerKey">
<xsd:selector xpath="./imager"/>
<xsd:field xpath="@id"/>
</xsd:key>
</xsd:element>
<xsd:element name="observation" type=" fgca:observationType " minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="version" type=" xsd:string " use="required"/>
</xsd:complexType>
<-- references to linked entities of observation -->
<-- NOTE: for the sake of the keyrefs the "container elements" (e.g. <scopes>) must exist even if they are empty -->
<xsd:keyref name="siteRef" refer=" fgca:siteKey ">
<xsd:selector xpath="./observation"/>
<xsd:field xpath="site/@id"/>
</xsd:keyref>
<xsd:keyref name="sessionRef" refer=" fgca:sessionKey ">
<xsd:selector xpath="./session"/>
<xsd:field xpath="session/@id"/>
</xsd:keyref>
<xsd:keyref name="targetRef" refer=" fgca:targetKey ">
<xsd:selector xpath="./observation"/>
<xsd:field xpath="target/@id"/>
</xsd:keyref>
<xsd:keyref name="observerRef" refer=" fgca:observerKey ">
<xsd:selector xpath="./observation"/>
<xsd:field xpath="observer/@id"/>
</xsd:keyref>
<xsd:keyref name="opticsRef" refer=" fgca:opticsKey ">
<xsd:selector xpath="./observation"/>
<xsd:field xpath="scope/@id"/>
</xsd:keyref>
<xsd:keyref name="eyepiecesRef" refer=" fgca:eyepieceKey ">
<xsd:selector xpath="./observation"/>
<xsd:field xpath="eyepiece/@id"/>
</xsd:keyref>
<-- New in V1.5 -->
<xsd:keyref name="filterRef" refer=" fgca:filterKey ">
<xsd:selector xpath="./observation"/>
<xsd:field xpath="filter/@id"/>
</xsd:keyref>
<xsd:keyref name="imagersRef" refer=" fgca:imagerKey ">
<xsd:selector xpath="./observation"/>
<xsd:field xpath="imager/@id"/>
</xsd:keyref>
<xsd:keyref name="datasourceRef" refer=" fgca:observerKey ">
<xsd:selector xpath="./observation/target"/>
<xsd:field xpath="observer/@id"/>
</xsd:keyref>
</xsd:element>
top

Global Definitions

Complex Type: CometTargetType

Super-types: observationTargetType < SolarSystemTargetType (by extension) < CometTargetType (by extension)
Sub-types: None
Name CometTargetType
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="CometTargetType">
<xsd:complexContent>
<xsd:extension base=" fgca:SolarSystemTargetType "/>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: MinorPlanetTargetType

Super-types: observationTargetType < SolarSystemTargetType (by extension) < MinorPlanetTargetType (by extension)
Sub-types: None
Name MinorPlanetTargetType
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="MinorPlanetTargetType">
<xsd:complexContent>
<xsd:extension base=" fgca:SolarSystemTargetType "/>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: MoonTargetType

Super-types: observationTargetType < SolarSystemTargetType (by extension) < MoonTargetType (by extension)
Sub-types: None
Name MoonTargetType
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="MoonTargetType">
<xsd:complexContent>
<xsd:extension base=" fgca:SolarSystemTargetType "/>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: PlanetTargetType

Super-types: observationTargetType < SolarSystemTargetType (by extension) < PlanetTargetType (by extension)
Sub-types: None
Name PlanetTargetType
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="PlanetTargetType">
<xsd:complexContent>
<xsd:extension base=" fgca:SolarSystemTargetType "/>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: SolarSystemTargetType

Super-types: observationTargetType < SolarSystemTargetType (by extension)
Sub-types:
Name SolarSystemTargetType
Abstract yes
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="SolarSystemTargetType" abstract="true">
<xsd:complexContent>
<xsd:extension base=" fgca:observationTargetType "/>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: SunTargetType

Super-types: observationTargetType < SolarSystemTargetType (by extension) < SunTargetType (by extension)
Sub-types: None
Name SunTargetType
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="SunTargetType">
<xsd:complexContent>
<xsd:extension base=" fgca:SolarSystemTargetType "/>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: angleType

Super-types: xsd:double < angleType (by extension)
Sub-types: None
Name angleType
Abstract no
XML Instance Representation
<...
unit=" fgca:angleUnit [1]">
xsd:double
</...>
Schema Component Representation
<xsd:complexType name="angleType">
<xsd:simpleContent>
<xsd:extension base=" xsd:double ">
<xsd:attribute name="unit" type=" fgca:angleUnit " use="required"/>
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
top

Complex Type: ccdCameraType

Super-types: imagerType < ccdCameraType (by extension)
Sub-types: None
Name ccdCameraType
Abstract no
XML Instance Representation
<...>
<model> xsd:string </model> [1]
<type> xsd:string (value comes from list: {'ccd'|'film'}) </type> [0..1]
<vendor> xsd:string </vendor> [0..1]
<remarks> xsd:string </remarks> [0..1]
<pixelsX> xsd:positiveInteger </pixelsX> [1]
<pixelsY> xsd:positiveInteger </pixelsY> [1]
</...>
Schema Component Representation
<xsd:complexType name="ccdCameraType">
<xsd:complexContent>
<xsd:extension base=" fgca:imagerType ">
<xsd:sequence>
<xsd:element name="pixelsX" type=" xsd:positiveInteger "/>
<xsd:element name="pixelsY" type=" xsd:positiveInteger "/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: deepSkyDN

Super-types: observationTargetType < deepSkyTargetType (by extension) < deepSkyDN (by extension)
Sub-types: None
Name deepSkyDN
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
<smallDiameter> fgca:nonNegativeAngleType </smallDiameter> [0..1]
<largeDiameter> fgca:nonNegativeAngleType </largeDiameter> [0..1]
<visMag> xsd:double </visMag> [0..1]
<surfBr> xsd:double </surfBr> [0..1]
<pa> fgca:positionAngleType </pa> [0..1]
<opacity> xsd:integer (1 <= value <= 6) </opacity> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="deepSkyDN">
<xsd:complexContent>
<xsd:extension base=" fgca:deepSkyTargetType ">
<xsd:sequence>
<-- position angle of large axis in [deg] -->
<xsd:element name="pa" type=" fgca:positionAngleType " minOccurs="0"/>
<-- opacity acc. to Lynds (1: min, 6:max) -->
<xsd:element name="opacity" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base=" xsd:integer ">
<xsd:minInclusive value="1"/>
<xsd:maxInclusive value="6"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: deepSkyDS

Super-types: observationTargetType < deepSkyTargetType (by extension) < deepSkyDS (by extension)
Sub-types: None
Name deepSkyDS
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
<smallDiameter> fgca:nonNegativeAngleType </smallDiameter> [0..1]
<largeDiameter> fgca:nonNegativeAngleType </largeDiameter> [0..1]
<visMag> xsd:double </visMag> [0..1]
<surfBr> xsd:double </surfBr> [0..1]
<separation> fgca:nonNegativeAngleType </separation> [0..1]
<pa> fgca:positionAngleType </pa> [0..1]
<magComp> xsd:double </magComp> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="deepSkyDS">
<xsd:complexContent>
<xsd:extension base=" fgca:deepSkyTargetType ">
<xsd:sequence>
<-- separation -->
<xsd:element name="separation" type=" fgca:nonNegativeAngleType " minOccurs="0"/>
<-- position angle in [deg] -->
<xsd:element name="pa" type=" fgca:positionAngleType " minOccurs="0"/>
<-- magnitude of companion star in [mag] -->
<xsd:element name="magComp" type=" xsd:double " minOccurs="0"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: deepSkyGC

Super-types: observationTargetType < deepSkyTargetType (by extension) < deepSkyGC (by extension)
Sub-types: None
Name deepSkyGC
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
<smallDiameter> fgca:nonNegativeAngleType </smallDiameter> [0..1]
<largeDiameter> fgca:nonNegativeAngleType </largeDiameter> [0..1]
<visMag> xsd:double </visMag> [0..1]
<surfBr> xsd:double </surfBr> [0..1]
<magStars> xsd:double </magStars> [0..1]
<conc> xsd:string </conc> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="deepSkyGC">
<xsd:complexContent>
<xsd:extension base=" fgca:deepSkyTargetType ">
<xsd:sequence>
<-- magnitude of brightest stars in [mag] -->
<xsd:element name="magStars" type=" xsd:double " minOccurs="0"/>
<-- degree of concentration [I..XII]-->
<xsd:element name="conc" type=" xsd:string " minOccurs="0"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: deepSkyGN

Super-types: observationTargetType < deepSkyTargetType (by extension) < deepSkyGN (by extension)
Sub-types: None
Name deepSkyGN
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
<smallDiameter> fgca:nonNegativeAngleType </smallDiameter> [0..1]
<largeDiameter> fgca:nonNegativeAngleType </largeDiameter> [0..1]
<visMag> xsd:double </visMag> [0..1]
<surfBr> xsd:double </surfBr> [0..1]
<nebulaType> xsd:string </nebulaType> [0..1]
<pa> fgca:positionAngleType </pa> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="deepSkyGN">
<xsd:complexContent>
<xsd:extension base=" fgca:deepSkyTargetType ">
<xsd:sequence>
<-- indicates emission, reflection or dark nebula -->
<-- not rescricted to an enum to cover exotic objects -->
<xsd:element name="nebulaType" type=" xsd:string " minOccurs="0"/>
<-- position angle of large axis in [deg] -->
<xsd:element name="pa" type=" fgca:positionAngleType " minOccurs="0"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: deepSkyGX

Super-types: observationTargetType < deepSkyTargetType (by extension) < deepSkyGX (by extension)
Sub-types: None
Name deepSkyGX
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
<smallDiameter> fgca:nonNegativeAngleType </smallDiameter> [0..1]
<largeDiameter> fgca:nonNegativeAngleType </largeDiameter> [0..1]
<visMag> xsd:double </visMag> [0..1]
<surfBr> xsd:double </surfBr> [0..1]
<hubbleType> xsd:string </hubbleType> [0..1]
<pa> fgca:positionAngleType </pa> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="deepSkyGX">
<xsd:complexContent>
<xsd:extension base=" fgca:deepSkyTargetType ">
<xsd:sequence>
<xsd:element name="hubbleType" type=" xsd:string " minOccurs="0"/>
<-- position angle of large axis in [deg] -->
<xsd:element name="pa" type=" fgca:positionAngleType " minOccurs="0"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: deepSkyNA

Super-types: observationTargetType < deepSkyTargetType (by extension) < deepSkyNA (by extension)
Sub-types: None
Name deepSkyNA
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
<smallDiameter> fgca:nonNegativeAngleType </smallDiameter> [0..1]
<largeDiameter> fgca:nonNegativeAngleType </largeDiameter> [0..1]
<visMag> xsd:double </visMag> [0..1]
<surfBr> xsd:double </surfBr> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="deepSkyNA">
<xsd:complexContent>
<xsd:extension base=" fgca:deepSkyTargetType "/>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: deepSkyOC

Super-types: observationTargetType < deepSkyTargetType (by extension) < deepSkyOC (by extension)
Sub-types: None
Name deepSkyOC
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
<smallDiameter> fgca:nonNegativeAngleType </smallDiameter> [0..1]
<largeDiameter> fgca:nonNegativeAngleType </largeDiameter> [0..1]
<visMag> xsd:double </visMag> [0..1]
<surfBr> xsd:double </surfBr> [0..1]
<stars> xsd:positiveInteger </stars> [0..1]
<brightestStar> xsd:double </brightestStar> [0..1]
<class> xsd:string </class> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="deepSkyOC">
<xsd:complexContent>
<xsd:extension base=" fgca:deepSkyTargetType ">
<xsd:sequence>
<-- number of stars -->
<xsd:element name="stars" type=" xsd:positiveInteger " minOccurs="0"/>
<-- magnitude of brightest star in [mag] -->
<xsd:element name="brightestStar" type=" xsd:double " minOccurs="0"/>
<-- classification according to Trumpler -->
<xsd:element name="class" type=" xsd:string " minOccurs="0"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: deepSkyPN

Super-types: observationTargetType < deepSkyTargetType (by extension) < deepSkyPN (by extension)
Sub-types: None
Name deepSkyPN
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
<smallDiameter> fgca:nonNegativeAngleType </smallDiameter> [0..1]
<largeDiameter> fgca:nonNegativeAngleType </largeDiameter> [0..1]
<visMag> xsd:double </visMag> [0..1]
<surfBr> xsd:double </surfBr> [0..1]
<magStar> xsd:double </magStar> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="deepSkyPN">
<xsd:complexContent>
<xsd:extension base=" fgca:deepSkyTargetType ">
<xsd:sequence>
<-- magnitude of central star in [mag] -->
<xsd:element name="magStar" type=" xsd:double " minOccurs="0"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: deepSkyQS

Super-types: observationTargetType < deepSkyTargetType (by extension) < deepSkyQS (by extension)
Sub-types: None
Name deepSkyQS
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
<smallDiameter> fgca:nonNegativeAngleType </smallDiameter> [0..1]
<largeDiameter> fgca:nonNegativeAngleType </largeDiameter> [0..1]
<visMag> xsd:double </visMag> [0..1]
<surfBr> xsd:double </surfBr> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="deepSkyQS">
<xsd:complexContent>
<xsd:extension base=" fgca:deepSkyTargetType "/>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: deepSkyTargetType

Super-types: observationTargetType < deepSkyTargetType (by extension)
Sub-types:
Name deepSkyTargetType
Abstract yes
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
<smallDiameter> fgca:nonNegativeAngleType </smallDiameter> [0..1]
<largeDiameter> fgca:nonNegativeAngleType </largeDiameter> [0..1]
<visMag> xsd:double </visMag> [0..1]
<surfBr> xsd:double </surfBr> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="deepSkyTargetType" abstract="true">
<xsd:complexContent>
<xsd:extension base=" fgca:observationTargetType ">
<xsd:sequence>
<-- apparent angular dimensions -->
<xsd:element name="smallDiameter" type=" fgca:nonNegativeAngleType " minOccurs="0"/>
<xsd:element name="largeDiameter" type=" fgca:nonNegativeAngleType " minOccurs="0"/>
<-- visual magnitude in [mag] -->
<xsd:element name="visMag" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base=" xsd:double "/>
</xsd:simpleType>
</xsd:element>
<-- surface brightness in [mags/sq.arcmin] -->
<xsd:element name="surfBr" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base=" xsd:double "/>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: equPosType

Super-types: None
Sub-types: None
Name equPosType
Abstract no
XML Instance Representation
<...>
<ra> fgca:nonNegativeAngleType </ra> [1]
<dec> fgca:angleType </dec> [1]
<frame> fgca:referenceFrameType </frame> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="equPosType">
<xsd:sequence>
<-- right ascension -->
<xsd:element name="ra" type=" fgca:nonNegativeAngleType "/>
<-- declination -->
<xsd:element name="dec" type=" fgca:angleType "/>
<-- optional: reference frame (not necessary for deep sky objects) -->
<xsd:element name="frame" type=" fgca:referenceFrameType " minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
top

Complex Type: eyepieceType

Super-types: None
Sub-types: None
Name eyepieceType
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
<model> xsd:string </model> [1]
<vendor> xsd:string </vendor> [0..1]
<focalLength> xsd:double (value > 0) </focalLength> [1]
<apparentFOV> fgca:nonNegativeAngleType </apparentFOV> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="eyepieceType">
<xsd:sequence>
<xsd:element name="model" type=" xsd:string "/>
<xsd:element name="vendor" type=" xsd:string " minOccurs="0"/>
<-- focal length in [mm] -->
<xsd:element name="focalLength">
<xsd:simpleType>
<xsd:restriction base=" xsd:double ">
<xsd:minExclusive value="0"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<-- apparent field of view -->
<xsd:element name="apparentFOV" type=" fgca:nonNegativeAngleType " minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="id" type=" xsd:ID " use="required"/>
</xsd:complexType>
top

Complex Type: filterType

Super-types: None
Sub-types: None
Name filterType
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
<model> xsd:string </model> [1]
<type> fgca:filterKind </type> [1]
<color> fgca:filterColorType </color> [0..1]
<wratten> xsd:string </wratten> [0..1]
<schott> xsd:string </schott> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="filterType">
<xsd:sequence>
<xsd:element name="model" type=" xsd:string "/>
<xsd:element name="type" type=" fgca:filterKind "/>
<-- the following elements are relevant for color filters only -->
<xsd:element name="color" type=" fgca:filterColorType " minOccurs="0"/>
<xsd:element name="wratten" type=" xsd:string " minOccurs="0"/>
<xsd:element name="schott" type=" xsd:string " minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="id" type=" xsd:ID " use="required"/>
</xsd:complexType>
top

Complex Type: findingsDeepSkyDSType

Super-types: findingsType < findingsDeepSkyType (by extension) < findingsDeepSkyDSType (by extension)
Sub-types: None
Name findingsDeepSkyDSType
Abstract no
XML Instance Representation
<...
lang=" xsd:string [0..1]"
stellar=" xsd:boolean [0..1]"
extended=" xsd:boolean [0..1]"
resolved=" xsd:boolean [0..1]"
mottled=" xsd:boolean [0..1]"
equalBrightness=" xsd:boolean [0..1]"
niceSurrounding=" xsd:boolean [0..1]">
<description> xsd:string </description> [1]
<smallDiameter> fgca:nonNegativeAngleType </smallDiameter> [0..1]
<largeDiameter> fgca:nonNegativeAngleType </largeDiameter> [0..1]
<rating> xsd:integer (1 <= value <= 7) </rating> [1]
<colorMain> fgca:starColorType </colorMain> [0..1]
<colorCompanion> fgca:starColorType </colorCompanion> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="findingsDeepSkyDSType">
<xsd:complexContent>
<xsd:extension base=" fgca:findingsDeepSkyType ">
<xsd:sequence>
<-- colors of main star and companion (if percepted) -->
<xsd:element name="colorMain" type=" fgca:starColorType " minOccurs="0"/>
<xsd:element name="colorCompanion" type=" fgca:starColorType " minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="equalBrightness" type=" xsd:boolean " use="optional"/>
<xsd:attribute name="niceSurrounding" type=" xsd:boolean " use="optional"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: findingsDeepSkyOCType

Super-types: findingsType < findingsDeepSkyType (by extension) < findingsDeepSkyOCType (by extension)
Sub-types: None
Name findingsDeepSkyOCType
Abstract no
XML Instance Representation
<...
lang=" xsd:string [0..1]"
stellar=" xsd:boolean [0..1]"
extended=" xsd:boolean [0..1]"
resolved=" xsd:boolean [0..1]"
mottled=" xsd:boolean [0..1]"
unusualShape=" xsd:boolean [0..1]"
partlyUnresolved=" xsd:boolean [0..1]"
colorContrasts=" xsd:boolean [0..1]">
<description> xsd:string </description> [1]
<smallDiameter> fgca:nonNegativeAngleType </smallDiameter> [0..1]
<largeDiameter> fgca:nonNegativeAngleType </largeDiameter> [0..1]
<rating> xsd:integer (1 <= value <= 7) </rating> [1]
<character> fgca:clusterCharacterType </character> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="findingsDeepSkyOCType">
<xsd:complexContent>
<xsd:extension base=" fgca:findingsDeepSkyType ">
<xsd:sequence>
<-- character of the cluster according to "Deep Sky Liste" definition -->
<xsd:element name="character" type=" fgca:clusterCharacterType " minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="unusualShape" type=" xsd:boolean " use="optional"/>
<xsd:attribute name="partlyUnresolved" type=" xsd:boolean " use="optional"/>
<xsd:attribute name="colorContrasts" type=" xsd:boolean " use="optional"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: findingsDeepSkyType

Super-types: findingsType < findingsDeepSkyType (by extension)
Sub-types:
Name findingsDeepSkyType
Abstract no
XML Instance Representation
<...
lang=" xsd:string [0..1]"
stellar=" xsd:boolean [0..1]"
extended=" xsd:boolean [0..1]"
resolved=" xsd:boolean [0..1]"
mottled=" xsd:boolean [0..1]">
<description> xsd:string </description> [1]
<smallDiameter> fgca:nonNegativeAngleType </smallDiameter> [0..1]
<largeDiameter> fgca:nonNegativeAngleType </largeDiameter> [0..1]
<rating> xsd:integer (1 <= value <= 7) </rating> [1]
</...>
Schema Component Representation
<xsd:complexType name="findingsDeepSkyType">
<xsd:complexContent>
<xsd:extension base=" fgca:findingsType ">
<xsd:sequence>
<-- estimated small diameter -->
<xsd:element name="smallDiameter" type=" fgca:nonNegativeAngleType " minOccurs="0"/>
<-- estimated large diameter -->
<xsd:element name="largeDiameter" type=" fgca:nonNegativeAngleType " minOccurs="0"/>
<-- rating according to the scale of the "Deep Sky Liste" -->
<xsd:element name="rating">
<xsd:simpleType>
<xsd:restriction base=" xsd:integer ">
<xsd:minInclusive value="1"/>
<xsd:maxInclusive value="7"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="stellar" type=" xsd:boolean " use="optional"/>
<xsd:attribute name="extended" type=" xsd:boolean " use="optional"/>
<xsd:attribute name="resolved" type=" xsd:boolean " use="optional"/>
<xsd:attribute name="mottled" type=" xsd:boolean " use="optional"/>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: findingsType

Super-types: None
Sub-types:
Name findingsType
Abstract no
XML Instance Representation
<...
lang=" xsd:string [0..1]">
<description> xsd:string </description> [1]
</...>
Schema Component Representation
<xsd:complexType name="findingsType">
<xsd:sequence>
<-- descriptive text about visual impact or perception -->
<xsd:element name="description" type=" xsd:string "/>
</xsd:sequence>
<-- New in V1.5 -->
<xsd:attribute name="lang" type=" xsd:string " use="optional"/>
</xsd:complexType>
top

Complex Type: fixedMagnificationOpticsType

Super-types: opticsType < fixedMagnificationOpticsType (by extension)
Sub-types: None
Name fixedMagnificationOpticsType
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
<model> xsd:string </model> [1]
<type> xsd:string </type> [0..1]
<vendor> xsd:string </vendor> [0..1]
<aperture> xsd:double (value > 0) </aperture> [1]
<lightGrasp> xsd:double (0 < value <= 1) </lightGrasp> [0..1]
<orientation
erect=" xsd:boolean [1]"
truesided=" xsd:boolean [1]"/> [0..1]
<magnification> xsd:double (value > 1) </magnification> [1]
<trueField> fgca:nonNegativeAngleType </trueField> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="fixedMagnificationOpticsType">
<xsd:complexContent>
<xsd:extension base=" fgca:opticsType ">
<xsd:sequence>
<xsd:element name="magnification">
<xsd:simpleType>
<xsd:restriction base=" xsd:double ">
<xsd:minExclusive value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="trueField" type=" fgca:nonNegativeAngleType " minOccurs="0"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: imagerType

Super-types: None
Sub-types:
Name imagerType
Abstract no
XML Instance Representation
<...>
<model> xsd:string </model> [1]
<type> xsd:string (value comes from list: {'ccd'|'film'}) </type> [0..1]
<vendor> xsd:string </vendor> [0..1]
<remarks> xsd:string </remarks> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="imagerType">
<xsd:sequence>
<-- model or designation -->
<xsd:element name="model" type=" xsd:string "/>
<xsd:element name="type" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base=" xsd:string ">
<xsd:enumeration value="ccd"/>
<xsd:enumeration value="film"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="vendor" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base=" xsd:string "/>
</xsd:simpleType>
</xsd:element>
<xsd:element name="remarks" type=" xsd:string " minOccurs="0"/>
</xsd:sequence>
</xsd:complexType>
top

Complex Type: nonNegativeAngleType

Super-types: xsd:double < angleType (by extension) < nonNegativeAngleType (by restriction)
Sub-types: None
Name nonNegativeAngleType
Abstract no
XML Instance Representation
<...
unit=" fgca:angleUnit [1]">
fgca:angleType (value >= 0)
</...>
Schema Component Representation
<xsd:complexType name="nonNegativeAngleType">
<xsd:simpleContent>
<xsd:restriction base=" fgca:angleType ">
<xsd:minInclusive value="0"/>
</xsd:restriction>
</xsd:simpleContent>
</xsd:complexType>
top

Complex Type: observationTargetType

Super-types: None
Sub-types:
Name observationTargetType
Abstract yes
XML Instance Representation
<...
id=" xsd:ID [1]">
Start Choice [1]
<datasource> xsd:string </datasource> [1]
<observer> xsd:IDREF </observer> [1]
End Choice
<name> xsd:string </name> [1]
<alias> xsd:string </alias> [0..*]
<position> fgca:equPosType </position> [0..1]
<constellation> xsd:string </constellation> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="observationTargetType" abstract="true">
<xsd:sequence>
<xsd:choice>
<-- identification of data source -->
<xsd:element name="datasource" type=" xsd:string "/>
<-- used for targets not listed in standard catalogs; f.e. newly discovered objects -->
<xsd:element name="observer" type=" xsd:IDREF "/>
</xsd:choice>
<-- most common name -->
<xsd:element name="name" type=" xsd:string "/>
<-- alternative names -->
<xsd:element name="alias" type=" xsd:string " minOccurs="0" maxOccurs="unbounded"/>
<xsd:element name="position" type=" fgca:equPosType " minOccurs="0"/>
<-- constellation is optional because it can be derived from position -->
<xsd:element name="constellation" type=" xsd:string " minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="id" type=" xsd:ID " use="required"/>
</xsd:complexType>
top

Complex Type: observationType

Super-types: None
Sub-types: None
Name observationType
Abstract no
XML Instance Representation
<...
id=" xsd:ID [0..1]">
<observer> xsd:IDREF </observer> [1]
<site> xsd:IDREF </site> [0..1]
<session> xsd:IDREF </session> [0..1]
<target> xsd:IDREF </target> [1]
<begin> xsd:dateTime </begin> [1]
<end> xsd:dateTime </end> [0..1]
<faintestStar> xsd:double </faintestStar> [0..1]
<seeing> fgca:seeingType </seeing> [0..1]
<scope> xsd:IDREF </scope> [0..1]
<accessories> xsd:string </accessories> [0..1]
<eyepiece> xsd:IDREF </eyepiece> [0..1]
<filter> xsd:IDREF </filter> [0..1]
<magnification> xsd:double (value > 1) </magnification> [0..1]
<imager> fgca:imagerType </imager> [0..1]
<result> fgca:findingsType </result> [1..*]
<image> xsd:string </image> [0..*]
</...>
Schema Component Representation
<xsd:complexType name="observationType">
<xsd:sequence>
<-- WHO observed it ? -->
<xsd:element name="observer" type=" xsd:IDREF "/>
<-- WHERE was observed ? Optional, because unknown in many existing observation records -->
<xsd:element name="site" type=" xsd:IDREF " minOccurs="0"/>
<-- optional session information -->
<xsd:element name="session" type=" xsd:IDREF " minOccurs="0"/>
<-- WHAT was observed ? -->
<xsd:element name="target" type=" xsd:IDREF "/>
<-- WHEN was observed ? This may be an instant or an interval of time -->
<-- Start or instant of observation -->
<xsd:element name="begin" type=" xsd:dateTime "/>
<-- End in case of (exposure) interval -->
<xsd:element name="end" type=" xsd:dateTime " minOccurs="0"/>
<-- Estimated limiting magnitude for naked eye. It's optional but should occur always! -->
<xsd:element name="faintestStar" type=" xsd:double " minOccurs="0"/>
<-- Seeing rated according to the Antoniadi scale (1=excellent, 5=very poor). -->
<xsd:element name="seeing" type=" fgca:seeingType " minOccurs="0"/>
<-- scope used for the observation -->
<xsd:element name="scope" type=" xsd:IDREF " minOccurs="0"/>
<-- accessories used -->
<xsd:element name="accessories" type=" xsd:string " minOccurs="0"/>
<-- eyepiece used -->
<xsd:element name="eyepiece" type=" xsd:IDREF " minOccurs="0"/>
<-- New in V1.5: filter used -->
<xsd:element name="filter" type=" xsd:IDREF " minOccurs="0"/>
<-- magnification used (redundant in case of existing eyepiece reference) -->
<xsd:element name="magnification" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base=" xsd:double ">
<xsd:minExclusive value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<-- imaging device used -->
<xsd:element name="imager" type=" fgca:imagerType " minOccurs="0"/>
<-- Descripting of the results of the observations. Future extensions are likely! -->
<xsd:element name="result" type=" fgca:findingsType " maxOccurs="unbounded"/>
<-- refereneces image files obtained in the observation -->
<xsd:element name="image" type=" xsd:string " minOccurs="0" maxOccurs="unbounded"/>
</xsd:sequence>
<xsd:attribute name="id" type=" xsd:ID " use="optional"/>
</xsd:complexType>
top

Complex Type: observerType

Super-types: None
Sub-types: None
Name observerType
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
<name> xsd:string (Whitespace policy: preserve) </name> [1]
<surname> xsd:string (Whitespace policy: preserve) </surname> [1]
<contact> xsd:string (Whitespace policy: preserve) </contact> [0..*]
<DSL> xsd:string (Whitespace policy: preserve) </DSL> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="observerType">
<xsd:sequence>
<xsd:element name="name">
<xsd:simpleType>
<xsd:restriction base=" xsd:string ">
<xsd:whiteSpace value="preserve"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element name="surname">
<xsd:simpleType>
<xsd:restriction base=" xsd:string ">
<xsd:whiteSpace value="preserve"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<-- info for contacting the observer (f.e. phone, mail, postal address) -->
<xsd:element name="contact" minOccurs="0" maxOccurs="unbounded">
<xsd:simpleType>
<xsd:restriction base=" xsd:string ">
<xsd:whiteSpace value="preserve"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<-- abbreviation/code of the observer for the Deep Sky Liste (DSL) of the Fachgruppe -->
<xsd:element name="DSL" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base=" xsd:string ">
<xsd:whiteSpace value="preserve"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="id" type=" xsd:ID " use="required"/>
</xsd:complexType>
top

Complex Type: opticsType

Super-types: None
Sub-types:
Name opticsType
Abstract yes
XML Instance Representation
<...
id=" xsd:ID [1]">
<model> xsd:string </model> [1]
<type> xsd:string </type> [0..1]
<vendor> xsd:string </vendor> [0..1]
<aperture> xsd:double (value > 0) </aperture> [1]
<lightGrasp> xsd:double (0 < value <= 1) </lightGrasp> [0..1]
<orientation
erect=" xsd:boolean [1]"
truesided=" xsd:boolean [1]"/> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="opticsType" abstract="true">
<xsd:sequence>
<-- model or designation -->
<xsd:element name="model" type=" xsd:string "/>
<-- type of optics. Not restricted to an enumeration to cover exotic constructions ;-) The type is optional but should be given if known! When applicable, the following coding (according to the DSL) should be used: A: Naked eye C: Cassegrain B: Binoculars S: Schmidt-Cassegrain N: Newton K: Kutter (Schiefspiegler) R: Refractor M: Maksutov -->
<xsd:element name="type" type=" xsd:string " minOccurs="0"/>
<xsd:element name="vendor" type=" xsd:string " minOccurs="0"/>
<-- aperture in [mm] -->
<xsd:element name="aperture">
<xsd:simpleType>
<xsd:restriction base=" xsd:double ">
<xsd:minExclusive value="0"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<-- transmission factor -->
<xsd:element name="lightGrasp" minOccurs="0">
<xsd:simpleType>
<xsd:restriction base=" xsd:double ">
<xsd:minExclusive value="0"/>
<xsd:maxInclusive value="1"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<-- orientation of image -->
<xsd:element name="orientation" minOccurs="0">
<xsd:complexType>
<xsd:attribute name="erect" type=" xsd:boolean " use="required"/>
<xsd:attribute name="truesided" type=" xsd:boolean " use="required"/>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
<xsd:attribute name="id" type=" xsd:ID " use="required"/>
</xsd:complexType>
top

Complex Type: referenceFrameType

Super-types: None
Sub-types: None
Name referenceFrameType
Abstract no
XML Instance Representation
<...>
<origin> xsd:string (value comes from list: {'geo'|'topo'}) </origin> [1]
<equinox> xsd:string (value comes from list: {'J2000'|'B1950'|'EqOfDate'}) </equinox> [1]
</...>
Schema Component Representation
<xsd:complexType name="referenceFrameType">
<xsd:sequence>
<-- origin of coordinate system (geocentric or topocentric) -->
<xsd:element name="origin">
<xsd:simpleType>
<xsd:restriction base=" xsd:string ">
<xsd:enumeration value="geo"/>
<xsd:enumeration value="topo"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<-- equinox used to specifiy coordinates -->
<xsd:element name="equinox" default="J2000">
<xsd:simpleType>
<xsd:restriction base=" xsd:string ">
<xsd:enumeration value="J2000"/>
<xsd:enumeration value="B1950"/>
<xsd:enumeration value="EqOfDate"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
top

Complex Type: scopeType

Super-types: opticsType < scopeType (by extension)
Sub-types: None
Name scopeType
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
<model> xsd:string </model> [1]
<type> xsd:string </type> [0..1]
<vendor> xsd:string </vendor> [0..1]
<aperture> xsd:double (value > 0) </aperture> [1]
<lightGrasp> xsd:double (0 < value <= 1) </lightGrasp> [0..1]
<orientation
erect=" xsd:boolean [1]"
truesided=" xsd:boolean [1]"/> [0..1]
<focalLength> xsd:double (value > 0) </focalLength> [1]
</...>
Schema Component Representation
<xsd:complexType name="scopeType">
<xsd:complexContent>
<xsd:extension base=" fgca:opticsType ">
<xsd:sequence>
<-- focal length in [mm] -->
<xsd:element name="focalLength">
<xsd:simpleType>
<xsd:restriction base=" xsd:double ">
<xsd:minExclusive value="0"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
top

Complex Type: sessionType

Super-types: None
Sub-types: None
Name sessionType
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]"
lang=" xsd:string [0..1]">
<begin> xsd:dateTime </begin> [1]
<end> xsd:dateTime </end> [1]
<site> xsd:IDREF </site> [1]
<coObserver> xsd:IDREF </coObserver> [0..*]
<weather> xsd:string </weather> [0..1]
<equipment> xsd:string </equipment> [0..1]
<comments> xsd:string </comments> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="sessionType">
<xsd:sequence>
<-- Start of observation session -->
<xsd:element name="begin" type=" xsd:dateTime "/>
<-- End of observation session -->
<xsd:element name="end" type=" xsd:dateTime "/>
<-- site where session took place -->
<xsd:element name="site" type=" xsd:IDREF "/>
<-- WHO participated in the observation session? -->
<xsd:element name="coObserver" type=" xsd:IDREF " minOccurs="0" maxOccurs="unbounded"/>
<-- Comments about the weather situation -->
<xsd:element name="weather" type=" xsd:string " minOccurs="0"/>
<-- Comments on the (optical or electronical) equipment used -->
<xsd:element name="equipment" type=" xsd:string " minOccurs="0"/>
<-- Any other comments -->
<xsd:element name="comments" type=" xsd:string " minOccurs="0"/>
</xsd:sequence>
<xsd:attribute name="id" type=" xsd:ID " use="required"/>
<-- New in V1.5 -->
<xsd:attribute name="lang" type=" xsd:string " use="optional"/>
</xsd:complexType>
top

Complex Type: siteType

Super-types: None
Sub-types: None
Name siteType
Abstract no
XML Instance Representation
<...
id=" xsd:ID [1]">
<name> xsd:string </name> [1]
<longitude> fgca:angleType </longitude> [1]
<latitude> fgca:angleType </latitude> [1]
<elevation> xsd:double </elevation> [0..1]
<timezone> xsd:integer </timezone> [1]
<code> xsd:integer </code> [0..1]
</...>
Schema Component Representation
<xsd:complexType name="siteType">
<xsd:sequence>
<xsd:element name="name" type=" xsd:string "/>
<-- geographical longitude; eastwards positive -->
<xsd:element name="longitude" type=" fgca:angleType "/>
<-- geographical latitude -->
<xsd:element name="latitude" type=" fgca:angleType "/>
<-- elevation -->
<xsd:element name="elevation" type=" xsd:double " minOccurs="0"/>
<-- offset from UT in [min] not including daylight savings time -->
<xsd:element name="timezone" type=" xsd:integer " default="0"/>
<-- IAU Code for site -->
<xsd:element name="code" type=" xsd:integer " minOccurs="0"/>
<-- IAU Code for site -->
</xsd:sequence>
<xsd:attribute name="id" type=" xsd:ID " use="required"/>
</xsd:complexType>
top

Simple Type: angleUnit

Super-types: xsd:string < angleUnit (by restriction)
Sub-types: None
Name angleUnit
Content
  • Base XSD Type: string
  • value comes from list: {'arcsec'|'arcmin'|'deg'|'rad'}
Schema Component Representation
<xsd:simpleType name="angleUnit">
<xsd:restriction base=" xsd:string ">
<xsd:enumeration value="arcsec"/>
<xsd:enumeration value="arcmin"/>
<xsd:enumeration value="deg"/>
<xsd:enumeration value="rad"/>
</xsd:restriction>
</xsd:simpleType>
top

Simple Type: clusterCharacterType

Super-types: xsd:string < clusterCharacterType (by restriction)
Sub-types: None
Name clusterCharacterType
Content
  • Base XSD Type: string
  • value comes from list: {'A'|'B'|'C'|'D'|'E'|'F'|'G'|'H'|'I'|'X'}
Schema Component Representation
<xsd:simpleType name="clusterCharacterType">
<xsd:restriction base=" xsd:string ">
<xsd:enumeration value="A"/>
<xsd:enumeration value="B"/>
<xsd:enumeration value="C"/>
<xsd:enumeration value="D"/>
<xsd:enumeration value="E"/>
<xsd:enumeration value="F"/>
<xsd:enumeration value="G"/>
<xsd:enumeration value="H"/>
<xsd:enumeration value="I"/>
<xsd:enumeration value="X"/>
</xsd:restriction>
</xsd:simpleType>
top

Simple Type: filterColorType

Super-types: xsd:string < filterColorType (by restriction)
Sub-types: None
Name filterColorType
Content
  • Base XSD Type: string
  • value comes from list: {'red'|'orange'|'yellow'|'green'|'blue'}
Schema Component Representation
<xsd:simpleType name="filterColorType">
<xsd:restriction base=" xsd:string ">
<xsd:enumeration value="red"/>
<xsd:enumeration value="orange"/>
<xsd:enumeration value="yellow"/>
<xsd:enumeration value="green"/>
<xsd:enumeration value="blue"/>
</xsd:restriction>
</xsd:simpleType>
top

Simple Type: filterKind

Super-types: xsd:string < filterKind (by restriction)
Sub-types: None
Name filterKind
Content
  • Base XSD Type: string
  • value comes from list: {'other'|'broad band'|'narrow band'|'O-III'|'H-beta'|'H-alpha'|'color'|'neutral'|'corrective'}
Schema Component Representation
<xsd:simpleType name="filterKind">
<xsd:restriction base=" xsd:string ">
<xsd:enumeration value="other"/>
<xsd:enumeration value="broad band"/>
<xsd:enumeration value="narrow band"/>
<xsd:enumeration value="O-III"/>
<xsd:enumeration value="H-beta"/>
<xsd:enumeration value="H-alpha"/>
<xsd:enumeration value="color"/>
<xsd:enumeration value="neutral"/>
<xsd:enumeration value="corrective"/>
</xsd:restriction>
</xsd:simpleType>
top

Simple Type: positionAngleType

Super-types: xsd:integer < positionAngleType (by restriction)
Sub-types: None
Name positionAngleType
Content
  • Base XSD Type: integer
  • 0 <= value < 360
Schema Component Representation
<xsd:simpleType name="positionAngleType">
<xsd:restriction base=" xsd:integer ">
<xsd:minInclusive value="0"/>
<xsd:maxExclusive value="360"/>
</xsd:restriction>
</xsd:simpleType>
top

Simple Type: seeingType

Super-types: xsd:nonNegativeInteger < seeingType (by restriction)
Sub-types: None
Name seeingType
Content
  • Base XSD Type: nonNegativeInteger
  • 1 <= value <= 5
Schema Component Representation
<xsd:simpleType name="seeingType">
<xsd:restriction base=" xsd:nonNegativeInteger ">
<xsd:minInclusive value="1"/>
<xsd:maxInclusive value="5"/>
</xsd:restriction>
</xsd:simpleType>
top

Simple Type: starColorType

Super-types: xsd:string < starColorType (by restriction)
Sub-types: None
Name starColorType
Content
  • Base XSD Type: string
  • value comes from list: {'white'|'red'|'orange'|'yellow'|'green'|'blue'}
Schema Component Representation
<xsd:simpleType name="starColorType">
<xsd:restriction base=" xsd:string ">
<xsd:enumeration value="white"/>
<xsd:enumeration value="red"/>
<xsd:enumeration value="orange"/>
<xsd:enumeration value="yellow"/>
<xsd:enumeration value="green"/>
<xsd:enumeration value="blue"/>
</xsd:restriction>
</xsd:simpleType>
top

Legend

Complex Type:

Schema Component Type

AusAddress

Schema Component Name
Super-types: Address < AusAddress (by extension)
Sub-types:
  • QLDAddress (by restriction)
If this schema component is a type definition, its type hierarchy is shown in a gray-bordered box.
Name AusAddress
Abstract no
The table above displays the properties of this schema component.
XML Instance Representation
<... country="Australia" >
<unitNo> string </unitNo> [0..1]
<houseNo> string </houseNo> [1]
<street> string </street> [1]
Start Choice [1]
<city> string </city> [1]
<town> string </town> [1]
End Choice
<state> AusStates </state> [1]
<postcode> string <<pattern = [1-9][0-9]{3}>> </postcode> [1] ?
</...>

The XML Instance Representation table above shows the schema component's content as an XML instance.

Schema Component Representation
<complexType name="AusAddress">
<complexContent>
<extension base=" Address ">
<sequence>
<element name="state" type=" AusStates "/>
<element name="postcode">
<simpleType>
<restriction base=" string ">
<pattern value="[1-9][0-9]{3}"/>
</restriction>
</simpleType>
</element>
</sequence>
<attribute name="country" type=" string " fixed="Australia"/>
</extension>
</complexContent>
</complexType>
The Schema Component Representation table above displays the underlying XML representation of the schema component. (Annotations are not shown.)
top

Glossary

Abstract (Applies to complex type definitions and element declarations). An abstract element or complex type cannot used to validate an element instance. If there is a reference to an abstract element, only element declarations that can substitute the abstract element can be used to validate the instance. For references to abstract type definitions, only derived types can be used.

All Model Group Child elements can be provided in any order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-all.

Choice Model Group Only one from the list of child elements and model groups can be provided in instances. See: http://www.w3.org/TR/xmlschema-1/#element-choice.

Collapse Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32). Then, collapse contiguous sequences of space characters into single space character, and remove leading and trailing space characters.

Disallowed Substitutions (Applies to element declarations). If substitution is specified, then substitution group members cannot be used in place of the given element declaration to validate element instances. If derivation methods, e.g. extension, restriction, are specified, then the given element declaration will not validate element instances that have types derived from the element declaration's type using the specified derivation methods. Normally, element instances can override their declaration's type by specifying an xsi:type attribute.

Key Constraint Like Uniqueness Constraint, but additionally requires that the specified value(s) must be provided. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

Key Reference Constraint Ensures that the specified value(s) must match value(s) from a Key Constraint or Uniqueness Constraint. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

Model Group Groups together element content, specifying the order in which the element content can occur and the number of times the group of element content may be repeated. See: http://www.w3.org/TR/xmlschema-1/#Model_Groups.

Nillable (Applies to element declarations). If an element declaration is nillable, instances can use the xsi:nil attribute. The xsi:nil attribute is the boolean attribute, nil, from the http://www.w3.org/2001/XMLSchema-instance namespace. If an element instance has an xsi:nil attribute set to true, it can be left empty, even though its element declaration may have required content.

Notation A notation is used to identify the format of a piece of data. Values of elements and attributes that are of type, NOTATION, must come from the names of declared notations. See: http://www.w3.org/TR/xmlschema-1/#cNotation_Declarations.

Preserve Whitespace Policy Preserve whitespaces exactly as they appear in instances.

Prohibited Derivations (Applies to type definitions). Derivation methods that cannot be used to create sub-types from a given type definition.

Prohibited Substitutions (Applies to complex type definitions). Prevents sub-types that have been derived using the specified derivation methods from validating element instances in place of the given type definition.

Replace Whitespace Policy Replace tab, line feed, and carriage return characters with space character (Unicode character 32).

Sequence Model Group Child elements and model groups must be provided in the specified order in instances. See: http://www.w3.org/TR/xmlschema-1/#element-sequence.

Substitution Group Elements that are members of a substitution group can be used wherever the head element of the substitution group is referenced.

Substitution Group Exclusions (Applies to element declarations). Prohibits element declarations from nominating themselves as being able to substitute a given element declaration, if they have types that are derived from the original element's type using the specified derivation methods.

Target Namespace The target namespace identifies the namespace that components in this schema belongs to. If no target namespace is provided, then the schema components do not belong to any namespace.

Uniqueness Constraint Ensures uniqueness of an element/attribute value, or a combination of values, within a specified scope. See: http://www.w3.org/TR/xmlschema-1/#cIdentity-constraint_Definitions.

top