10
Copyright © 2008 OGC – All rights reserved
sch:rule sch:pattern
appinfo documentation
Specialized Observation, in which the result is a geometry documentation
annotation element
-- ====================================================================== -- element
name= TemporalObservation
type= om:ObservationType
substitutionGroup= om:Observation
annotation appinfo
sch:pattern name=
result must contain a gml:_TimeObject and nothing else sch:rule
context= omx:TemporalObservation
assert test=
om:resultxsi:type=gml:TimePrimitivePropertyType xsi:Type of the result element must
be gml:TimePrimitivePropertyType assert
sch:assert test=
countom:result = 1 one and only one child element must be present
sch:assert sch:rule
sch:pattern appinfo
documentation Specialized Observation, in which the result is a temporal object
documentation annotation
element -- ====================================================================== --
-- ===== Observation with constant complex result ====== -- -- ====================================================================== --
element name=
ComplexObservation type=
om:ObservationType substitutionGroup=
om:Observation annotation
appinfo sch:pattern
name= result must contain a swe:Record and nothing else
sch:rule context=
omx:ComplexObservation sch:assert
test= om:resultswe:DataRecord
swe:DataRecord must be present as child of om:result
sch:assert sch:assert
test= countom:result = 1
one and only one child element must be present sch:assert
sch:rule sch:pattern
appinfo documentation
Specialized Observation, in which the result is a record representing a multi-component phenomenon
documentation annotation
element -- ====================================================================== --
schema
3.4 Coverage observation types
Listing 4 and Listing 5 implement the specialized observation types with coverage results described in 6.3.3.3 and Figure 3. The Observation result is constrained to be from the
Discrete Coverages schema OGC 06-188r1.
Listing 4. observationCoverage.xsd
?xml version=1.0 encoding=UTF-8? schema
xmlns= http:www.w3.org2001XMLSchema
xmlns:sch= http:purl.oclc.orgdsdlschematron
xmlns:xlink= http:www.w3.org1999xlink
xmlns:om= http:www.opengis.netom1.0
xmlns:omx= http:www.opengis.netomx1.0
xmlns:cv= http:www.opengis.netcv0.2.1
targetNamespace= http:www.opengis.netomx1.0
elementFormDefault= qualified
attributeFormDefault= unqualified
version= 1.0.0
annotation appinfo
source= urn:ogc:specification:om:doc-is07-022r3:1.0.0
sch:title Schematron validation
sch:title sch:ns
prefix= omx
uri= http:www.opengis.netomx1.0
sch:ns prefix=
om uri=
http:www.opengis.netom1.0 sch:ns
prefix= cv
uri= http:www.opengis.netcv0.2.1
appinfo documentation
observationCoverage.xsd An implementation of the OandM model for SWE
This document contains specializations of the basic observation pattern, fixing the type of the result to be various discrete
Copyright © 2007 OGC – All rights reserved
11
documentation annotation
-- ====================================================================== -- -- bring in other schemas --
import namespace=
http:www.opengis.netcv0.2.1 schemaLocation=
http:bp.schemas.opengis.net06- 188r1cv0.2.1cv.xsd
import namespace=
http:www.opengis.netom1.0 schemaLocation=
http:schemas.opengis.netom1.0.0om.xsd -- ====================================================================== --
-- ====================================================================== -- -- ===== Coverage Observations = sampling a phenomenon that varies on the feature of interest ====== --
-- ====================================================================== -- -- ====================================================================== --
element name=
DiscreteCoverageObservation type=
om:ObservationType substitutionGroup=
om:Observation annotation
appinfo sch:pattern
name= result must contain a cv:CV_DiscreteCoverage and nothing else
sch:rule context=
omx:DiscreteCoverageObservation sch:assert
test= om:resultcv:CV_DiscreteCoverage
cv:CV_DiscreteCoverage must be present as child of om:result
sch:assert sch:assert
test= countom:result = 1
one and only one child element must be present sch:assert
sch:rule sch:pattern
appinfo documentation
Specialized Observation, in which the result is a generalized discrete coverage documentation
annotation element
-- ====================================================================== -- element
name= PointCoverageObservation
type= om:ObservationType
substitutionGroup= om:Observation
annotation appinfo
sch:pattern name=
result must contain a cv:CV_DiscretePointCoverage and nothing else sch:rule
context= omx:PointCoverageObservation
sch:assert test=
om:resultcv:CV_DiscretePointCoverage cv:CV_DiscretePointCoverage must be
present as child of om:result sch:assert
sch:assert test=
countom:result = 1 one and only one child element must be present
sch:assert sch:rule
sch:pattern appinfo
documentation Specialized Observation, in which the result is a point coverage which samples a property at
points in the feature of interest documentation
annotation element
-- ====================================================================== -- element
name= TimeSeriesObservation
type= om:ObservationType
substitutionGroup= om:Observation
annotation appinfo
sch:pattern name=
result must contain a cv:CV_DiscreteTimeInstantCoverage and nothing else sch:rule
context= omx:TimeSeriesObservation
sch:assert test=
om:resultcv:CV_DiscreteTimeInstantCoverage cv:CV_DiscreteTimeInstantCoverage
must be present as child of om:result sch:assert
sch:assert test=
countom:result = 1 one and only one child element must be present
sch:assert sch:rule
sch:pattern appinfo
documentation Specialized Observation, in which the result is a time-instant coverage which samples a property
of the feature of interest at different times documentation
annotation element
-- ====================================================================== -- element
name= ElementCoverageObservation
type= om:ObservationType
substitutionGroup= om:Observation
annotation appinfo
sch:pattern name=
result must contain a cv:CV_DiscreteElementCoverage and nothing else sch:rule
context= omx:ElementCoverageObservation
sch:assert test=
om:resultcv:CV_DiscreteElementCoverage cv:CV_DiscreteElementCoverage must be
present as child of om:result sch:assert
sch:assert test=
countom:result = 1 one and only one child element must be present
sch:assert sch:rule
sch:pattern appinfo
documentation Specialized Observation, in which the result is a coverage whose domain elements contain
references to objects encoded elsewhere, which provide the sampling geometry of the feature of
12
Copyright © 2008 OGC – All rights reserved
element -- ====================================================================== --
schema
Listing 5. observationCoverageCompact.xsd
?xml version=1.0 encoding=UTF-8? schema
xmlns= http:www.w3.org2001XMLSchema
xmlns:sch= http:purl.oclc.orgdsdlschematron
xmlns:om= http:www.opengis.netom1.0
xmlns:omx= http:www.opengis.netomx1.0
xmlns:cv= http:www.opengis.netcv0.2.1
targetNamespace= http:www.opengis.netomx1.0
elementFormDefault= qualified
attributeFormDefault= unqualified
version= 1.0.0
annotation appinfo
source= urn:ogc:specification:om:doc-is07-022r3:1.0.0
sch:title Schematron validation
sch:title sch:ns
prefix= omx
uri= http:www.opengis.netomx1.0
sch:ns prefix=
om uri=
http:www.opengis.netom1.0 sch:ns
prefix= cv
uri= http:www.opengis.netcv0.2.1
appinfo documentation
observationCoverageCompact.xsd An implementation of the OandM model for SWE
This document contains specializations of the basic observation pattern, fixing the type of the result to be various discrete coverage types compact version.
In this schema, the derivation model is restriction Copyright c 2007 Open Geospatial Consortium - see http:www.opengeospatial.orgogcsoftware
documentation annotation
-- ====================================================================== -- -- bring in other schemas --
import namespace=
http:www.opengis.netcv0.2.1 schemaLocation=
http:bp.schemas.opengis.net06- 188r1cv0.2.1cv.xsd
import namespace=
http:www.opengis.netom1.0 schemaLocation=
http:schemas.opengis.netom1.0.0om.xsd -- ====================================================================== --
-- ====================================================================== -- -- === Compact coverage observations = implement the geometry element in the result in compact form === --
-- ====================================================================== -- element
name= DiscreteCoverageObs
type= om:ObservationType
substitutionGroup= om:Observation
annotation appinfo
sch:pattern name=
result must contain a cv:CompactDiscreteCoverage and nothing else sch:rule
context= omx:DiscreteCoverageObs
sch:assert test=
om:resultcv:CompactDiscreteCoverage cv:CompactDiscreteCoverage must be present
as child of om:result sch:assert
sch:assert test=
countom:result = 1 one and only one child element must be present
sch:assert sch:rule
sch:pattern appinfo
documentation Specialized Observation, in which the result is a compact representation of a generalized
discrete coverage documentation
annotation element
-- ====================================================================== -- element
name= PointCoverageObs
type= om:ObservationType
substitutionGroup= om:Observation
annotation appinfo
sch:pattern name=
result must contain a cv:CompactDiscretePointCoverage and nothing else sch:rule
context= omx:PointCoverageObs
sch:assert test=
om:resultcv:CompactDiscretePointCoverage cv:CompactDiscretePointCoverage must
be present as child of om:result sch:assert
sch:assert test=
countom:result = 1 one and only one child element must be present
sch:assert sch:rule
sch:pattern appinfo
documentation Observation event
documentation
Copyright © 2007 OGC – All rights reserved
13
-- ====================================================================== -- element
name= TimeSeriesObs
type= om:ObservationType
substitutionGroup= om:Observation
annotation appinfo
sch:pattern name=
result must contain a cv:CompactDiscreteTimeCoverage and nothing else sch:rule
context= omx:TimeSeriesObs
sch:assert test=
om:resultcv:CompactDiscreteTimeCoverage cv:CompactDiscreteTimeCoverage must
be present as child of om:result sch:assert
sch:assert test=
countom:result = 1 one and only one child element must be present
sch:assert sch:rule
sch:pattern appinfo
documentation Specialized Observation, in which the result is a compact representation of a time-instant
coverage which samples a property of the feature of interest at different times documentation
annotation element
-- ====================================================================== -- schema
3.5 Observation processes