<?xml version="1.0" encoding="UTF-8"?> <!-- edited with XMLSpy v2005 sp2 U (http://www.altova.com) by Arnold Rots (Smithsonian Observatory) --> <!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by Arnold Rots (Smithsonian Observatory) --> <!-- $Id: region.xsd,v 2.5 2005/02/25 19:30:24 arots Exp arots $ --> <!-- Schema Definition for Regions --> <!--Change Log: $Log: region.xsd,v $ Revision 2.5 2005/02/25 19:30:24 arots Added Box shape Require Polygon sides to be <180 deg; explanation on what's in and what's out Position angle is now an element, properly typed in coords.xsd This affectes Ellipse and Sector Revision 2.4 2005/01/05 14:22:11 arots Release Version 1.10 Added AllSky Revision 2.3 2004/07/23 21:17:50 arots Modified ivoa schema locations; changed URN from nvo- to vo- Revision 2.2 2004/07/16 22:37:53 arots Release version v1.0. revision 2.1 date: 2004/07/07 16:16:22; author: arots; state: Exp; lines: +78 -7 Completed conversion to substitution groups. This version is ready for review. revision 2.0 date: 2004/05/21 21:10:41; author: arots; state: Exp; lines: +8 -8 Reworking with substitution groups and generalized CoordSys & Coords. revision 1.9 date: 2004/03/31 21:20:30; author: arots; state: Exp; lines: +13 -9 changed choice groups to substitution groups. revision 1.8 date: 2003/05/15 10:04:23; author: arots; state: Exp; lines: +0 -0 Comment fixup revision 1.7 date: 2003/05/02 19:01:37; author: arots; state: Exp; lines: +21 -4 Added annotation. revision 1.6 date: 2003/04/30 13:27:12; author: arots; state: Exp; lines: +16 -2 Fixed up change log, changed schema locations. revision 1.5 date: 2003/04/29 20:56:40; author: arots; state: Exp; lines: +11 -8 Completed new astronTimeType and proper handling of units. revision 1.4 date: 2003/04/28 16:25:34; author: arots; state: Exp; lines: +141 -56 Reworking of region.xsd based on discussions with Wil and Alex. revision 1.3 date: 2003/04/17 19:05:41; author: arots; state: Exp; lines: +120 -86 Major re-write: Use of substitution groups Inclusion of convexes cs. revision 1.2 date: 2002/07/11 11:44:01; author: arots; state: Exp; lines: +4 -4 Corrected smallcircle vertex. revision 1.1 date: 2002/07/11 08:58:25; author: arots; state: Exp; Initial revision --> <xs:schema elementFormDefault="qualified" targetNamespace="http://www.ivoa.net/xml/STC/STCregion/v1.20" xmlns:crd="http://www.ivoa.net/xml/STC/STCcoords/v1.20" xmlns:reg="http://www.ivoa.net/xml/STC/STCregion/v1.20" xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:import namespace="http://www.ivoa.net/xml/STC/STCcoords/v1.20" schemaLocation="http://docs.g-vo.org/schemata/stc-v1.20.xsd"/> <!--Coords and CoordSystem are needed from STC (coords.xsd)--> <!--Shape definitions; Allsky, Circle, Polygon, Box, and Sector are derived from Shape; Ellipse is derived from Circle; Polygon includes also Vertex and SmallCircle--> <xs:annotation> <xs:documentation>Region is the base type for everything</xs:documentation> </xs:annotation> <xs:annotation> <xs:documentation>Abstract region type</xs:documentation> </xs:annotation> <xs:annotation> <xs:documentation> The fill_factor (value between 0 and 1) indicates the fraction of the region that is actually included; possible application: large scale resource coverage areas </xs:documentation> </xs:annotation> <xs:simpleType> <xs:minInclusive value="0.0"/> <xs:maxInclusive value="1.0"/> </xs:restriction> </xs:simpleType> </xs:attribute> </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:annotation> <xs:documentation>Abstract Shape type</xs:documentation> </xs:annotation> <xs:complexContent> </xs:extension> </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: adds semi-minor axis and position angle to circleType </xs:documentation> </xs:annotation> <xs:complexContent> <xs:sequence> <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 encircled area is enclosed; sides should span less than 180 deg in each coordinate if spherical </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: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:simpleType> <xs:minInclusive value="-1.0"/> <xs:maxInclusive value="1.0"/> </xs:restriction> </xs:simpleType> </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</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> <!-- 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</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> <!--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 substitutino group for concrete implementations </xs:documentation> </xs:annotation> </xs:element> </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/ |