<?xml version="1.0" encoding="UTF-8"?> <!--$Id: stc.xsd,v 2.21 2007/11/23 16:02:58 arots Exp arots $--> <!-- Schema definition for the SpaceTimeCoords --> <!--Change Log: $Log: stc.xsd,v $ Revision 2.21 2007/11/23 16:02:58 arots Extensive corrections of nillable and abstract attributes of global elements. All nillable elements are now not abstract and have the STCReference attribute group. Where referencing of whole substitution groups (through their head elements) makes sense, this has been extended to those head elements. This means that those head elements are not abstract anymore and some types had to have their abstract attribute revoled as well. That is regrettable, but I think we ended up with a more consistent system where the referencing is more functional, too. Revision 2.20 2007/11/13 20:52:59 arots Made position angle elements in size2Type and size3Type nillable. Revision 2.19 2007/10/11 18:29:41 arots Added Handedness attribute to a Frame's Flavor. Added support for identifying ID and IDREF attributes through ID_type and IDREF_type attributes; this helps applications like registry to identify those kinds of attributes without having to refer to the schema. Added GPS time scale. Revision 2.18 2007/06/15 14:03:43 arots Added Resolution, etc. substitution groups to support Characterisation. Completed orbital elements specification. Revision 2.17 2006/11/16 22:12:43 arots Added some missing frame_ids, e.g., in the Areas. Revision 2.16 2006/08/01 21:20:59 arots Made coordFrameType derive from stcBaseType. Revision 2.15 2006/07/28 14:02:27 arots Reworked the inheritance schemes for CoordSys, Coords, and CoordArea: mainly though extension. In general there is a generic type (for non-STC coordinates), a Pixel type that adds pisel coordinates to generic, and an Astro type that adds time, space, spectral, and redshift to generic. In addition, coordinate transformation specification is now fully integrated in the schema. Revision 2.14 2006/05/09 20:50:50 arots Added support for generic frames (frame_id, etc.) Added ucd attribute to the baseSTC attribute group. Revision 2.13 2006/04/28 20:57:30 arots Made elements nillable where necessary. Revision 2.11 2006/03/30 23:33:14 arots Fixed reference to Region in region operation types. Revision 2.10 2006/03/23 21:59:15 arots Removed STCCoordinate[List] and STCRegion[List] elements. Renamed the stc[Coordinate|Region][List]Type to STC[Coordinate|Region][List]. Modeled STCCoordinate[List] type after STCRegion[List]. All of this should make life easier for Tamas. Revision 2.8 2006/03/03 14:44:09 arots Repaired dropped parts of stcRegionType and stcRegionListType. Revision 2.7 2006/03/01 20:58:22 arots STC Version 1.30: Removed anonymous types, added application public types for regions, introduced universal referencing model using Xlink. Revision 2.6 2005/02/25 19:30:24 arots IVOA version 1.20: Distinguished LSRK and LSRD, LOCAL_GROUP_CENTER replaces SUPER_GALACTIC_CENTER Subtle changes to force validation by Xerces-J2: slight obfuscation Added TEB time scale, warning on use of ISOTime (> 0001-01-01 !) Added reference spheroid to GEO_D, changed GEO to GEO_C Added discussion of planetographic vs planetocentric systems, right- and left-handed systems Removed GEOGRAPHIC CoordFlavor (is really 3-D spherical); added POLAR Revision 2.5 2005/01/05 14:22:11 arots Release Version 1.10 Added Pixel Space; overhaul of inheritance and polymorphism Revision 2.4 2004/07/23 21:17:50 arots Modified ivoa schema locations; changed URN from nvo- to vo- Revision 2.3 2004/07/16 22:37:53 arots Release version v1.0. Revision 2.2 2004/07/07 16:16:22 arots Completed conversion to substitution groups. This version is ready for review. revision 2.1 date: 2004/05/23 03:32:59; author: arots; state: Exp; lines: +798 -1 Fixed line breaks revision 2.0 date: 2004/05/21 21:09:17; author: arots; state: Exp; lines: +1 -679 Reworking with substitution groups and generalized CoordSys & Coords. revision 1.10 date: 2004/03/31 21:20:30; author: arots; state: Exp; lines: +362 -218 Proper units and improvements. Revision 1.9 2003/08/06 19:31:04 arots Added time reference direction to time frame. Revision 1.8 2003/05/15 10:04:23 arots Allow multiple intervals, add fill factor. Revision 1.7 2003/05/08 20:28:19 arots Added spectral coordinate. Fixed intervals. Rationalized coordinate frames. Revision 1.6 2003/05/02 18:46:43 arots Removed coord_sys_id attribute from time interval. Revision 1.5 2003/04/30 16:55:58 arots Added CoordSpec to Resource and Search - was needed. Revision 1.4 2003/04/30 13:27:12 arots Fixed up change log, changed schema locations. Revision 1.3 2003/04/29 21:04:37 arots Trivial. Revision 1.2 2003/04/29 20:56:40 arots Completed new astronTimeType and proper handling of units. Revision 1.1 2003/04/28 16:25:34 arots Initial revision --> <xs:schema elementFormDefault="qualified" targetNamespace="http://www.ivoa.net/xml/STC/stc-v1.30.xsd" xmlns="http://www.ivoa.net/xml/STC/stc-v1.30.xsd" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="http://vo.ari.uni-heidelberg.de/docs/schemata/xlink.xsd"/> <!-- CoordSystem --> <!-- Reference frames --> <xs:annotation> <xs:documentation>A CoordFrame has to have at least an Id</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation> Provides the coordinate definitions: number of axes, SPHERICAL, CARTESIAN, UNITSPHERE, POLAR, or HEALPIX, presence of velocities </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>A generic CoordReferenceFrame</xs:documentation> </xs:annotation> <xs:sequence> </xs:sequence> </xs:complexType> <xs:annotation> <xs:documentation>CoordFrame substitution group head element</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Coordinate equinox: B{year} or J{year} with at least one decimal; do not use in conjunction with ICRS </xs:documentation> </xs:annotation> <xs:pattern value="[BJ]\-?\d?\d?\d?\d\d\d\d\.\d\d?\d?"/> </xs:restriction> </xs:simpleType> <xs:annotation> <xs:documentation>Abstract space reference frame type</xs:documentation> </xs:annotation> <xs:complexContent> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>ICRS type: no equinox</xs:documentation> </xs:annotation> <xs:complexContent> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>FK[45] type: needs an equinox</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> The Geodetic reference frame; semi-major axis and inverse flattening may be provided to define the reference spheroid; the default is the IAU 1976 reference spheroid </xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> A custom space reference frame type defined through pole and X-axis directions </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation> Define coordinate reference frame from scratch; pole and X-axis need to be defined in a known coordinate system </xs:documentation> </xs:annotation> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> The spherical-to-cartesian or cartesian-to-cartesian projection to be used; c-to-c projections are marked as such, all others are to be interpreted as s-to-c </xs:documentation> </xs:annotation> <xs:enumeration value=""> <xs:annotation> <xs:documentation> Planar (i.e., linear cartesian-to-cartesian) projection </xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="LOG"> <xs:annotation> <xs:documentation> Linear-to-logarithmic cartesian-to-cartesian projection </xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="TAN"> <xs:annotation> <xs:documentation>Tangent plane projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="SIN"> <xs:annotation> <xs:documentation>Sine projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="STG"> <xs:annotation> <xs:documentation>Stereographic projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="ARC"> <xs:annotation> <xs:documentation>Zenithal equidistant projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="ZEA"> <xs:annotation> <xs:documentation>Zenithal equal-area projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="AIR"> <xs:annotation> <xs:documentation>Airy projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="CEA"> <xs:annotation> <xs:documentation>Cylindrical equal-area projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="CAR"> <xs:annotation> <xs:documentation>Plate Carree projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="MER"> <xs:annotation> <xs:documentation>Mercator projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="SFL"> <xs:annotation> <xs:documentation>Sanson-Flamsteed projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="PAR"> <xs:annotation> <xs:documentation>Parabolic projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="MOL"> <xs:annotation> <xs:documentation>Mollweide projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="AIT"> <xs:annotation> <xs:documentation>Hammer-Aitoff projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="COE"> <xs:annotation> <xs:documentation>Conic equal-area projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="COD"> <xs:annotation> <xs:documentation>Conic equidistant projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="COO"> <xs:annotation> <xs:documentation>Conic orthomorphic projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="BON"> <xs:annotation> <xs:documentation>Bonne equal-area projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="PCO"> <xs:annotation> <xs:documentation>Polyconic projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="TSC"> <xs:annotation> <xs:documentation>Tangential spherical cube projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="CSC"> <xs:annotation> <xs:documentation>COBE quadrilateralized spherical cube projection</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="QSC"> <xs:annotation> <xs:documentation>Quadrilateralized spherical cube projection</xs:documentation> </xs:annotation> </xs:enumeration> </xs:restriction> </xs:simpleType> <xs:annotation> <xs:documentation>Substitution group for a 2-D mapping</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> size2Type mapping element: 2 doubles with optional position angle </xs:documentation> </xs:annotation> </xs:element> <xs:element name="Transform2Matrix" nillable="true" substitutionGroup="CTransform2" type="double4Type"> <xs:annotation> <xs:documentation>2x2 matrix mapping element</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Substitution group for a 3-D mapping</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> size3Type mapping element: 3 doubles with optional position angle(s) </xs:documentation> </xs:annotation> </xs:element> <xs:element name="Transform3Matrix" nillable="true" substitutionGroup="CTransform3" type="double9Type"> <xs:annotation> <xs:documentation>3x3 matrix mapping element</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> A custom space reference frame type defined through a 2-D Cartesian mapping (rotate and scale) </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation> Define coordinate reference frame from scratch;basically a 1-D scaling </xs:documentation> </xs:annotation> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> A custom space reference frame type defined through a 2-D Cartesian mapping (rotate and scale) </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation> Define coordinate reference frame from scratch;basically a transformation from a known coordinate frame </xs:documentation> </xs:annotation> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> A custom space reference frame type defined through a 3-D Cartesian mapping (rotate and scale) </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation> Define coordinate reference frame from scratch;basically a transformation from a known coordinate frame </xs:documentation> </xs:annotation> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> Head element for the Coordinate reference frame substitution group: optional equinox with either a standard reference system (ICRS, FK5, FK4) and optional standard pole (equatorial, ecliptic, galactic, etc.), or a custom frame with pole (positive Z-axis) and positive X-axis direction </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The ICRS reference frame</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>FK4; needs a Besselian epoch</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>FK5; needs a Julian epoch</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Ecliptic coordinates; needs an epoch</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Galactic coordinates; first system</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Galactic coordinates; second system</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>SuperGalactic coordinates</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Local Azimuth and Elevation coordinates</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Generic Body coordinates</xs:documentation> </xs:annotation> </xs:element> <!--Solar and earth-related coordinate frames; see Fraenz & Harper 2002, Plan & Sp Sci 50, 217 and Bill Thompson's solar FITS paper--> <xs:annotation> <xs:documentation>The Geocentric (co-rotating) reference frame</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The Geodetic reference frame; semi-major axis and inverse flattening may be provided to define the reference spheroid; the default is the IAU 1976 reference spheroid </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The Geomagnetic reference frame</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The Geocentric Solar Ecliptic reference frame</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The Geocentric Solar Magnetic reference frame</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The Solar Magnetic reference frame</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The Heliographic (Carrington) reference frame</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The Heliographic (Stonyhurst) reference frame</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The Helio-projective Cartesian reference frame (2-D or 3-D) </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The Helio-projective Polar reference frame (2-D)</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The Heliocentric Earth Ecliptic reference frame</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The Heliocentric Earth Equatorial reference frame</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The Heliographic Inertial reference frame</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The Heliocentric Radial-Tangential-Normal coordinates </xs:documentation> </xs:annotation> </xs:element> <!--Planetocentric (co-rotating) system coordinate frames; see Explanatory Supplement, Sec 7.4 or Fraenz & Harper 2002, Plan & Sp Sci 50, 217, Table 6--> <xs:annotation> <xs:documentation> The planetocentric reference frame anchored on Mercury </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The planetocentric reference frame anchored on Venus </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The lunacentric reference frame anchored on the moon </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The planetocentric reference frame anchored on Mars </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The planetocentric reference frame anchored on Jupiter </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The planetocentric reference frame anchored on Saturn </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The planetocentric reference frame anchored on Uranus </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The planetocentric reference frame anchored on Neptune </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The planetocentric reference frame anchored on Pluto </xs:documentation> </xs:annotation> </xs:element> <!--Planetographic (co-rotating) system coordinate frames; see Explanatory Supplement, Sec 7.4 or Fraenz & Harper 2002, Plan & Sp Sci 50, 217, Table 6--> <xs:annotation> <xs:documentation> The planetographic reference frame anchored on Mercury </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The planetographic reference frame anchored on Venus </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The lunagraphic reference frame anchored on the moon </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The planetographic reference frame anchored on Mars </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The planetographic reference frame anchored on Jupiter </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The planetographic reference frame anchored on Saturn </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The planetographic reference frame anchored on Uranus </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The planetographic reference frame anchored on Neptune </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The planetographic reference frame anchored on Pluto </xs:documentation> </xs:annotation> </xs:element> <!--Unknown space reference frame; the client is responsible for assigning a default--> <xs:annotation> <xs:documentation> Unknown space reference frame; the client is responsible for assigning a default </xs:documentation> </xs:annotation> </xs:element> <!--The Custom frame--> <xs:annotation> <xs:documentation> Head element for the custom coordinate reference frame substitution group </xs:documentation> </xs:annotation> </xs:element> <xs:element name="SphericalSpaceRefFrame" substitutionGroup="CustomSpaceRefFrame" type="sphericalRefFrameType"> <xs:annotation> <xs:documentation> Coordinate reference frame: a custom pole (positive Z-axis) and positive X-axis direction </xs:documentation> </xs:annotation> </xs:element> <xs:element name="Cart1DSpaceRefFrame" substitutionGroup="CustomSpaceRefFrame" type="cart1DRefFrameType"> <xs:annotation> <xs:documentation>Coordinate reference frame: 1-D scale</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Cart2DSpaceRefFrame" substitutionGroup="CustomSpaceRefFrame" type="cart2DRefFrameType"> <xs:annotation> <xs:documentation> Coordinate reference frame: 2-D rotation and scale </xs:documentation> </xs:annotation> </xs:element> <xs:element name="Cart3DSpaceRefFrame" substitutionGroup="CustomSpaceRefFrame" type="cart3DRefFrameType"> <xs:annotation> <xs:documentation> Coordinate reference frame: 3-D rotation and scale </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Head element for the custom coordinate reference frame substitution group </xs:documentation> </xs:annotation> </xs:element> <xs:element name="SphericalRefFrame" substitutionGroup="CoordRefFrame" type="sphericalRefFrameType"> <xs:annotation> <xs:documentation> Coordinate reference frame: a custom pole (positive Z-axis) and positive X-axis direction </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Coordinate reference frame: 1-D scale</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Coordinate reference frame: 2-D rotation and scale </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Coordinate reference frame: 3-D rotation and scale </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> If solar system positions are implied anywhere, the planetary ephemeris to be used needs to be provided - usually JPL-DE405 with ICRS and JPL-DE200 with FK5 </xs:documentation> </xs:annotation> <xs:enumeration value="JPL-DE200"/> <xs:enumeration value="JPL-DE405"/> </xs:restriction> </xs:simpleType> <xs:annotation> <xs:documentation>Abstract type for reference positions</xs:documentation> </xs:annotation> </xs:complexType> <xs:annotation> <xs:documentation>Type for standard reference positions</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> Type for custom positions: specifies reference origin </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> Type for custom positions: specifies reference origin </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> Head element from the ReferencePosition substitution group: either a "known place" such as geocenter or barycenter (RefPos), or a position defined in a known coordinate system (CoordOrigin) </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Location of the observer/telescope</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Barycenter of the solar system</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Center of the sun</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Center of the earth</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> (Kinematic) Local Standard of Rest (only used for Doppler velocities); equivalent to LSRK </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Kinematic Local Standard of Rest (only used for Doppler velocities); equivalent to LSR </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Dynamic Local Standard of Rest (only used for Doppler velocities) </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Center of the Galaxy</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Center of the Local Group</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Center of the Moon</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Barycenter of the Earth-Moon system</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Center of Mercury</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Center of Venus</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Center of Mars</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Center of Jupiter</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Center of Saturn</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Center of Uranus</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Center of Neptune</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Center of Pluto</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> A relocatable origin, especially useful for simulations </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Unknown origin; the client is responsible for assigning a default </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Origin of the coordinate system, given as a position in another, known, coordinate system </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Provides the spatial coordinate definitions: number of axes, SPHERICAL, CARTESIAN, UNITSPHERE, POLAR, or HEALPIX, presence of velocities </xs:documentation> </xs:annotation> <xs:simpleType> <xs:minInclusive value="1"/> <xs:maxInclusive value="3"/> </xs:restriction> </xs:simpleType> </xs:attribute> <xs:simpleType> <xs:enumeration value="left"/> <xs:enumeration value="right"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:complexType> <xs:annotation> <xs:documentation> 2-D Healpix coordinates; defaults for H(4) and K(3) </xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> Abstract head element for the CoordFlavor substitution group </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Spherical 2-D (longitude, latitude) or 3-D (long, lat, radius/elevation) coordinates </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Cartesian 1-, 2-, or 3-D coordinates</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> 3-D Unit sphere coordinates (direction cosines); in (long,lat), X is in the direction (0,0), Y (pi/2,0), Z (0,pi/2) </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>2-D polar coordinates (radius, posangle)</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>3-D cylindrical coordinates (radius, posangle, z)</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>String coordinates (e.g., Stokes)</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> 2-D Healpix coordinates; defaults for H(4) and K(3) </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> A pixel coordinate frame (which may be 1-D, 2-D, or 3-D) consists of a coordinate frame, a reference position, a flavor, a reference pixel array and the order in which the pixel axes appear in the pixel array </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> A spatial coordinate frame consists of a coordinate frame, a reference position, a flavor, and, optionally, an offset center </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation> Coordinate reference frame: optional equinox with either a standard reference system (ICRS, FK5, FK4) and optional standard pole (equatorial, ecliptic, galactic, etc.), or pole (positive Z-axis) and positive X-axis direction </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Origin of the coordinate reference frame: either a "known place" such as geocenter or barycenter, or a position defined in a known coordinate system </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Provides the coordinate definitions: number of axes, SPHERICAL, CARTESIAN, UNITSPHERE, POLAR, or HEALPIX, presence of velocities </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> The time reference frame consists of a timescale, a reference position, and optionally a reference direction (needed when transformations have been applied) </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation> The time reference frame consists of a time scale, a time format, and a reference time, if needed </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Origin of the coordinate reference frame: either a "known place" such as geocenter or barycenter, or a position defined in a known coordinate system </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Some time transformations (e.g., change of RefPos) depend on an assumed directonal position of the source </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Contains the spectral frame reference position</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation> The reference frame for the spectral scale; note presence of LSR </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> The Doppler definition used: optical, radio, or pseudo-relativistic (i.e., how is a redshift converted to a velocity); the most common is optical, except when the reference is LSR (usually radio) </xs:documentation> </xs:annotation> <xs:enumeration value="OPTICAL"/> <xs:enumeration value="RADIO"/> <xs:enumeration value="RELATIVISTIC"/> </xs:restriction> </xs:simpleType> <xs:annotation> <xs:documentation> Contains the Doppler definitions, including whether the values are velocity or redshift (value_type) </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation> The Doppler definition used: optical, radio, or pseudo-relativistic (i.e., how is a redshift converted to a velocity); the most common is optical, except when the reference is LSR (usually radio) </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The reference frame for the Doppler velocities or redshfts; note presence of LSR </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> <xs:simpleType> <xs:enumeration value="VELOCITY"/> <xs:enumeration value="REDSHIFT"/> </xs:restriction> </xs:simpleType> </xs:attribute> </xs:extension> </xs:complexContent> </xs:complexType> <!--CoordSys definition--> <xs:annotation> <xs:documentation> Coordinate system definition: a collection of coordinate frames </xs:documentation> </xs:annotation> <xs:complexContent> <xs:annotation> <xs:documentation> A CoordSys consists of at least one coordinate frames; unfortunately, schema inheritance and polymorphism doesn't allow us to specify this in the most genarl way </xs:documentation> </xs:annotation> <xs:sequence maxOccurs="unbounded" minOccurs="0"> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Head element (not abstract) of the CoordSys group</xs:documentation> </xs:annotation> </xs:element> <!-- AstroCoordSystem --> <xs:annotation> <xs:documentation>The time coordinate reference frame</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The spatial coordinate reference frame</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The reference frame for the spectral coordinate; note presence of LSR </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Contains the Doppler definitions, including whether the values are velocity or redshift (value_type) </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Element for pixel Coordinate Frames</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The astronomical coordinate system definition: spatial coordinate frame and reference position; time frame and reference position; the coordinate flavor; spectral frame and (optionally) Doppler frame; and the planetary ephemeris; an ID is required, since this is how coordinate elements are associated with their coordinate systems </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:element name="AstroCoordSystem" nillable="true" substitutionGroup="CoordSys" type="astroCoordSystemType"> <xs:annotation> <xs:documentation> The coordinate system definition: spatial coordinate frame and reference position; time frame and reference position; the coordinate flavor; the spectral fromae and redshift/Doppler frame; and the planetary ephemeris; an ID is required, since this is how coordinate elements are associated with their coordinate systems </xs:documentation> </xs:annotation> </xs:element> <!--Pixel coordinate system--> <xs:annotation> <xs:documentation>The pixel coordinate system definition</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence maxOccurs="unbounded" minOccurs="0"> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:element name="PixelCoordSystem" nillable="true" substitutionGroup="CoordSys" type="pixelCoordSystemType"> <xs:annotation> <xs:documentation>Pixel form of CoordSys</xs:documentation> </xs:annotation> </xs:element> <!-- ################### Start of the former coords.xsd --> <!-- Attribute types: units and time scale--> <xs:annotation> <xs:documentation>Basic unit type</xs:documentation> </xs:annotation> </xs:simpleType> <xs:annotation> <xs:documentation> Time units may be second (s), hour (h: 3600 s), day (d: 86400 s), Julian year (a, yr: 365.25 d), Julian century (cy: 36525 d), or empty (i.e., dimensionless) for ISO-8601 format </xs:documentation> </xs:annotation> <xs:enumeration value="s"/> <xs:enumeration value="h"/> <xs:enumeration value="d"/> <xs:enumeration value="a"/> <xs:enumeration value="yr"/> <xs:enumeration value="cy"/> <xs:enumeration value=""/> </xs:restriction> </xs:simpleType> <xs:annotation> <xs:documentation> Spatial coordinate units may be angular (degrees, radians, hours, arcmins, arcsecs), linear (meters, km, mm, AUs, parsecs, kpc, Mpc, lightyears), or empty (i.e., dimensionless). The three-units strings are for special 3-D vectors where the components do not share the same unit; one may prefer to give each component its own unit, instead. </xs:documentation> </xs:annotation> <xs:enumeration value="deg"/> <xs:enumeration value="deg deg m"/> <xs:enumeration value="deg deg Mpc"/> <xs:enumeration value="rad"/> <xs:enumeration value="h"/> <xs:enumeration value="arcmin"/> <xs:enumeration value="arcsec"/> <xs:enumeration value="m"/> <xs:enumeration value="km"/> <xs:enumeration value="mm"/> <xs:enumeration value="AU"/> <xs:enumeration value="pc"/> <xs:enumeration value="kpc"/> <xs:enumeration value="Mpc"/> <xs:enumeration value="lyr"/> <xs:enumeration value=""/> </xs:restriction> </xs:simpleType> <xs:annotation> <xs:documentation> Angular coordinate units may be degrees, radians, hours, arcmins, arcsecs </xs:documentation> </xs:annotation> <xs:enumeration value="deg"/> <xs:enumeration value="rad"/> <xs:enumeration value="h"/> <xs:enumeration value="arcmin"/> <xs:enumeration value="arcsec"/> </xs:restriction> </xs:simpleType> <xs:annotation> <xs:documentation> Position angles may be counted from North (through East), (positive) X (to positive Y), or (positive) Y (to positive X) axis </xs:documentation> </xs:annotation> <xs:enumeration value="North"/> <xs:enumeration value="X"/> <xs:enumeration value="Y"/> </xs:restriction> </xs:simpleType> <xs:annotation> <xs:documentation> Velocity units are a posUnitType / velTimeType; the latter may be second, day, hour, year (a or yr), century, but not empty </xs:documentation> </xs:annotation> <xs:enumeration value="s"/> <xs:enumeration value="h"/> <xs:enumeration value="d"/> <xs:enumeration value="a"/> <xs:enumeration value="yr"/> <xs:enumeration value="cy"/> </xs:restriction> </xs:simpleType> <xs:annotation> <xs:documentation> Spectral units may be frequency (Hz, kHz, MHz, GHz), wavelength (meters, mm, micron, nm, Angstrom), or energy (eV, keV, MeV, GeV, TeV) </xs:documentation> </xs:annotation> <xs:enumeration value="Hz"/> <xs:enumeration value="kHz"/> <xs:enumeration value="MHz"/> <xs:enumeration value="GHz"/> <xs:enumeration value="m"/> <xs:enumeration value="mm"/> <xs:enumeration value="um"/> <xs:enumeration value="nm"/> <xs:enumeration value="Angstrom"/> <xs:enumeration value="eV"/> <xs:enumeration value="keV"/> <xs:enumeration value="MeV"/> <xs:enumeration value="GeV"/> <xs:enumeration value="TeV"/> </xs:restriction> </xs:simpleType> <xs:annotation> <xs:documentation> The actual time scale used: TT, TAI, UTC, TDB, etc. </xs:documentation> </xs:annotation> <xs:enumeration value="TT"> <xs:annotation> <xs:documentation>Terrestrial Time; the basis for ephemerides</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="TDT"> <xs:annotation> <xs:documentation>Obsolete synonym for TT</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="ET"> <xs:annotation> <xs:documentation> Ephemeris Time; predecessor of, and continuous with, TT </xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="TDB"> <xs:annotation> <xs:documentation> Barycentric Dynamic Time:the independent variable in planetay ephemerides; time at the solar system barycenter synchronous with TT on an annual basis; sometimes called TEB </xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="TEB"> <xs:annotation> <xs:documentation> Barycentric Ephemeris Time: time at the solar system barycenter synchronous with TT on an annual basis; a deprecated synonym of TDB. </xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="TCG"> <xs:annotation> <xs:documentation>Terrestrial Coordinate Time</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="TCB"> <xs:annotation> <xs:documentation> Barycentric Coordinate Time; runs slower than TDB but is consistent with physical constants </xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="TAI"> <xs:annotation> <xs:documentation> International Atomic Time; runs 32.184 s behind TT </xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="IAT"> <xs:annotation> <xs:documentation>Synonym for TAI</xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="UTC"> <xs:annotation> <xs:documentation> Coordinated Universal Time; currently (2006) runs 33 leapseconds behind TAI </xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="GPS"> <xs:annotation> <xs:documentation> Global Positioning System's time scale; runs 19 s behind TAI, 51.184 s behind TT. </xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="LST"> <xs:annotation> <xs:documentation> Local Siderial Time; only for ground-based observations; note that the second is shorter </xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="GMST"> <xs:annotation> <xs:documentation> Greenwich Mean Siderial Time; only for ground-based observations; note that the second is shorter </xs:documentation> </xs:annotation> </xs:enumeration> <xs:enumeration value="LOCAL"> <xs:annotation> <xs:documentation> Only to be used for simulations in conjunction with a relocatable spatial frame </xs:documentation> </xs:annotation> </xs:enumeration> </xs:restriction> </xs:simpleType> <xs:annotation> <xs:documentation> Position angles are doubles and include optionally a unit attribute (default deg) and a reference attribute (default X) </xs:documentation> </xs:annotation> <xs:simpleContent> </xs:extension> </xs:simpleContent> </xs:complexType> <xs:annotation> <xs:documentation> These four attributes represent the standard IVOA referencing system: internal (within the document) referencing through "id" and "idref", external referencing through Xlink, using only "type=simple" and "href". </xs:documentation> <xs:documentation> The attributes ID_type and IDREF_type allow the author to list attributes of type ID, respectively IDREF, enabling readers to identify these attributes without having to refer to the schema. This is important in cases where documents are concatenated (e.g., in registries), raising the potential for non-unique IDs. The value of these attributes is a string of comma-separated attribute names. </xs:documentation> </xs:annotation> </xs:attributeGroup> <xs:annotation> <xs:documentation> STC standard base type. Elements of derived types may contain real content, be a reference to another element in the document (idref), or be a reference to a distributed resource; the href is to be a standard IVOA identifier or a valid URL. Actuation is up to the client. At this time it is required to be of type simple. An id is optional; it allows referencing by other elements. </xs:documentation> </xs:annotation> </xs:complexType> <!--The definition of astronTimeType--> <xs:annotation> <xs:documentation> Substitution group for absoluteTimeType component of astronTimeType </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> ISO8601 time; note: only a limited subset of ISO 8601 is allowed: yyyy-mm-ddThh:mm:ss.sss...; unfortunately, XSchema does not allow hh, mm, or ss to be optional, ".ss" is. </xs:documentation> </xs:annotation> <xs:simpleContent> </xs:extension> </xs:simpleContent> </xs:complexType> <xs:annotation> <xs:documentation> A decimal type for JD and MJD, with optional referencing </xs:documentation> </xs:annotation> <xs:simpleContent> </xs:extension> </xs:simpleContent> </xs:complexType> <xs:annotation> <xs:documentation>A relocatable time origin for simulations</xs:documentation> </xs:annotation> <xs:enumeration value="RELOCATABLE"/> </xs:restriction> </xs:simpleType> <xs:annotation> <xs:documentation>Actual elapsed time offset</xs:documentation> </xs:annotation> <xs:simpleContent> </xs:extension> </xs:simpleContent> </xs:complexType> <xs:annotation> <xs:documentation> ISO8601 time; note: only a limited subset of ISO 8601 is allowed: yyyy-mm-ddThh:mm:ss.sss...; only ".sss..." is optional </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>JD time</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>MJD time (=JD - 2400000.5)</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>A relocatable time origin for simulations</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Actual elapsed time offset</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> astronTime is the generalized astronomical time type and consists of one, two, or three elements: optional TimeScale, optional relative time offset, and an absolute time (ISO8601 or a decimal JD or MJD; or it may be an IDREF to one of those three); TimeScale may be omitted only if the element is part of AstroCoords, referring to an AstroCoordSystem that specifies a TimeScale. </xs:documentation> </xs:annotation> <xs:sequence> </xs:sequence> </xs:complexType> <!--Some specific vectors of doubles--> <!--The original array type, abandoned for the time being (or forever): <xs:simpleType name="doubleArrayType"> <xs:annotation> <xs:documentation>For vector coordinates we need arrays of doubles</xs:documentation> </xs:annotation> <xs:list itemType="xs:double"/> </xs:simpleType> --> <xs:annotation> <xs:documentation>A double with referencing and units attributes</xs:documentation> </xs:annotation> <xs:simpleContent> </xs:extension> </xs:simpleContent> </xs:complexType> <xs:annotation> <xs:documentation> A vector of 2 doubles; components are now separated. </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>A vector of 3 doubles with separated components</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>A vector of 4 doubles (2x2 matrix)</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>A vector of 9 doubles (3x3 matrix)</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> A curve in 2-D space, defined by its end points and a shape attribute (default: line or great circle) </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> A curve in 3-D space, defined by its end points and a shape attribute (default: line or great circle) </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <!--Substitution group for coordinate values--> <xs:annotation> <xs:documentation> The head element for the CoordinateValue substitution group; this only exists for a few cases where only a value is needed (as in some Region elements) </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> A type that just holds a 1-3D coordinate value; see comment in the CoordValue head element </xs:documentation> </xs:annotation> <xs:sequence> </xs:sequence> </xs:complexType> <xs:annotation> <xs:documentation>A type that just holds a 1-3D pixel value</xs:documentation> </xs:annotation> <xs:sequence> </xs:sequence> </xs:complexType> <!--The abstract coordinate type element from which all others are derived--> <xs:annotation> <xs:documentation> Abstract coordinate type; a concrete Coordinate consists of a Value, Error, Resolution, Size, and PixSize </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <!--The components for 1-D coordinates --> <xs:annotation> <xs:documentation>double</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Substitution group for all types of errors</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>double</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Substitution group for all types of resolutions</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>double</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Substitution group for all types of sizes</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>double</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Substitution group for all types of pixel sizes</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>double</xs:documentation> </xs:annotation> </xs:element> <!--1-D coordinate types--> <xs:annotation> <xs:documentation>Basic scalar coordinate type</xs:documentation> <xs:documentation> Single Error, Resolution, Size, PixSize elements indicate definite values; pairs indicate ranges </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Scalar pixel coordinate type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> Time coordinate type; sibling of basicCoordinateType </xs:documentation> <xs:documentation> Single Error, Resolution, Size, PixSize elements indicate definite values; pairs indicate ranges </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <!--Component substitution groups for 2-D coordinates --> <xs:annotation> <xs:documentation> Consists of a Size (2 doubles) and optional position angle element </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Substitution group for a 2-D coordinate value</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>double vector</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Curve in 2-D</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Substitution group for a 2-D coordinate error</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>double: radius of a 2-D error circle</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> size2Type Error element: 2 doubles with optional position angle </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>2x2 matrix Error element</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Substitution group for a 2-D coordinate resolution </xs:documentation> </xs:annotation> </xs:element> <xs:element name="Resolution2Radius" nillable="true" substitutionGroup="CResolution2" type="double1Type"> <xs:annotation> <xs:documentation>double: radius of a 2-D circular resolution</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> size2Type Resolution element: 2 doubles with optional position angle </xs:documentation> </xs:annotation> </xs:element> <xs:element name="Resolution2Matrix" nillable="true" substitutionGroup="CResolution2" type="double4Type"> <xs:annotation> <xs:documentation>2x2 matrix Resolution element</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Substitution group for a 2-D coordinate size</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>double: radius of a 2-D circle</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> size2Type Size element: 2 doubles with optional position angle </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>2x2 matrix Size element</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Substitution group for a 2-D coordinate pixel size </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> size2Type PixSize element: 2 doubles with optional position angle </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>2x2 matrix PixSize element</xs:documentation> </xs:annotation> </xs:element> <!--2-D coordinate types--> <xs:annotation> <xs:documentation>2-D coordinate type</xs:documentation> <xs:documentation> Single CError2, CResolution2, CSize2, CPixSize2 elements indicate definite values; pairs indicate ranges </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>2-D pixel coordinate type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <!--Component substitution groups for 3-D coordinates --> <xs:annotation> <xs:documentation> Consists of a Size (3 doubles) and optional position angle element </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Substitution group for a 3-D coordinate value</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Vector of 3 doubles</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Curve in 3-D</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Substitution group for a 3-D coordinate error</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>double: radius of a 3-D error sphere</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> size3Type Error element: 3 doubles with optional position angle(s) </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>3x3 matrix Error element</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Substitution group for a 3-D coordinate resolution </xs:documentation> </xs:annotation> </xs:element> <xs:element name="Resolution3Radius" nillable="true" substitutionGroup="CResolution3" type="double1Type"> <xs:annotation> <xs:documentation>double: radius of a 3-D spherical resolution</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> size3Type Resolution element: 3 doubles with optional position angle(s) </xs:documentation> </xs:annotation> </xs:element> <xs:element name="Resolution3Matrix" nillable="true" substitutionGroup="CResolution3" type="double9Type"> <xs:annotation> <xs:documentation>3x3 matrix Resoltuion element</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Substitution group for a 3-D coordinate size</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>double: radius of a 3-D sphere</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> size3Type Size element: 3 doubles with optional position angle(s) </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>3x3 matrix Size element</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Substitution group for a 3-D coordinate pixel size </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> size3Type PixSize element: 3 doubles with optional position angle(s) </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>3x3 matrix PixSize element</xs:documentation> </xs:annotation> </xs:element> <!--3-D coordinate types--> <xs:annotation> <xs:documentation>3-D coordinate type</xs:documentation> <xs:documentation> Single CError3, CResolution3, CSize3, CPixSize3 elements indicate definite values; pairs indicate ranges </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>3-D pixel coordinate type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <!-- Derived oordinate types--> <xs:annotation> <xs:documentation>Generic string coordinate type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> Generic scalar coordinate type: a basic scalar coordinate with units </xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Generic 2-D coordinate type</xs:documentation> <xs:documentation> Single CError2, CResolution2, CSize2, CPixSize2 elements indicate definite values; pairs indicate ranges </xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Generic 3-D coordinate type</xs:documentation> <xs:documentation> Single CError3, CResolution3, CSize3, CPixSize3 elements indicate definite values; pairs indicate ranges </xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> Position scalar coordinate type; sibling of basicCoordinateType </xs:documentation> <xs:documentation> Single Error, Resolution, Size, PixSize elements indicate definite values; pairs indicate ranges </xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Position 2-D coordinate type</xs:documentation> <xs:documentation> Single CError2, CResolution2, CSize2, CPixSize2 elements indicate definite values; pairs indicate ranges </xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Position 3-D coordinate type</xs:documentation> <xs:documentation> Single CError3, CResolution3, CSize3, CPixSize3 elements indicate definite values; pairs indicate ranges </xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> Velocity scalar coordinate type; sibling of basicCoordinateType </xs:documentation> <xs:documentation> Single Error, Resolution, Size, PixSize elements indicate definite values; pairs indicate ranges </xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Velocity 2-D coordinate type</xs:documentation> <xs:documentation> Single CError2, CResolution2, CSize2, CPixSize2 elements indicate definite values; pairs indicate ranges </xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Velocity 3-D coordinate type</xs:documentation> <xs:documentation> Single CError3, CResolution3, CSize3, CPixSize3 elements indicate definite values; pairs indicate ranges </xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Spectral coordinate type</xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Redshift coordinate type</xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <!-- Coord Substitution Groups--> <xs:annotation> <xs:documentation>Head element of Coordinate substitution group</xs:documentation> </xs:annotation> </xs:element> <xs:element name="GenCoordinate" nillable="true" substitutionGroup="Coordinate" type="coordinateType"> <xs:annotation> <xs:documentation> Head element of Generic coordinate substitution group </xs:documentation> </xs:annotation> </xs:element> <xs:element name="StringCoordinate" nillable="true" substitutionGroup="GenCoordinate" type="stringCoordinateType"> <xs:annotation> <xs:documentation>Generic string coordinate element</xs:documentation> </xs:annotation> </xs:element> <xs:element name="ScalarCoordinate" nillable="true" substitutionGroup="GenCoordinate" type="scalarCoordinateType"> <xs:annotation> <xs:documentation>Generic scalar coordinate element</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Vector2DCoordinate" nillable="true" substitutionGroup="GenCoordinate" type="genVector2CoordinateType"> <xs:annotation> <xs:documentation>Generic 2-D coordinate element</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Vector3DCoordinate" nillable="true" substitutionGroup="GenCoordinate" type="genVector3CoordinateType"> <xs:annotation> <xs:documentation>Generic 3-D coordinate element</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Head element of Pixel coordinate substitution group </xs:documentation> </xs:annotation> </xs:element> <xs:element name="Pixel1D" nillable="true" substitutionGroup="Pixel" type="pixelVector1CoordinateType"> <xs:annotation> <xs:documentation>1-D Position coordinate</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Pixel2D" nillable="true" substitutionGroup="Pixel" type="pixelVector2CoordinateType"> <xs:annotation> <xs:documentation>2-D Position coordinate</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Pixel3D" nillable="true" substitutionGroup="Pixel" type="pixelVector3CoordinateType"> <xs:annotation> <xs:documentation>3-D Position coordinate</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Head element of Position coordinate substitution group </xs:documentation> </xs:annotation> </xs:element> <xs:element name="Position1D" nillable="true" substitutionGroup="Position" type="posVector1CoordinateType"> <xs:annotation> <xs:documentation>1-D Position coordinate</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Position2D" nillable="true" substitutionGroup="Position" type="posVector2CoordinateType"> <xs:annotation> <xs:documentation>2-D Position coordinate</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Position3D" nillable="true" substitutionGroup="Position" type="posVector3CoordinateType"> <xs:annotation> <xs:documentation>3-D Position coordinate</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Head element of Velocity coordinate substitution group </xs:documentation> </xs:annotation> </xs:element> <xs:element name="Velocity1D" nillable="true" substitutionGroup="Velocity" type="velVector1CoordinateType"> <xs:annotation> <xs:documentation>1-D Velocity coordinate</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Velocity2D" nillable="true" substitutionGroup="Velocity" type="velVector2CoordinateType"> <xs:annotation> <xs:documentation>2-D Velocity coordinate</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Velocity3D" nillable="true" substitutionGroup="Velocity" type="velVector3CoordinateType"> <xs:annotation> <xs:documentation>3-D Velocity coordinate</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Spectral" nillable="true" substitutionGroup="Coordinate" type="spectralCoordinateType"> <xs:annotation> <xs:documentation>Spectral coordinate</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Redshift" nillable="true" substitutionGroup="Coordinate" type="redshiftCoordinateType"> <xs:annotation> <xs:documentation>Redshift coordinate</xs:documentation> </xs:annotation> </xs:element> <!--FITS file type to hold coordinate values--> <xs:annotation> <xs:documentation> Specifies a FITS file and optionally a specific HDU by HDU number or HDU name </xs:documentation> </xs:annotation> <xs:simpleContent> </xs:extension> </xs:simpleContent> </xs:complexType> <xs:annotation> <xs:documentation> Refers coordinate components to specific columns in the FITS file HDU </xs:documentation> </xs:annotation> <xs:sequence> <xs:annotation> <xs:documentation> The column name for the coordinate value; comma-separated if multi-dimensional </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The column name for the coordinate error; comma-separated if multi-dimensional </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The column name for the coordinate resolution; comma-separated if multi-dimensional </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The column name for the coordinate size; comma-separated if multi-dimensional </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The column name for the coordinate pixel size; comma-separated if multi-dimensional </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:complexType> <xs:annotation> <xs:documentation>Coordinate references to a specific FITS file</xs:documentation> </xs:annotation> <xs:complexContent> <xs:annotation> <xs:documentation>Coordinate references to a specific FITS file</xs:documentation> </xs:annotation> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <!--Orbital elements--> <xs:annotation> <xs:documentation> Orbit defined by six orbital elements and optional mean anomaly and period; note that the epoch of periapsis or of mean anomaly is provided by T, however, an coordinate epoch should be provided by paring this element with a time instant element </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:choice> <xs:annotation> <xs:documentation> This really is a choice: provide either a or q, but not both - and a only for closed orbits </xs:documentation> </xs:annotation> <xs:annotation> <xs:documentation> Semi-major axis for elliptical (closed) orbits (1>e>=0) only; for parabolic or hyperbolic orbits us periapsis distance q </xs:documentation> </xs:annotation> <xs:complexType> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <xs:annotation> <xs:documentation> Periapsis distance; required (instead of a) for open orbits (e>=1) </xs:documentation> </xs:annotation> <xs:complexType> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> </xs:choice> <xs:annotation> <xs:documentation>Eccentricity</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Inclination</xs:documentation> </xs:annotation> <xs:complexType> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <xs:annotation> <xs:documentation>Longitude of ascending node</xs:documentation> </xs:annotation> <xs:complexType> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <xs:annotation> <xs:documentation>Argument of periapsis</xs:documentation> </xs:annotation> <xs:complexType> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <xs:annotation> <xs:documentation> Mean anomaly at time T; if absent T will refer to pericenter </xs:documentation> </xs:annotation> <xs:complexType> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <xs:annotation> <xs:documentation> Orbital period (redundant); for closed orbits only </xs:documentation> </xs:annotation> <xs:complexType> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> </xs:element> <xs:annotation> <xs:documentation> Epoch of M (mean anomaly, if present) or of periapsis (if M is absent) </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <!-- Coords Types and instances--> <xs:annotation> <xs:documentation>The generic coordsType</xs:documentation> </xs:annotation> <xs:complexContent> <xs:annotation> <xs:documentation> A CoordSys consists of at least one coordinate frames; unfortunately, schema inheritance and polymorphism doesn't allow us to specify this in the most genarl way </xs:documentation> </xs:annotation> <xs:sequence maxOccurs="unbounded" minOccurs="0"> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>The pixel coordinates type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence maxOccurs="unbounded" minOccurs="0"> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>The astronomical (STC) coordsType</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation> Some or all coordinate values may be given in file </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Orbit specified by orbital elements</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Head element of Coords group (not abstract)</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The coordinate element consists either of a coordinate file or a sequence of time element, spatial coordinate element, velocity element, and redshift element; the spatial and velocity elements may be scalar or vector; it needs to refer to a coordinate system </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Contains pixel coordinates</xs:documentation> </xs:annotation> </xs:element> <!-- ################### End of the former coords.xsd --> <!-- ################### Start of the former region.xsd --> <!--Shape definitions; in 2-D: Allsky, Circle, Ellipse, Polygon, Box, and Sector are derived from Shape; Polygon includes also Vertex and SmallCircle; in 3-D: Halfspace, Convex, Convexhull --> <xs:annotation> <xs:documentation> Element to hold the area of a Region, once calculated; the element holds the actual area, linearAreaUnit the linear units of the of the area (i.e., it should be squared to get the proper units of the area), and validArea indicates whether the area has been calculated properly. </xs:documentation> </xs:annotation> <xs:simpleContent> </xs:extension> </xs:simpleContent> </xs:complexType> <xs:annotation> <xs:documentation> Abstract region type; a Region is a Shape or the result of a Region Operation involving one or more Regions </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> Shape is the abstract type that is the building block of regions; in real life it needs to be replaced by a concrete shape </xs:documentation> </xs:annotation> <xs:complexContent> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> AllSky type: just a shape without any child elements </xs:documentation> </xs:annotation> <xs:complexContent> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Circle shape: center and radius</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation>The coordinates of the circle's center</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The radius of the circle</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> Ellipse shape: center, semi-major, semi-minor axis and position angle; in spherical coordinates defined as the shape cut out of the sphere by a cone with elliptical cross-section </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation>The coordinates of the circle's center</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The radius of the circle</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Half the minor axis of the ellipse, in radius_unit </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Position angle of major axis (Radius).</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <!-- smallCircleType is used in vertices to indicate that the polygon side associated with a vertex and its predecessor is to be a small circle rather than the default great circle --> <xs:annotation> <xs:documentation> smallCircleType indicates in polygons that side is along small circle; with optional pole </xs:documentation> </xs:annotation> <xs:sequence> </xs:sequence> </xs:complexType> <xs:annotation> <xs:documentation> Vertex is a position with optional SmallCircle element; the SmallCircle element indicates that the polygon side formed by that vertex and its predecessor vertex is a small circle, rather than a great circle; SmallCircle has no meaning in Cartesian coordinates </xs:documentation> </xs:annotation> <xs:sequence> </xs:sequence> </xs:complexType> <xs:annotation> <xs:documentation> Polygon: one or more vertices; counter-clockwise (as seen from "inside" or from "top") encircled area is enclosed; sides should span less than 180 deg in each coordinate if spherical; a polygon may not intersect itself </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation> In order to form polygons, vertices are to be connected with straight line segments. In the case of spherical coordinates: greatcircle segments; if a smallCircle element si present, the vertex and its predecessor are to be connected with a smallcircle, by default in the CoordSys that is referenced; optionally, a pole may be specified (other than the CoordSys pole) that defines the smallcircle system </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> Box shape: a rectangle defined by its center and size on both dimensions; since it is a polygon, it is redundant, but simple rectangles with great circle sides are awkward to define in spherical coordinates </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation>The coordinates of the box's center</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The lengths of the box's sides</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> A sector is the counter-clockwise area between two half-lines </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation>The vertex position of the sector</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The area ccw from this position angle is included</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The area cw from this position angle is included</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:minInclusive value="-1.0"/> <xs:maxInclusive value="1.0"/> </xs:restriction> </xs:simpleType> <xs:annotation> <xs:documentation> An area on the unit sphere defined by the intersection with a plane </xs:documentation> </xs:annotation> <xs:sequence> <xs:annotation> <xs:documentation> This needs to be a spherical coordinate vector; it is the unit vector that is normal to the plane that forms a constraint for a convex </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The distance along the normal vector where the constraint plane intersects that vector; if positive, the spherical sector on the far side (seen from the center) is selected; if negative, the point of intersection is in the opposite direction of the vector, resulting in more than a hemisphere; the valid range is -1.0 to +1.0 </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:complexType> <xs:annotation> <xs:documentation> A convex polygon defined by one or more Constraints </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> A convex hull: the smallest convex polygon that contains all its points; in spherical coordinates all points have to be contained within a hemisphere </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <!--A generic sky indexing type--> <xs:annotation> <xs:documentation> This is a hook for regions defined in sky indexing schemes </xs:documentation> </xs:annotation> <xs:complexContent> </xs:complexContent> </xs:complexType> <!--Boolean operations on regions--> <xs:annotation> <xs:documentation>The union of two or more regions is a region</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> The intersection of two or more regions is a region </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>The negation of a region is a region</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> The difference of two regions (Region1 minus Region2) is a region; it is equivalent to the intersection of Region1 with notRegion2 </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <!-- Region itself; it's either a Shape or a the result of a Boolean operation--> <xs:annotation> <xs:documentation> Head element of the Region substitution group; a Region is a Shape or the result of a Region Operation on one or more Regions </xs:documentation> </xs:annotation> </xs:element> <!--The three operators (Intersection, Union, Negation) can be substituted for Region--> <xs:annotation> <xs:documentation> The intersection of two or more regions is a region </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The union of two or more regions is a region</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The negation of a region is a region</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The difference of two regions (Region1 minus Region2) is a region; it is equivalent to the intersection of Region1 with notRegion2 </xs:documentation> </xs:annotation> </xs:element> <!--Here are element definitions so Circle, Ellipse, Polygon, and Sector can be substituted for Shape--> <xs:annotation> <xs:documentation>AllSky is just a convenience, meaning no bounds</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The circle is defined by a center and a radius</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Ellipse is an extension of the circle shape, with a minor axis radius and position angle </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> A polygon is a shape delineated by a list of vertices connected with lines, great circles, or small circles; the inside of the polygon is circumscribed counter-clockwise by the list of vertices; the polygon may be concave but not self-intersecting; the last vertex in the list is the predecessor of the first. For celestial coordinates it is assumed that we are looking at the sphere from the inside, with Right Ascension increasing to the left. Sides should span less than 180 deg in each coordinate. </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> A box is a rectangle; the midpoints of its sides are the endpoints of a cross centered on the center position with arms that extend half the size for each coordinate in both directions, and the sides are lines or great circles that intersect the cross at its end points at right angles; the arms of the cross are parallel to the coordinate axes at the center point. </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> A sector selects the area between two half great circles or half lines meeting in a specified point </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> A convex is defined as the intersection of one or more half-plane constraints with the unit sphere; this may also be described as the union of one or more convex polygons bounded by one or more constraint planes </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> A convex hull is the convex polygon that contains all of the specified positions; the points have to be constrained to lie in one hemisphere </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> A shape defined through a sky indexing scheme; this is really a substitution group for concrete implementations </xs:documentation> </xs:annotation> </xs:element> <!-- This is a substitution group for a second Region: Region2; it's either a Shape or a the result of a Boolean operation--> <xs:annotation> <xs:documentation> Head element of the Region2 substitution group; a Region is a Shape or the result of a Region Operation on one or more Regions </xs:documentation> </xs:annotation> </xs:element> <!--The three operators (Intersection, Union, Negation) can be substituted for Region--> <xs:element name="Intersection2" nillable="true" substitutionGroup="Region2" type="intersectionType"> <xs:annotation> <xs:documentation> The intersection of two or more regions is a region </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The union of two or more regions is a region</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The negation of a region is a region</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The difference of two regions (Region1 minus Region2) is a region; it is equivalent to the intersection of Region1 with notRegion2 </xs:documentation> </xs:annotation> </xs:element> <!--Here are element definitions so Circle, Ellipse, Polygon, and Sector can be substituted for Shape--> <xs:annotation> <xs:documentation>AllSky is just a convenience, meaning no bounds</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>The circle is defined by a center and a radius</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Ellipse is an extension of the circle shape, with a minor axis radius and position angle </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> A polygon is a shape delineated by a list of vertices connected with lines, great circles, or small circles; the inside of the polygon is circumscribed counter-clockwise by the list of vertices; the polygon may be concave but not self-intersecting; the last vertex in the list is the predecessor of the first. For celestial coordinates it is assumed that we are looking at the sphere from the inside, with Right Ascension increasing to the left. Sides should span less than 180 deg in each coordinate. </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> A box is a rectangle; the midpoints of its sides are the endpoints of a cross centered on the center position with arms that extend half the size for each coordinate in both directions, and the sides are lines or great circles that intersect the cross at its end points at right angles; the arms of the cross are parallel to the coordinate axes at the center point. </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> A sector selects the area between two half great circles or half lines meeting in a specified point </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> A convex is defined as the intersection of one or more half-plane constraints with the unit sphere; this may also be described as the union of one or more convex polygons bounded by one or more constraint planes </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> A convex hull is the convex polygon that contains all of the specified positions; the points have to be constrained to lie in one hemisphere </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> A shape defined through a sky indexing scheme; this is really a substitution group for concrete implementations </xs:documentation> </xs:annotation> </xs:element> <!-- ################### End of the former region.xsd --> <!--Types for CoordArea--> <xs:annotation> <xs:documentation>Abstract coordinate interval type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:annotation> <xs:documentation>Limit to be included?</xs:documentation> </xs:annotation> </xs:attribute> <xs:annotation> <xs:documentation>Limit to be included?</xs:documentation> </xs:annotation> </xs:attribute> <xs:annotation> <xs:documentation>Fraction of interval that is occupied by data</xs:documentation> </xs:annotation> </xs:attribute> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> The time interval needs to contain a start time or a stop time or both; it needs to refer to a coordinate system; boundaries may or may not be inclusive </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation> astronTime may be expressed in ISO8601 or as a double relative to a reference time </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> astronTime may be expressed in ISO8601 or as a double relative to a reference time </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Scalar coordinate interval type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation>Lower bound of interval</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Upper bound of interval</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>2-D coordinate interval type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>3-D coordinate interval type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> Scalar coordinate interval type with units and frame_id </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation>Lower bound of interval</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Upper bound of interval</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> 2-D coordinate interval type with units and frame_id </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> 3-D coordinate interval type with units and frame_id </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Abstract spatial interval type</xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Scalar coordinate interval type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation>Lower bound of interval</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Upper bound of interval</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>2-D coordinate interval type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>3-D coordinate interval type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Contains a spatial velocity CoordInterval</xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Scalar coordinate interval type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation>Lower bound of interval</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Upper bound of interval</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>2-D coordinate interval type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>3-D coordinate interval type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> The 1-, 2-, or 3-D coordinate interval substitution group head element; such an element needs to contain a minimum or maximum scalar or vector value, or both; it needs to refer to a coordinate system; boundaries may or may not be inclusive; and it can have a fill factor </xs:documentation> </xs:annotation> </xs:element> <xs:element name="CoordScalarInterval" nillable="true" substitutionGroup="CoordInterval" type="uCoordScalarIntervalType"> <xs:annotation> <xs:documentation>An interval in a scalar coordinate</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Coord2VecInterval" nillable="true" substitutionGroup="CoordInterval" type="uCoord2VecIntervalType"> <xs:annotation> <xs:documentation>An interval ("box") in a 2-D coordinate pair</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Coord3VecInterval" nillable="true" substitutionGroup="CoordInterval" type="uCoord3VecIntervalType"> <xs:annotation> <xs:documentation>An interval ("cube") in a 3-D coordinate triplet</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The 1-, 2-, or 3-D pixel coordinate interval substitution group head element; such an element needs to contain a minimum or maximum scalar or vector value, or both; it needs to refer to a coordinate system; boundaries may or may not be inclusive; and it can have a fill factor </xs:documentation> </xs:annotation> </xs:element> <xs:element name="PixelCoordScalarInterval" nillable="true" substitutionGroup="PixelCoordInterval" type="coordScalarIntervalType"> <xs:annotation> <xs:documentation>An interval in a scalar pixel coordinate</xs:documentation> </xs:annotation> </xs:element> <xs:element name="PixelCoord2VecInterval" nillable="true" substitutionGroup="PixelCoordInterval" type="coord2VecIntervalType"> <xs:annotation> <xs:documentation> An interval ("box") in a 2-D pixel coordinate pair </xs:documentation> </xs:annotation> </xs:element> <xs:element name="PixelCoord3VecInterval" nillable="true" substitutionGroup="PixelCoordInterval" type="coord3VecIntervalType"> <xs:annotation> <xs:documentation> An interval ("cube") in a 3-D pixel coordinate triplet </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The spatial (position) coordinate interval substitution group head element; such an element needs to contain a minimum or maximum scalar or vector value, or both; it needs to refer to a coordinate system; boundaries may or may not be inclusive; and it can have a fill factor </xs:documentation> </xs:annotation> </xs:element> <xs:element name="PositionScalarInterval" nillable="true" substitutionGroup="PositionInterval" type="posScalarIntervalType"> <xs:annotation> <xs:documentation>An interval in a scalar coordinate</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Position2VecInterval" nillable="true" substitutionGroup="PositionInterval" type="pos2VecIntervalType"> <xs:annotation> <xs:documentation>An interval ("box") in a 2-D coordinate pair</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Position3VecInterval" nillable="true" substitutionGroup="PositionInterval" type="pos3VecIntervalType"> <xs:annotation> <xs:documentation>An interval ("cube") in a 3-D coordinate triplet</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> The spatial (velocity) coordinate interval substitution group head element; such an element needs to contain a minimum or maximum scalar or vector value, or both; it needs to refer to a coordinate system; boundaries may or may not be inclusive; and it can have a fill factor </xs:documentation> </xs:annotation> </xs:element> <xs:element name="VelocityScalarInterval" nillable="true" substitutionGroup="VelocityInterval" type="velScalarIntervalType"> <xs:annotation> <xs:documentation>An interval in a scalar coordinate</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Velocity2VecInterval" nillable="true" substitutionGroup="VelocityInterval" type="vel2VecIntervalType"> <xs:annotation> <xs:documentation>An interval ("box") in a 2-D coordinate pair</xs:documentation> </xs:annotation> </xs:element> <xs:element name="Velocity3VecInterval" nillable="true" substitutionGroup="VelocityInterval" type="vel3VecIntervalType"> <xs:annotation> <xs:documentation>An interval ("cube") in a 3-D coordinate triplet</xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Defines a sphere. A special kind of area is a circle or sphere (in two or three dimensions), defined by a center position and a radius; the radius requires a unit </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Defines a velocity sphere</xs:documentation> </xs:annotation> <xs:complexContent> <xs:annotation> <xs:documentation> A special kind of area is a circle or sphere (in two or three dimensions), defined by a center position and a radius; the radius requires a unit </xs:documentation> </xs:annotation> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Points to a Region file</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <!-- CoordArea --> <xs:annotation> <xs:documentation> Defines a sphere (3-D) region for spatial coordinates; contains a center position and a radius </xs:documentation> </xs:annotation> </xs:element> <xs:element name="RegionFile" nillable="true" substitutionGroup="PositionInterval" type="regionFileType"> <xs:annotation> <xs:documentation>A region as defined in a FITS region file</xs:documentation> </xs:annotation> </xs:element> <xs:element name="VelocitySphere" nillable="true" substitutionGroup="VelocityInterval" type="velocitySphereType"> <xs:annotation> <xs:documentation> Defines a sphere (3-D) region for velocity coordinates; contains a center position and a radius </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation>Contains a 1-D spectral interval</xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> Contains a 1-D redshift interval; position and time units are required if redshifts are expressed as Doppler velocities </xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Generalized coordinate area type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence maxOccurs="unbounded" minOccurs="0"> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Pixel area type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence maxOccurs="unbounded" minOccurs="0"> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Astronomical area type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:element maxOccurs="unbounded" minOccurs="0" name="TimeInterval" nillable="true" type="timeIntervalType"/> <xs:element maxOccurs="unbounded" minOccurs="0" name="SpectralInterval" nillable="true" type="spectralIntervalType"/> <xs:element maxOccurs="unbounded" minOccurs="0" name="RedshiftInterval" nillable="true" type="redshiftIntervalType"/> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> General coordinate area description; head element but not abstract </xs:documentation> </xs:annotation> </xs:element> <xs:element name="AstroCoordArea" nillable="true" substitutionGroup="CoordArea" type="astroCoordAreaType"> <xs:annotation> <xs:documentation>Astronomical coordinate volume</xs:documentation> </xs:annotation> </xs:element> <xs:element name="PixelCoordArea" nillable="true" substitutionGroup="CoordArea" type="pixelCoordAreaType"> <xs:annotation> <xs:documentation>Pixel space bounds</xs:documentation> </xs:annotation> </xs:element> <!-- Toplevel: STCmetadata contains a choice of: ResourceProfile, SearchLocation, CatalogEntryLocation, and ObservationLocation plus ObservatoryLocation elements --> <xs:annotation> <xs:documentation>Abstract stcMetadata type</xs:documentation> </xs:annotation> <xs:complexContent> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Generalized single stcMetadata type</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> Type for generic astronomical STC metadata, in particular Resource Profile, Search Location, Catalog Entry. </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:sequence maxOccurs="unbounded" minOccurs="0"> <xs:annotation> <xs:documentation> The coordinate system definition: spatial coordinate frame and reference position; time frame and reference position; the coordinate flavor; and the planetary ephemeris; an ID is required, since this is how coordinate elements are associated with their coordinate systems </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> <xs:sequence maxOccurs="unbounded" minOccurs="0"> <xs:annotation> <xs:documentation> AstroCoords contains information on time and spatial locations, resolution, errors, and pixelsizes (if fixed); typical best numbers are expected </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> <xs:sequence maxOccurs="unbounded" minOccurs="0"> <xs:annotation> <xs:documentation> The coverage area of the data; the fill factor does not need to be 1.0 </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:sequence> </xs:restriction> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Type for observational STC metadata</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:annotation> <xs:documentation> Describes the spatial and temporal volume covered by an observation </xs:documentation> </xs:annotation> <xs:annotation> <xs:documentation> Specifies the location of the observatory during the observation </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Describes the spatial and temporal coverage of the observation </xs:documentation> </xs:annotation> </xs:element> <xs:annotation> <xs:documentation> Defines the pixel coordinate system for pixelated data </xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Type for an observatory location</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:sequence maxOccurs="unbounded" minOccurs="0"> </xs:sequence> <xs:sequence maxOccurs="unbounded" minOccurs="0"> </xs:sequence> </xs:sequence> </xs:restriction> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Type to specify a pixel space</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <xs:sequence maxOccurs="unbounded" minOccurs="0"> </xs:sequence> </xs:sequence> </xs:restriction> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation> Toplevel: Abstract STCmetadata contains a choice of: ResourceProfile, SearchLocation, CatalogEntryLocation, or ObservationLocation plus ObservatoryLocation elements </xs:documentation> </xs:annotation> </xs:element> <xs:element name="STCDescription" nillable="true" substitutionGroup="STCmetadata" type="astroSTCDescriptionType"> <xs:annotation> <xs:documentation>A generic STC metadata description</xs:documentation> </xs:annotation> </xs:element> <xs:element name="STCResourceProfile" nillable="true" substitutionGroup="STCmetadata" type="astroSTCDescriptionType"> <xs:annotation> <xs:documentation> Describes the spatial and temporal coverage of a resource </xs:documentation> </xs:annotation> </xs:element> <xs:element name="SearchLocation" nillable="true" substitutionGroup="STCmetadata" type="astroSTCDescriptionType"> <xs:annotation> <xs:documentation> Defines the spatial and temporal coordinate space specified by a query </xs:documentation> </xs:annotation> </xs:element> <xs:element name="CatalogEntryLocation" nillable="true" substitutionGroup="STCmetadata" type="astroSTCDescriptionType"> <xs:annotation> <xs:documentation> Describes the spatial and temporal coverage of a catalog (fragment) and contains the coordinates of the catalog entries; multiple coordinate systems are allowed </xs:documentation> </xs:annotation> </xs:element> <xs:element name="ObsDataLocation" nillable="true" substitutionGroup="STCmetadata" type="obsDataLocationType"> <xs:annotation> <xs:documentation> Describes the coordinate system used in and coordinate space occupied by a particular observational dataset; it contains an observation location, an observatory location, and optionally a pixel coordinate system </xs:documentation> </xs:annotation> </xs:element> <!--Following are application level types and associated global elements. Using the complexTypes, one can insert a stand-alone STC structure in an document as follows. First, incorporated in a schema, declare the namespace and give the schema location: <xs:schema xmlns="http://www.ivoa.net/xml/VOEvent/v1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:stc="http://www.ivoa.net/xml/STC/stc-v1.30.xsd" targetNamespace="http://www.ivoa.net/xml/VOEvent/v1.0" elementFormDefault="qualified"> <xs:import namespace="http://www.ivoa.net/xml/STC/stc-v1.30.xsd" schemaLocation="http://vo.ari.uni-heidelberg.de/docs/schemata/stc.xsd"/> Then include an STC element in the schema: <xs:element name="WhereWhen"> <xs:complexType> <xs:all> <xs:element ref="ObsDataLocation" minOccurs="0"/> </xs:all> </xs:complexType> </xs:element> </xs:schema> In an instance document: <?xml version="1.0" encoding="UTF-8"?> <VOEvent id="ivo://raptor.lanl/VOEvent#235649409" role="observation" version="1.0" xmlns="http://www.ivoa.net/xml/VOEvent/v1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > <WhereWhen> <ObsDataLocation xmlns="http://www.ivoa.net/xml/STC/stc-v1.30.xsd" xmlns:xlink="http://www.w3.org/1999/xlink" http://hea-www.harvard.edu/~arots/nvometa/v1.30/stc-v1.30.xsd"> <ObservatoryLocation id="KPNO" xlink:type="simple" xlink:href="ivo://STClib/Observatories#KPNO"/> <ObservationLocation> <AstroCoordSystem id="FK5-UTC-TOPO" xlink:type="simple" xlink:href="ivo://STClib/CoordSys#TT-ICRS-TOPO"/> <AstroCoords coord_system_id="FK5-UTC-TOPO"> <Time unit="s"> <TimeInstant> <ISOTime>2005-04-15T23:59:59</ISOTime> </TimeInstant> <Error>1.0</Error> </Time> <Position2D unit="deg"> <Value2> <C1>148.88821</C1> <C2>69.06529</C2> </Value2> <Error2Radius>0.03</Error2Radius> </Position2D> </AstroCoords> </ObservationLocation> </ObsDataLocation> </WhereWhen> </VOEvent> Or, alternatively, using a single STC type to generate a document: <?xml version="1.0" encoding="utf-8"?> <MySTC xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.ivoa.net/xml/STC/stc-v1.30.xsd" xmlns:xlink="http://www.w3.org/1999/xlink" xsi:type="stcXXXType"> ... </MySTC> Using the global elements works pretty much in the same way. --> <xs:annotation> <xs:documentation>Type for STC Coordinate</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Type for STC Coordinate List</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Type for STC Region</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> <xs:annotation> <xs:documentation>Type for STC Region list</xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> </xs:schema> |
This XML schema documentation has been generated with DocFlex/XML RE 1.8.0 using DocFlex/XML XSDDoc 2.2.0 template set. DocFlex/XML RE is a reduced edition of DocFlex/XML, which is a tool for programming and running highly sophisticated documentation and reports generators by the data obtained from any kind of XML files. The actual doc-generators are implemented in the form of special templates that are designed visually using a high quality Template Designer GUI basing on the XML schema (or DTD) files describing the data source XML. DocFlex/XML XSDDoc is a commercial template application of DocFlex/XML that implements a high-end XML Schema documentation generator with simultaneous support of framed multi-file HTML, single-file HTML and RTF output formats. (More formats are planned in the future). A commercial license for "DocFlex/XML XSDDoc" will allow you:
Once having only such a license, you will be able to run the fully-featured XML schema documentation generator both with DocFlex/XML SDK and with DocFlex/XML RE, which is a reduced free edition containing only the template interpretor / output generator. No other licenses will be required! But this is not all. In addition to it, a commercial license for DocFlex/XML SDK will allow you to modify the XSDDoc templates themselves as much as you want. You will be able to achieve whatever was impossible to do with the template parameters only. And, of course, you could develop any template applications by your own! Please note: By purchasing a license for this software, you not only acquire a useful tool, you will also make an important investment in its future development, the result of which you could enjoy later by yourself. Every single your purchase matters and makes a difference for us! To buy a license, please follow this link: http://www.filigris.com/shop/ |