<schema
xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://niem.gov/niem/external/ogc-observation/draft-0.14.5/swe/dhs-gmo/1.0.0"
xmlns:swe="http://niem.gov/niem/external/ogc-observation/draft-0.14.5/swe/dhs-gmo/1.0.0"
xmlns:gml="http://niem.gov/niem/external/ogc-gml/3.1.1/dhs-gmo/1.0.0"
elementFormDefault="qualified" attributeFormDefault="unqualified" version="pre-release">
<annotation>
<documentation>An explicit representation of the CV_DiscreteCoverage, interleaved model, from ISO 19123
All items are XML encoded
Copyright (c) 2006 Open Geospatial Consortium - see http://www.opengeospatial.org/about/?page=ipr
OGC 05-087r4 page 95 © OGC 2006 – All rights reserved
DHS Changes:
2006-09-28 Changed namespaces and schema location
ns old http://niem.gov/niem/external/gml/3.1.1/dhs-gmo/1.0.0
ns new http://niem.gov/niem/external/ogc-gml/3.1.1/dhs-gmo/1.0.0
from ../../../../../gml/3.1.1/dhs-gmo/1.0.0/gml.xsd
to ../../../../../ogc-gml/3.1.1/dhs-gmo/1.0.0/gml.xsd
2006-09-22 Changed namespaces following NIEM conventions
1) targetnamespace http://niem.gov/niem/external/ogc-observation/draft-0.14.5/swe/dhs-gmo/1.0.0
2) gml namespace http://niem.gov/niem/external/gml/3.1.1/dhs-gmo/1.0.0
2006-09-18 versioned namespace, versioned GML namespace, GML schemaLocation
</documentation>
</annotation>
<!-- ============== -->
<!--<import namespace="http://www.opengis.net/gml" schemaLocation="http://schemas.opengis.net/gml/3.1.1/base/gml.xsd"/> -->
<import namespace="http://niem.gov/niem/external/ogc-gml/3.1.1/dhs-gmo/1.0.0"
schemaLocation="../../../../../ogc-gml/3.1.1/dhs-gmo/1.0.0/gml.xsd"/>
<!-- ============== -->
<!-- ============== -->
<complexType name="CV_DomainObjectType">
<sequence>
<element name="spatialElement" minOccurs="0" maxOccurs="unbounded" type="gml:GeometryPropertyType"/>
<element name="temporalElement" minOccurs="0" maxOccurs="unbounded" type="gml:TimeGeometricPrimitivePropertyType"/>
</sequence>
</complexType>
<!-- ............... -->
<element name="CV_DomainObject" type="swe:CV_DomainObjectType"/>
<!-- ............... -->
<complexType name="CV_DomainObjectPropertyType">
<sequence minOccurs="0">
<element ref="swe:CV_DomainObject"/>
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup"/>
</complexType>
<!-- ============== -->
<!-- ============== -->
<!-- === Implementations of CV_GeometryValuePair and specializations === -->
<!-- ============== -->
<complexType name="CV_AbstractGeometryValuePairType">
<!--
<sequence>
<element name="geometry"/>
<element name="value"/>
</sequence>
-->
</complexType>
<!-- ........... -->
<element name="CV_AbstractGeometryValuePair" type="swe:CV_AbstractGeometryValuePairType" abstract="true">
<annotation>
<documentation>Abstract head of substitution group
- concrete types derived from this must add geometry and value properties of a suitable
type</documentation>
</annotation>
</element>
<!-- ........... -->
<complexType name="CV_AbstractGeometryValuePairPropertyType">
<sequence>
<element ref="swe:CV_AbstractGeometryValuePair"/>
</sequence>
</complexType>
<!-- ============== -->
<element name="CV_GeometryValuePair" type="swe:CV_GeometryValuePairType" substitutionGroup="swe:CV_AbstractGeometryValuePair">
<annotation>
<documentation>Implementation of CV_GeometryValuePair from ISO 19123 - this is the most general
case, and is a literal encoding of the model.
It is implemented as a sibling of specialized versions because of XML Schema derivation by restriction
gotchas.</documentation>
</annotation>
</element>
<!-- ........... -->
<complexType name="CV_GeometryValuePairType">
<complexContent>
<extension base="swe:CV_AbstractGeometryValuePairType">
<sequence>
<element name="geometry" type="swe:CV_DomainObjectPropertyType"/>
<element name="value" type="anyType">
<annotation>
<documentation>Select type from
(a) observation result simple types - gml:MeasureType, swe:RelativeMeasureType,
swe:ScopedNameType, integer, boolean
(b) swe:RecordPropertyType</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- ........... -->
<complexType name="CV_GeometryValuePairPropertyType">
<sequence>
<element ref="swe:CV_GeometryValuePair"/>
</sequence>
</complexType>
<!-- ============== -->
<complexType name="CV_PointValuePairType">
<complexContent>
<extension base="swe:CV_AbstractGeometryValuePairType">
<sequence>
<element name="geometry" type="gml:PointPropertyType"/>
<element name="value" type="anyType">
<annotation>
<documentation>Select type from
(a) observation result simple types - gml:MeasureType, swe:RelativeMeasureType,
swe:ScopedNameType, integer, boolean
(b) swe:RecordPropertyType</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- ........... -->
<element name="CV_PointValuePair" type="swe:CV_PointValuePairType" substitutionGroup="swe:CV_AbstractGeometryValuePair">
<annotation>
<documentation>Implementation of CV_PointValuePair from ISO 19123</documentation>
</annotation>
</element>
<!-- ........... -->
<complexType name="CV_PointValuePairPropertyType">
<sequence>
<element ref="swe:CV_PointValuePair"/>
</sequence>
</complexType>
<!-- ============== -->
<complexType name="CV_TimeInstantValuePairType">
<complexContent>
<extension base="swe:CV_AbstractGeometryValuePairType">
<sequence>
<element name="geometry" type="gml:TimeInstantPropertyType"/>
<element name="value" type="anyType">
<annotation>
<documentation>Select type from
(a) observation result simple types - gml:MeasureType, swe:RelativeMeasureType,
swe:ScopedNameType, integer, boolean
(b) swe:RecordPropertyType</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- ........... -->
<element name="CV_TimeInstantValuePair" type="swe:CV_TimeInstantValuePairType" substitutionGroup="swe:CV_AbstractGeometryValuePair">
<annotation>
<documentation>Specialization of CV_GeometryValuePair from ISO 19123</documentation>
</annotation>
</element>
<!-- ........... -->
<complexType name="CV_TimeInstantValuePairPropertyType">
<sequence>
<element ref="swe:CV_TimeInstantValuePair"/>
</sequence>
</complexType>
<!-- ============== -->
<complexType name="CV_ElementValuePairType">
<complexContent>
<extension base="swe:CV_AbstractGeometryValuePairType">
<sequence>
<element name="geometry" type="gml:ReferenceType"/>
<element name="value" type="anyType">
<annotation>
<documentation>Select type from
(a) observation result simple types - gml:MeasureType, swe:RelativeMeasureType,
swe:ScopedNameType, integer, boolean
(b) swe:RecordPropertyType</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- ........... -->
<element name="CV_ElementValuePair" type="swe:CV_ElementValuePairType" substitutionGroup="swe:CV_AbstractGeometryValuePair">
<annotation>
<documentation>Specialization of CV_GeometryValuePair from ISO 19123</documentation>
</annotation>
</element>
<!-- ........... -->
<complexType name="CV_ElementValuePairPropertyType">
<sequence>
<element ref="swe:CV_ElementValuePair"/>
</sequence>
</complexType>
<!-- ============== -->
<!-- === Implementations of CV_DiscreteCoverage and specializations === -->
<!-- ============== -->
<complexType name="CV_AbstractDiscreteCoverageType">
<annotation>
<documentation>Concrete descendants must add an "element" property.</documentation>
</annotation>
<sequence>
<!--
<element name="element" type="swe:CV_AbstractGeometryValuePairPropertyType"
maxOccurs="unbounded"/>
-->
</sequence>
</complexType>
<!-- ........... -->
<element name="CV_AbstractDiscreteCoverage" type="swe:CV_AbstractDiscreteCoverageType" abstract="true">
<annotation>
<documentation>An implementation of CV_DiscreteCoverage from ISO 19123</documentation>
</annotation>
</element>
<!-- ........... -->
<complexType name="CV_AbstractDiscreteCoveragePropertyType">
<sequence>
<element ref="swe:CV_AbstractDiscreteCoverage"/>
</sequence>
</complexType>
<!-- ============== -->
<complexType name="CV_DiscreteCoverageType">
<complexContent>
<extension base="swe:CV_AbstractDiscreteCoverageType">
<sequence>
<element name="element" type="swe:CV_GeometryValuePairPropertyType" maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- ........... -->
<element name="CV_DiscreteCoverage" type="swe:CV_DiscreteCoverageType" substitutionGroup="swe:CV_AbstractDiscreteCoverage">
<annotation>
<documentation>An implementation of CV_DiscreteCoverage from ISO 19123</documentation>
</annotation>
</element>
<!-- ........... -->
<complexType name="CV_DiscreteCoveragePropertyType">
<sequence>
<element ref="swe:CV_DiscreteCoverage"/>
</sequence>
</complexType>
<!-- ============== -->
<complexType name="CV_DiscretePointCoverageType">
<complexContent>
<extension base="swe:CV_AbstractDiscreteCoverageType">
<sequence>
<element name="element" type="swe:CV_PointValuePairPropertyType" maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- ........... -->
<element name="CV_DiscretePointCoverage" type="swe:CV_DiscretePointCoverageType" substitutionGroup="swe:CV_AbstractDiscreteCoverage">
<annotation>
<documentation>An implementation of CV_DiscretePointCoverage from ISO 19123</documentation>
</annotation>
</element>
<!-- ........... -->
<complexType name="CV_DiscretePointCoveragePropertyType">
<sequence>
<element ref="swe:CV_DiscretePointCoverage"/>
</sequence>
</complexType>
<!-- ============== -->
<complexType name="CV_DiscreteTimeInstantCoverageType">
<complexContent>
<extension base="swe:CV_AbstractDiscreteCoverageType">
<sequence>
<element name="element" type="swe:CV_TimeInstantValuePairPropertyType" maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- ........... -->
<element name="CV_DiscreteTimeInstantCoverage" type="swe:CV_DiscreteTimeInstantCoverageType" substitutionGroup="swe:CV_AbstractDiscreteCoverage">
<annotation>
<documentation>An implementation of CV_DiscreteTimeInstantCoverage</documentation>
</annotation>
</element>
<!-- ........... -->
<complexType name="CV_DiscreteTimeInstantCoveragePropertyType">
<sequence>
<element ref="swe:CV_DiscreteTimeInstantCoverage"/>
</sequence>
</complexType>
<!-- ============== -->
<complexType name="CV_DiscreteElementCoverageType">
<complexContent>
<extension base="swe:CV_AbstractDiscreteCoverageType">
<sequence>
<element name="element" type="swe:CV_ElementValuePairPropertyType" maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- ........... -->
<element name="CV_DiscreteElementCoverage" type="swe:CV_DiscreteElementCoverageType" substitutionGroup="swe:CV_AbstractDiscreteCoverage">
<annotation>
<documentation>An implementation of CV_DiscreteElementCoverage</documentation>
</annotation>
</element>
<!-- ........... -->
<complexType name="CV_DiscreteElementCoveragePropertyType">
<sequence>
<element ref="swe:CV_DiscreteElementCoverage"/>
</sequence>
</complexType>
<!-- ============== -->
<!-- ============== -->
<!-- ============== -->
<complexType name="CompactDomainObjectType">
<sequence>
<element name="spatialElement" minOccurs="0" maxOccurs="unbounded" type="gml:DirectPositionType"/>
<element name="temporalElement" minOccurs="0" maxOccurs="unbounded" type="gml:TimePositionType"/>
</sequence>
</complexType>
<!-- ............... -->
<element name="CompactDomainObject" type="swe:CompactDomainObjectType"/>
<!-- ............... -->
<complexType name="CompactDomainObjectPropertyType">
<sequence minOccurs="0">
<element ref="swe:CompactDomainObject"/>
</sequence>
<attributeGroup ref="gml:AssociationAttributeGroup"/>
</complexType>
<!-- ============== -->
<!-- ============== -->
<element name="CompactGeometryValuePair" type="swe:CompactGeometryValuePairType" substitutionGroup="swe:CV_AbstractGeometryValuePair">
<annotation>
<documentation>Compact implementation of CompactGeometryValuePair from ISO 19123.
It is implemented as a sibling of specialized versions because of XML Schema derivation by restriction
gotchas.</documentation>
</annotation>
</element>
<!-- ........... -->
<complexType name="CompactGeometryValuePairType">
<complexContent>
<extension base="swe:CV_AbstractGeometryValuePairType">
<sequence>
<element name="geometry" type="swe:CompactDomainObjectPropertyType"/>
<element name="value" type="anyType">
<annotation>
<documentation>Select type from
(a) observation result simple types - gml:MeasureType, swe:RelativeMeasureType,
swe:ScopedNameType, integer, boolean
(b) swe:RecordPropertyType</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- ........... -->
<complexType name="CompactGeometryValuePairPropertyType">
<sequence>
<element ref="swe:CompactGeometryValuePair"/>
</sequence>
</complexType>
<!-- ============== -->
<complexType name="CompactPointValuePairType">
<complexContent>
<extension base="swe:CV_AbstractGeometryValuePairType">
<sequence>
<element name="geometry" type="gml:DirectPositionType"/>
<element name="value" type="anyType">
<annotation>
<documentation>Select type from
(a) observation result simple types - gml:MeasureType, swe:RelativeMeasureType,
swe:ScopedNameType, integer, boolean
(b) swe:RecordPropertyType</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- ........... -->
<element name="CompactPointValuePair" type="swe:CompactPointValuePairType" substitutionGroup="swe:CV_AbstractGeometryValuePair">
<annotation>
<documentation>Implementation of CompactPointValuePair from ISO 19123</documentation>
</annotation>
</element>
<!-- ........... -->
<complexType name="CompactPointValuePairPropertyType">
<sequence>
<element ref="swe:CompactPointValuePair"/>
</sequence>
</complexType>
<!-- ============== -->
<complexType name="CompactTimeValuePairType">
<complexContent>
<extension base="swe:CV_AbstractGeometryValuePairType">
<sequence>
<element name="geometry" type="gml:TimePositionType"/>
<element name="value" type="anyType">
<annotation>
<documentation>Select type from
(a) observation result simple types - gml:MeasureType, swe:RelativeMeasureType,
swe:ScopedNameType, integer, boolean
(b) swe:RecordPropertyType</documentation>
</annotation>
</element>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- ........... -->
<element name="CompactTimeValuePair" type="swe:CompactTimeValuePairType" substitutionGroup="swe:CV_AbstractGeometryValuePair">
<annotation>
<documentation>Specialization of CompactGeometryValuePair from ISO 19123</documentation>
</annotation>
</element>
<!-- ........... -->
<complexType name="CompactTimeValuePairPropertyType">
<sequence>
<element ref="swe:CompactTimeValuePair"/>
</sequence>
</complexType>
<!-- ============== -->
<!-- ============== -->
<!-- ============== -->
<complexType name="CompactDiscreteCoverageType">
<complexContent>
<extension base="swe:CV_AbstractDiscreteCoverageType">
<sequence>
<element name="element" type="swe:CompactGeometryValuePairPropertyType" maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- ........... -->
<element name="CompactDiscreteCoverage" type="swe:CompactDiscreteCoverageType" substitutionGroup="swe:CV_AbstractDiscreteCoverage">
<annotation>
<documentation>An implementation of CompactDiscreteCoverage from ISO 19123</documentation>
</annotation>
</element>
<!-- ........... -->
<complexType name="CompactDiscreteCoveragePropertyType">
<sequence>
<element ref="swe:CompactDiscreteCoverage"/>
</sequence>
</complexType>
<!-- ============== -->
<complexType name="CompactDiscretePointCoverageType">
<complexContent>
<extension base="swe:CV_AbstractDiscreteCoverageType">
<sequence>
<element name="element" type="swe:CompactPointValuePairPropertyType" maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- ........... -->
<element name="CompactDiscretePointCoverage" type="swe:CompactDiscretePointCoverageType" substitutionGroup="swe:CV_AbstractDiscreteCoverage">
<annotation>
<documentation>An implementation of CompactDiscretePointCoverage from ISO
19123</documentation>
</annotation>
</element>
<!-- ........... -->
<complexType name="CompactDiscretePointCoveragePropertyType">
<sequence>
<element ref="swe:CompactDiscretePointCoverage"/>
</sequence>
</complexType>
<!-- ============== -->
<complexType name="CompactDiscreteTimeCoverageType">
<complexContent>
<extension base="swe:CV_AbstractDiscreteCoverageType">
<sequence>
<element name="element" type="swe:CompactTimeValuePairPropertyType" maxOccurs="unbounded"/>
</sequence>
</extension>
</complexContent>
</complexType>
<!-- ........... -->
<element name="CompactDiscreteTimeCoverage" type="swe:CompactDiscreteTimeCoverageType" substitutionGroup="swe:CV_AbstractDiscreteCoverage">
<annotation>
<documentation>An implementation of CompactDiscreteTimeInstantCoverage</documentation>
</annotation>
</element>
<!-- ........... -->
<complexType name="CompactDiscreteTimeCoveragePropertyType">
<sequence>
<element ref="swe:CompactDiscreteTimeCoverage"/>
</sequence>
</complexType>
<!-- ============== -->
</schema>
|