Appendix B: The Feature Schema, V2.06 (Normative)

 <?xml version="1.0" encoding="UTF-8"?> <!-- File: feature.xsd  --> <schema targetNamespace="http://www.opengis.net/gml"         xmlns:gml="http://www.opengis.net/gml"         xmlns="http://www.w3.org/2000/10/XMLSchema"         elementFormDefault="qualified"         version="2.06">   <annotation>     <appinfo>feature.xsd v2.06 2001-02</appinfo>     <documentation xml:lang="en">       GML Feature schema. Copyright (c) 2001 OGC, All Rights Reserved.     </documentation>   </annotation>   <!-- include constructs from the GML Geometry schema -->   <include schemaLocation="geometry.xsd"/>   <!-- ==============================================================        global declarations   =============================================================== -->   <element name="_Feature" type="gml:AbstractFeatureType" abstract=     "true"/>   <element name="_FeatureCollection" type=     "gml:AbstractFeatureCollectionType"     abstract="true" substitutionGroup="gml:_Feature"/>   <element name="featureMember" type="gml:FeatureAssociationType"/>   <!-- some basic geometric properties of features -->   <element name="_geometryProperty" type="gml:GeometryPropertyType"     abstract="true"/>   <element name="geometryProperty" type="gml:GeometryPropertyType" />   <element name="boundedBy" type="gml:BoundingShapeType"/>   <element name="pointProperty" type="gml:PointPropertyType"     substitutionGroup="gml:_geometryProperty"/>   <element name="polygonProperty" type="gml:PolygonPropertyType"     substitutionGroup="gml:_geometryProperty"/>   <element name="lineStringProperty" type="gml:LineStringPropertyType"     substitutionGroup="gml:_geometryProperty"/>   <element name="multiPointProperty" type="gml:MultiPointPropertyType"     substitutionGroup="gml:_geometryProperty"/>   <element name="multiLineStringProperty" type=     "gml:MultiLineStringPropertyType"     substitutionGroup="gml:_geometryProperty"/>   <element name="multiPolygonProperty" type=     "gml:MultiPolygonPropertyType"     substitutionGroup="gml:_geometryProperty"/>   <element name="multiGeometryProperty" type=     "gml:MultiGeometryPropertyType"     substitutionGroup="gml:_geometryProperty"/>   <!-- common aliases for geometry properties -->   <element name="location" type="gml:PointPropertyType"     substitutionGroup="gml:pointProperty"/>   <element name="centerOf" type="gml:PointPropertyType"     substitutionGroup="gml:pointProperty"/>   <element name="position" type="gml:PointPropertyType"     substitutionGroup="gml:pointProperty"/>   <element name="extentOf" type="gml:PolygonPropertyType"     substitutionGroup="gml:polygonProperty"/>   <element name="coverage" type="gml:PolygonPropertyType"     substitutionGroup="gml:polygonProperty"/>   <element name="edgeOf" type="gml:LineStringPropertyType"     substitutionGroup="gml:lineStringProperty"/>   <element name="centerLineOf" type="gml:LineStringPropertyType"     substitutionGroup="gml:lineStringProperty"/>   <element name="multiLocation" type="gml:MultiPointPropertyType"     substitutionGroup="gml:multiPointProperty"/>   <element name="multiCenterOf" type="gml:MultiPointPropertyType"     substitutionGroup="gml:multiPointProperty"/>   <element name="multiPosition" type="gml:MultiPointPropertyType"     substitutionGroup="gml:multiPointProperty"/>   <element name="multiCenterLineOf" type=     "gml:MultiLineStringPropertyType"     substitutionGroup="gml:multiLineStringProperty"/>   <element name="multiEdgeOf" type="gml:MultiLineStringPropertyType"     substitutionGroup="gml:multiLineStringProperty"/>   <element name="multiCoverage" type="gml:MultiPolygonPropertyType"     substitutionGroup="gml:multiPolygonProperty"/>   <element name="multiExtentOf" type="gml:MultiPolygonPropertyType"     substitutionGroup="gml:multiPolygonProperty"/>   <!-- common feature descriptors -->   <element name="description" type="string"/>   <element name="name" type="string"/>   <!-- ==============================================================        abstract supertypes   =============================================================== -->   <complexType name="AbstractFeatureType" abstract="true">     <annotation>       <documentation>         An abstract feature provides a set of common properties. A         concrete feature type must derive from this type and specify         additional properties in an application schema. A feature may         optionally possess an identifying attribute ('fid').       </documentation>     </annotation>     <sequence>       <element ref="gml:description" minOccurs="0"/>       <element ref="gml:name" minOccurs="0"/>       <element ref="gml:boundedBy" minOccurs="0"/>       <!-- additional properties must be specified in an application        schema -->     </sequence>     <attribute name="fid" type="ID" use="optional"/>   </complexType>   <complexType name="AbstractFeatureCollectionBaseType" abstract=     "true">     <annotation>       <documentation>         This abstract base type just makes the boundedBy element         mandatory for a feature collection.       </documentation>     </annotation>     <complexContent>       <restriction base="gml:AbstractFeatureType">         <sequence>           <element ref="gml:description" minOccurs="0"/>           <element ref="gml:name" minOccurs="0"/>           <element ref="gml:boundedBy"/>         </sequence>         <attribute name="fid" type="ID" use="optional"/>       </restriction>     </complexContent>   </complexType>   <complexType name="AbstractFeatureCollectionType" abstract="true">     <annotation>       <documentation>         A feature collection contains zero or more featureMember         elements.       </documentation>     </annotation>     <complexContent>       <extension base="gml:AbstractFeatureCollectionBaseType">         <sequence>           <element ref="gml:featureMember" minOccurs="0" maxOccurs=             "unbounded"/>         </sequence>       </extension>     </complexContent>   </complexType>   <complexType name="GeometryPropertyType">     <annotation>       <documentation>         A simple geometry property encapsulates a geometry element.         Alternatively, it can function as a pointer (simple-type link)         that refers to a remote geometry element.       </documentation>     </annotation>     <sequence minOccurs="0">       <element ref="gml:_Geometry"/>     </sequence>     <attributeGroup ref="gml:AssociationAttributeGroup"/>   </complexType>   <complexType name="FeatureAssociationType">     <annotation>       <documentation>         An instance of this type (e.g. a featureMember) can either         enclose or point to a feature (or feature collection); this         type can be restricted in an application schema to allow only         specified features as valid participants in the association.         When serving as a simple link that references a remote feature         instance, the value of the gml:remoteSchema attribute can be         used to locate a schema fragment that constrains the target         instance.       </documentation>     </annotation>     <sequence minOccurs="0">       <element ref="gml:_Feature"/>     </sequence>     <attributeGroup ref="gml:AssociationAttributeGroup"/>   </complexType>   <complexType name="BoundingShapeType">     <annotation>       <documentation>         Bounding shapes--a Box or a null element are currently allowed.       </documentation>     </annotation>     <sequence>       <choice>         <element ref="gml:Box"/>         <element name="null" type="gml:NullType" />       </choice>     </sequence>   </complexType>   <!-- ==============================================================        geometry properties   =============================================================== -->   <complexType name="PointPropertyType">     <annotation>       <documentation>         Encapsulates a single point to represent position, location, or         centerOf properties.       </documentation>     </annotation>     <complexContent>       <restriction base="gml:GeometryPropertyType">         <sequence minOccurs="0">           <element ref="gml:Point"/>         </sequence>         <attributeGroup ref="gml:AssociationAttributeGroup"/>       </restriction>     </complexContent>   </complexType>   <complexType name="PolygonPropertyType">     <annotation>       <documentation>         Encapsulates a single polygon to represent coverage or extentOf         properties.       </documentation>     </annotation>     <complexContent>       <restriction base="gml:GeometryPropertyType">         <sequence minOccurs="0">           <element ref="gml:Polygon"/>         </sequence>         <attributeGroup ref="gml:AssociationAttributeGroup"/>       </restriction>     </complexContent>   </complexType>   <complexType name="LineStringPropertyType">     <annotation>       <documentation>         Encapsulates a single LineString to represent centerLineOf or         edgeOf properties.       </documentation>     </annotation>     <complexContent>       <restriction base="gml:GeometryPropertyType">         <sequence minOccurs="0">           <element ref="gml:LineString"/>         </sequence>         <attributeGroup ref="gml:AssociationAttributeGroup"/>       </restriction>     </complexContent>   </complexType>   <complexType name="MultiPointPropertyType">     <annotation>       <documentation>         Encapsulates a MultiPoint element to represent the following         discontiguous geometric properties: multiLocation,         multiPosition, multiCenterOf.       </documentation>     </annotation>     <complexContent>       <restriction base="gml:GeometryPropertyType">         <sequence minOccurs="0">           <element ref="gml:MultiPoint"/>         </sequence>         <attributeGroup ref="gml:AssociationAttributeGroup"/>       </restriction>     </complexContent>   </complexType>   <complexType name="MultiLineStringPropertyType">     <annotation>       <documentation>         Encapsulates a MultiLineString element to represent the         following discontiguous geometric properties: multiEdgeOf,         multiCenterLineOf.       </documentation>     </annotation>     <complexContent>       <restriction base="gml:GeometryPropertyType">         <sequence minOccurs="0">           <element ref="gml:MultiLineString"/>         </sequence>         <attributeGroup ref="gml:AssociationAttributeGroup"/>       </restriction>     </complexContent>   </complexType>   <complexType name="MultiPolygonPropertyType">     <annotation>       <documentation>         Encapsulates a MultiPolygon to represent the following         discontiguous geometric properties: multiCoverage,         multiExtentOf.       </documentation>     </annotation>     <complexContent>       <restriction base="gml:GeometryPropertyType">         <sequence minOccurs="0">           <element ref="gml:MultiPolygon"/>         </sequence>         <attributeGroup ref="gml:AssociationAttributeGroup"/>       </restriction>     </complexContent>   </complexType>   <complexType name="MultiGeometryPropertyType">     <annotation>       <documentation>Encapsulates a MultiGeometry element.         </documentation>     </annotation>     <complexContent>       <restriction base="gml:GeometryPropertyType">         <sequence minOccurs="0">           <element ref="gml:MultiGeometry"/>         </sequence>         <attributeGroup ref="gml:AssociationAttributeGroup"/>       </restriction>     </complexContent>   </complexType>   <simpleType name="NullType">     <annotation>       <documentation>         If a bounding shape is not provided for a feature collection,         explain why. Allowable values are:         innapplicable - the features do not have geometry         unknown - the boundingBox cannot be computed         unavailable - there may be a boundingBox but it is not divulged         missing - there are no features       </documentation>     </annotation>     <restriction base="string">       <enumeration value="inapplicable"/>       <enumeration value="unknown"/>       <enumeration value="unavailable"/>       <enumeration value="missing"/>     </restriction>   </simpleType> </schema> 


Mobile Location Servies(c) The Definitive Guide
Software Project Management in Practice
ISBN: 0201737213
EAN: 2147483647
Year: 2005
Pages: 150
Authors: Pankaj Jalote

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net