License Agreement

Permission is hereby granted by the Open Geospatial Consortium, ("Licensor"), free of charge and subject to the terms set forth below, to any person obtaining a copy of this Intellectual Property and any associated documentation, to deal in the Intellectual Property without restriction (except as set forth below), including without limitation the rights to implement, use, copy, modify, merge, publish, distribute, and/or sublicense copies of the Intellectual Property, and to permit persons to whom the Intellectual Property is furnished to do so, provided that all copyright notices on the intellectual property are retained intact and that each person to whom the Intellectual Property is furnished agrees to the terms of this Agreement.

If you modify the Intellectual Property, all copies of the modified Intellectual Property must include, in addition to the above copyright notice, a notice that the Intellectual Property includes modifications that have not been approved or adopted by LICENSOR.

THIS LICENSE IS A COPYRIGHT LICENSE ONLY, AND DOES NOT CONVEY ANY RIGHTS UNDER ANY PATENTS THAT MAY BE IN FORCE ANYWHERE IN THE WORLD.

THE INTELLECTUAL PROPERTY IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE DO NOT WARRANT THAT THE FUNCTIONS CONTAINED IN THE INTELLECTUAL PROPERTY WILL MEET YOUR REQUIREMENTS OR THAT THE OPERATION OF THE INTELLECTUAL PROPERTY WILL BE UNINTERRUPTED OR ERROR FREE. ANY USE OF THE INTELLECTUAL PROPERTY SHALL BE MADE ENTIRELY AT THE USER’S OWN RISK. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR ANY CONTRIBUTOR OF INTELLECTUAL PROPERTY RIGHTS TO THE INTELLECTUAL PROPERTY BE LIABLE FOR ANY CLAIM, OR ANY DIRECT, SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM ANY ALLEGED INFRINGEMENT OR ANY LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR UNDER ANY OTHER LEGAL THEORY, ARISING OUT OF OR IN CONNECTION WITH THE IMPLEMENTATION, USE, COMMERCIALIZATION OR PERFORMANCE OF THIS INTELLECTUAL PROPERTY.

This license is effective until terminated. You may terminate it at any time by destroying the Intellectual Property together with all copies in any form. The license will also terminate if you fail to comply with any term or condition of this Agreement. Except as provided in the following sentence, no such termination of this license shall require the termination of any third party end-user sublicense to the Intellectual Property which is in force as of the date of notice of such termination. In addition, should the Intellectual Property, or the operation of the Intellectual Property, infringe, or in LICENSOR’s sole opinion be likely to infringe, any patent, copyright, trademark or other right of a third party, you agree that LICENSOR, in its sole discretion, may terminate this license without any compensation or liability to you, your licensees or any other party. You agree upon termination of any kind to destroy or cause to be destroyed the Intellectual Property together with all copies in any form, whether held by you or by any third party.

Except as contained in this notice, the name of LICENSOR or of any other holder of a copyright in all or part of the Intellectual Property shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Intellectual Property without prior written authorization of LICENSOR or such copyright holder. LICENSOR is and shall at all times be the sole entity that may authorize you or any third party to use certification marks, trademarks or other special designations to indicate compliance with any LICENSOR standards or specifications. This Agreement is governed by the laws of the Commonwealth of Massachusetts. The application to this Agreement of the United Nations Convention on Contracts for the International Sale of Goods is hereby expressly excluded. In the event any provision of this Agreement shall be deemed unenforceable, void or invalid, such provision shall be modified so as to make it valid and enforceable, and as so modified the entire Agreement shall remain in full force and effect. No decision, action or inaction by LICENSOR shall be construed to be a waiver of any rights or remedies available to it.


 

i. Abstract

This Best Practice describes how to configure XML documents for single and time series water quality measurements.  In addition to stating the rules for using the O&M and WML 2 standards, along with the appropriate content ontologies, this Best Practice provides guidance through examples. This document is intended to complement WaterML 2.0 as part of a suite of standards for water observation data.

ii. Keywords

The following are keywords to be used by search engines and document catalogues.

ogcdoc, observations, water, quality, time-series

iii. Preface

This paper has been adapted from a report prepared by CSIRO for the Bureau of Meteorology (BoM) as part of the Information Platform to support Bioregional Assessment of Australia’s major coal-bearing basins (IPBA) project (Simons & Cox, 2013).

Attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. The Open Geospatial Consortium shall not be held responsible for identifying any or all such patent rights.

Recipients of this document are requested to submit, with their comments, notification of any relevant patent claims or other intellectual property rights of which they may be aware that might be infringed by any implementation of the standard set forth in this document, and to provide supporting documentation.

iv. Submitting organizations

The following organizations submitted this Document to the Open Geospatial Consortium (OGC):

CSIRO Australia

v. Submitters

All questions regarding this submission should be directed to the editor or the submitters:

Name Representing OGC member

Simon J D Cox

CSIRO Land and Water, Melbourne, Victoria, Australia

Yes

Bruce A Simons

CSIRO Land and Water, Melbourne, Victoria, Australia

Yes

Scope

The purpose of this Best Practice is to describe how the Observations & Measurements and WaterML 2 standards are to be used to deliver Water Quality data.

The following items are considered out of scope for this report:

OMXML provides an O&M XML implementations of sampling feature types, such as SF_SamplingPoint (‘station’), SF_SamplingCurve (observation boreholes, trajectories, traverses), and SF_Specimen (physical samples), that are used frequently in water quality observations, and thus are likely to be useful when transferring datasets. However, at this time we do not consider it necessary to introduce specific requirements concerning the use of these types for water quality data.

Similarly, WML2 does not restrict the feature of interest to be only point-based sampling features. It does, however, identify that this is a common pattern for in-situ monitoring and captures this in the “monitoring point feature of interest” requirements class (Taylor, 2012).

Conformance

This Standard defines an XML implementation of models for describing water quality observations and time series. The implementation is described using the XML Schema language and Schematron.

Requirements for one standardization target type are considered:

i.e. XML documents that encode observation data for exchange. Since data producing applications should generate conformant data instances, the requirements and tests described in this standard effectively also apply to that standardization target.

Conformance with this standard shall be checked using all the relevant tests specified in Annex A (normative) of this document.

 

All requirements-classes and conformance-classes described in this document are owned by the standard(s) identified.

References

The following normative documents contain provisions that, through reference in this text, constitute provisions of this document. For dated references, subsequent amendments to, or revisions of, any of these publications do not apply. For undated references, the latest edition of the normative document referred to applies.

Atkinson, R. and Dornblut, I., 2012. HY_Features: a Common Hydrologic Feature Model. OGC Discussion Paper, OGC 11-039r2, Open Geospatial Consortium Inc.
Boisvert, E. and Brodaric, B., 2012. GroundWater Markup Language (GWML) – enabling groundwater data interoperability in spatial data infrastructures. Journal of Hydroinformatics, 14(1): 93.
Cox, S.J.D. (ed.), 2010a. Geographic Information: Observations and Measurements OGC Abstract Specification Topic 20. OGC 10-004r3 and ISO 19156:2011.
Cox, S.J.D. (ed.), 2010b. Observations and Measurements - XML Implementation. OGC 10-025r1. Open Geospatial Consortium Inc.
OGC Geography Markup Language v3.2 OGC Document 07-036 and ISO 19136:2007
Simons, B.A, Yu, J. and Cox, S.J.D., (2013) Water Quality vocabularies for Bioregional Assessments. Water for a Healthy Country Flagship Report series
Taylor, P. (ed.), 2012. OGC WaterML 2.0: Part 1- Timeseries. OGC 10-126r3 Open Geospatial Consortium Inc.


Terms and Definitions

This document uses the terms defined in Sub-clause 5.3 of [OGC 06-121r8], which is based on the ISO/IEC Directives, Part 2, Rules for the structure and drafting of International Standards. In particular, the word “shall” (not “must”) is the verb form used to indicate a requirement to be strictly followed to conform to this standard.

For the purposes of this document, the following additional terms and definitions apply.

4.1 element <XML>

basic information item of an XML document containing child elements, attributes and character data

NOTE   From the XML Information Set: ―Each XML document contains one or more elements, the boundaries of which are either delimited by start-tags and end-tags, or, for empty elements, by an empty-element tag. Each element has a type, identified by name, sometimes called its ‘generic identifier’ (GI), and may have a set of attribute specifications. Each attribute specification has a name and a value.

[ISO 19136:2007]

4.2 GML application schema

application schema written in XML Schema in accordance with the rules specified in ISO 19136:2007

[ISO 19136:2007]

4.3 GML document

XML document with a root element that is one of the elements AbstractFeature, Dictionary or TopoComplex specified in the GML schema or any element of a substitution group of any of these elements

[ISO 19136:2007]

4.4 GML schema

schema components in the XML namespace ―http://www.opengis.net/gml/3.2‖ as specified in ISO 19136:2007

[ISO 19136:2007]

4.5 measurement

set of operations having the object of determining the value of a quantity

[ISO/TS 19101-2:2008, definition 4.20]

4.6 observation

act of observing a property

NOTE   The goal of an observation may be to measure or otherwise determine the value of a property

[ISO 19156:2011]

4.7 observation result

estimate of the value of a property determined through a known procedure

[ISO 19156:2011]

4.8 sampled feature

the real-world domain feature of interest, such as a groundwater body, aquifer, river, lake, or sea, which the sampling feature makes observations concerning

[ISO 19156:2011]

4.9 sampling feature

feature, such as a station, transect, section or specimen, which is involved in making observations concerning a domain feature

NOTE   A sampling feature is purely an artefact of the observational strategy, and has no significance independent of the observational campaign.

[ISO 19156:2011]

4.10 schema <XML Schema>

collection of schema components within the same target namespace

EXAMPLE Schema components of W3C XML Schema are types, elements, attributes, groups, etc.

[ISO 19136:2007]

4.11 schema document <XML Schema>

XML document containing schema component definitions and declarations

NOTE   The W3C XML Schema provides an XML interchange format for schema information. A single schema document provides descriptions of components associated with a single XML namespace, but several documents may describe components in the same schema, i.e. the same target namespace.

[ISO 19136:2007]


Conventions

Requirements class

Each normative statement (requirement or recommendation) in this standard is a member of a requirements class. Each requirements class is described in a discrete clause or sub-clause, and summarized using the following template:

Requirements class /req/{classM}

Target type

[artefact or technology type]

Dependency

[identifier for another requirements class]

Requirement

/req/{classM}/{reqN}

Recommendation

/req/{classM}/{recO}

Requirement

/req/{classM}/{reqP}

Requirement /Recommendation

[repeat as necessary]

 

All requirements in a class must be satisfied. Hence, the requirements class is the unit of re-use and dependency, and the value of a Dependency requirement is another requirements class. All requirements in a dependency must also be satisfied by a conforming implementation. A requirements class may consist only of dependencies and introduce no new requirements.

Requirement

All requirements are normative, and each requirement is presented using the following template:

/req/[classM]/[reqN]

[Normative statement]

 

where /req/[classM]/[reqN] identifies the requirement or recommendation. The use of this layout convention allows the normative provisions of this Standard to be easily located by implementers.

Conformance class

Conformance to this Standard is possible at a number of levels, specified by conformance classes (Annex A). Each conformance class is summarized using the following template:

Conformance class /conf/{classM}

Dependency

[identifier for another conformance class]

Requirements

/req/{classA}

Tests

[reference to clause(s) containing tests]

 

All tests in a class must be passed, so dependencies are on other conformance classes. Each conformance class tests conformance to a set of requirements packaged in a requirements class.

Identifiers

Each requirements class, requirement and recommendation is identified by a URI. The identifier supports cross-referencing of class membership, dependencies, and links from each conformance test to requirements tested. In this standard identifiers are expressed as partial URIs or paths, which can be appended to a base URI that identifies the standard as a whole in order to construct a complete URI for identification in an external context

The URI for each requirements class has the form

http://www.opengis.net/spec/watermlwq/1.0/req/[classM]

The URI for each requirement or recommendation has the form

http://www.opengis.net/spec/watermlwq/1.0/req/[classM]/[reqN]

The URI for each conformance class has the form

http://www.opengis.net/spec/watermlwq/1.0/conf/[classM]

The URI for each conformance test has the form

http://www.opengis.net/spec/watermlwq/1.0/conf/[classM]/[testN]

Conceptual schemas

Conceptual schemas in the normative part of this Standard are presented in the Unified Modeling Language (UML). UML diagrams are presented in compliance with ISO/IEC 19505-2. No conceptual schemas have been created as part of this standard, with the UML diagrams being for informative purposes only (Chapter 4).

External package abbreviations

Concepts from schemas defined in some other International Standards are designated with names that start with alpha codes as follow:

GF
ISO 19109:2005 General Feature Model
GFI
ISO 19156:2011 General Feature Model Instances
TM
ISO 19108:2002 Temporal Schema, Temporal Objects
MD
ISO 19115 Metadata
CV
ISO 19123:2005 Schema for Coverage Geometry and Functions
OM
ISO 19156:2011 Observations and Measurements
DQ
ISO 19157:201X Data Quality
WML2
OGC® WaterML 2.0: Part 1- Timeseries

Abbreviations

CSIRO
Commonwealth Scientific and Industrial Research Organisation
GML
OGC Geography Mark-up Language
O&M
OGC Observations and Measurements Conceptual Model
OGC
Open Geospatial Consortium
OMXML
Observations and Measurements XML Implementation
SWE
OGC Sensor Web Enablement
UML
Unified Modeling Language
WML2
WaterML 2.0 – Part 1
XML
Extensible Mark-up Language
XSD
W3C XML Schema Definition Language


Background

Technical Basis

This OGC Best Practice builds on the OMXML standard for encoding observations.

OMXML provides a single XML element for generic observations (i.e. <om:OM_Observation>). The standard observation result has an unspecified type (implemented as the XML Schema wildcard type=’xs:anyType’). The types of other observation properties observed-property, feature-of-interest, and observation procedure are also generic. Observations can be specialized for particular applications by restricting the type or source of these properties. For the XML encoding this may be achieved either using a specialized XML Schema, or by supplementing the XML Schema for the generic case with Schematron rules to test the type or value of the properties.

OMXML itself provides a standard set of observation types specialized by result type. In this standard we use the OMXML encoding for Measurement (i.e. observations whose result is a scaled number) for the case of single observations of water quality, and add constraints on the observed property, units of measure, and feature of interest.

WaterML 2.0 (part 1) is an existing specialization of OMXML, in which (i) the result is a time-series; and (ii) the sampling feature-of-interest is a monitoring station. In this standard we use the WaterML 2.0 encoding for water quality time-series, and add constraints on the observed property, units of measure, and ultimate (sampled) feature of interest.

It is also notable that OMXML provides XML implementations of the sampling feature types defined in O&M 2.0. Several of these concepts, such as SF_SamplingPoint (‘station’), SF_SamplingCurve (observation boreholes, trajectories, traverses), and SF_Specimen (i.e. physical samples) are used frequently in water quality observations, and thus the XML implementation are likely to be useful when transferring datasets. However, at this time we do not consider it necessary to introduce specific requirements concerning the use of these types for water quality data.

The core of WaterML2.0 also does not restrict the feature of interest to be only point-based sampling features. It does, however, identify that this is a common pattern for in-situ monitoring and captures this in the “monitoring point feature of interest” requirements class. It is thus possible to use different sampling features as the target feature. For example, the time series observation may describe the average value of a polygon through time (Taylor, 2012).

Classification of water quality observations

We distinguish between two forms of water quality observations:

  1.   single measurements of a single water quality parameter, where the result is a scalar value
  2.   multiple measurements of a single water quality parameter related to a single location, where the result is organized into a time-series, as time-value pairs (TVP).

These are represented in separate requirements classes and corresponding conformance classes. By structuring the standard in this way, a conformant implementation need only implement those classes that are necessary. Components that connect to the implementation have a precise specification of the implementation and can develop their application to match.

Within a dataset, each observation relates to a single water quality parameter. This follows the precedent set by WML 2.0. If multiple water quality parameters are measured, then data for each parameter is encoded as a separate observation (though potentially packaged in a single dataset or file). While various methods have been used previously to combine multi-parameter data into a single object, this results in multiple alternative ways of representing the same data. In the interests of minimising variability, and thus simplifying the design of client applications, multi-parameter data is not interleaved. The client is responsible for combining data if required.


Information Model

Water Quality package dependencies

Figure 1 provides a view of the primary requirements classes in this standard, modeled as UML packages, and their dependencies.

Water Quality package dependencies on O&M and WaterML 2
Figure 1: Water Quality package dependencies on O&M and WaterML 2

WML2 specifies time series as either time-value pairs or domain ranges (Taylor, 2012). Although the normative UML requirements for both have been specified, the specification for a GML XML Schema implementation that is compliant with the UML model has only been provided for time-value pair time series. No attempt has been made here to provide water quality requirements for domain range time series.

Water Quality informative classes

Figure 2 shows the types and elements defined in this standard, modeled as UML classes, focusing on the Water Quality-specific constraints. The Water Quality classes are shown as subtypes of O&M and WML2 classes. Because of the encoding rule used, these classes do not appear explicitly in XML representation of Water Quality data instances; rather, the general O&M and WaterML 2 classes appear, with appropriate constraints on aspects of their content-models.

Water Quality classes as sub-types of O&M and WaterML 2 classes
Figure 2: Water Quality classes as sub-types of O&M and WaterML 2 classes

The notes in Figure 2 specify the restrictions on the general O&M and WML2 models required for water quality data. It is intended that these constraints would be validated using Schematron for the XML representation.


Requirements Class: Time series XML rules

Observations of water quality use either the OMXML element OM_Measurement or the WML2 element MeasurementTimeseries. The units of measure used in the result are taken from a water quality vocabulary. This requirement is a modification of the units of measure requirement in the WML2 requirements classhttp://www.opengis.net/spec/waterml/2.0/req/xsd-xml-rules.  In addition, the WML2 requirements class http://www.opengis.net/spec/waterml/2.0/req/xsd-xml-rules/time-zone has been modified to include all time elements, not just those associated with time series. Otherwise, this requirements class is the same as that class. The requirements reused from WML2 are repeated here for convenience.

Requirements class http://www.opengis.net/spec/waterml/2.0/req/xsd-xml-rules

Target type

XML data document

Dependency

http://www.w3.org/TR/xmlschema-2

Dependency

http://www.opengis.net/doc/IS/GML/3.2/clause/2.4

Dependency

http://www.opengis.net/spec/SWE/2.0/req/xsd-simple-components

Dependency

urn:iso:dis:iso:8601:2004:clause:4

Requirement

http://www.opengis.net/spec/waterml/2.0/req/xsd-xml-rules/iso8601-time

Requirement

/req/xsd-xml-rules/time-zone

Requirement

/req/xsd-xml-rules/unit-of-measure

Requirement

http://www.opengis.net/spec/waterml/2.0/req/xsd-xml-rules/swe-types

Recommendation

http://www.opengis.net/spec/waterml/2.0/req/xsd-xml-rules/xlink-title

Recommendation

http://www.opengis.net/spec/waterml/2.0/req/xsd-xml-rules/vocabulary-references

 

The date-time formats will conform to ISO standards.

http://www.opengis.net/spec/waterml/2.0
/req/xsd-xml-rules/iso8601-time

All date-time elements shall be encoded using ISO8601 extended time format

 

Note that this precludes the use of time-coordinate systems such as UNIX time. This is specified in order to be maximally consistent with WML2 requirements. The time zone will be included in the time element.

/req/xsd-xml-rules/time-zone

The value of each time element shall include a time zone definition using a signed 4 digit character or a ‘Z’ to represent Zulu or Greenwich Mean Time (GMT). This is defined by the following regular expression:

(Z|[+-]HH:MM)

 

The units of measure shall be taken from a standard water quality vocabulary governed by the water community.

/req/xsd-xml-rules/unit-of-measure

All units of measure shall be specified using  the URI for an individual from the class http://qudt.org/schema/qudt#Unit defined in http://environment.data.gov.au/def/unit

 

The unit of measure must be suitable for the observed property (constraint inherited from OM_Observation).

Some SWE Common types are restricted to avoid ambiguity.

http://www.opengis.net/spec/waterml/2.0/req/xsd-xml-rules/swe-types

When using the SWE Common types, the following elements shall not be used: swe:quality (AbstractSimpleComponentType), swe:nilValues (AbstractSimpleComponentType), swe:constraint (QuantityType, QuantityRangeType, CategoryType). The attributes ‘optional’ and ‘updatable’ from the base type ‘AbstractDataComponent’ shall not be used.

 

The xlink:title attribute ought contain a text label when an xlink:href refers to a controlled vocabulary or ontology.

http://www.opengis.net/spec/waterml/2.0/req/xsd-xml-rules/xlink-title

If an xlink:href is used to reference a controlled vocabulary item, the element should encode the xlink:title attribute with a text label of the referenced item.

 

Vocabulary references made via xlink:href ought to be a resolvable URI in the form of an HTTP URL.

http://www.opengis.net/spec/waterml/2.0/rec/xsd-xml-rules/vocabulary-references

When specifying references to vocabulary (code) items using an xlink:href, a resolvable HTTP URL should be used which, when resolved, should provide suitable description of the concept being referenced. 

 

This requirements class defines common rules and recommendations for all XML instances.


 

Requirements class: observations (WQ_Observation)

Concrete observations of water quality use the O&M element OM_Measurement or the WML2 element MeasurementTimeseriesTVPObservation. The observed property common to these elements inherited from OM_Observation is taken from a standard vocabulary. The feature of interest property common to these elements comes from a water domain specific feature catalogue.

Requirements class

/req/observation

Target type

XML data document

Dependency

http://www.opengis.net/spec/OMXML/2.0/req/observation

Dependency

/req/xsd-xml-rules

Requirement

/req/observation/observed-property

Recommendation

/req/observation/feature-of-interest

 

The observed property of the observation is to be taken from a standard water quality vocabulary governed by the water community.

/req/observation/observed-property

The XML element om:observedProperty SHALL have an xlink:href property whose value is the URI for an individual from the class http://environment.data.gov.au/def/op#PropertyKind defined in http://environment.data.gov.au/def/property

 

The ultimate feature of interest (domain sampled feature) is a water specific domain feature.

/req/observation/feature-of-interest

The value of the href:xlink property is a URI that SHOULD denote a feature of a suitable type[1].

 

This is the core requirements class for all XML instances of water quality observations.


 

Requirements class: single measurements (WQ_Measurement)

Single observations of water quality use the O&M element OM_Measurement, and require that the units of measure used in the result are taken from a standard vocabulary.

Requirements class

/req/single-measurement

Target type

XML data document

Dependency

/req/observation

Dependency

http://www.opengis.net/spec/OMXML/2.0/req/measurement

Requirement

/req/single-measurement/result-units

 

The units of measure used in the single observation measurement result are required to be taken from a standard water quality vocabulary governed by the water community.

/req/single-measurement/result-units

The value of the om:result/@uom SHALL be the URI for an individual from the class http://qudt.org/schema/qudt#Unit defined in http://environment.data.gov.au/def/unit

 

The unit of measure must be suitable for the observed property (constraint inherited from OM_Observation).

This is the requirements class for all XML instances of single water quality measurements.


 

Requirements class: time series time-value pair measurements (WQ_MeasurementTimeSeriesTVP)

Time-value pair (tvp) time series measurements of water quality use the WML2 element MeasurementTimeseriesTVP.

Requirements class

/req/tvp-measurement

Target type

XML data document

Dependency

http://www.opengis.net/spec/waterml/2.0/req/xsd-measurement-timeseries-tvp

Dependency

req/xsd-xml-rules

Requirement

/req/tvp-measurement/result-units

 

The units of measure used in the time value pair measurement result are required to be taken from a standard water quality vocabulary governed by the water community.

/req/tvp-measurement/result-units

The value of the wml2:defaultPointMetadata wml2:uom xlink:href SHALL be the URI for an individual from the class http://qudt.org/schema/qudt#Unit defined in http://environment.data.gov.au/def/unit

 

This is the requirements class for all XML instances of time series water quality measurements.


Requirements class: time series time-value pair observations (WQ_MeasurementTimeSeriesTVPObservations)

Time-value pair (tvp) time series observations of water quality use the WML2 element MeasurementTimeseriesTVPObservation with observed property and feauture of interest content constrained by WQ_Observation and units of measure constrained by WQ_MeasurementTimeSeriesTVP.

 

Requirements class

/req/tvp-observation

Target type

XML data document

Dependency

/req/observation

Dependency

/req/tvp-measurement

Dependency

http://www.opengis.net/spec/waterml/2.0/req/xsd-measurement-timeseries-tvp-observation

 

This requirements class combines existing requirements classes in a novel way, but introduces no new requirements.


 

Media Types for water quality data

Water quality data conforming to this specification is encoded in GML-conformant XML documents. The standard MIME-type and sub-type for GML data should be used to indicate the encoding in internet exchange, as specified in MIME Media Types for GML, namely

application/gml+xml


Annex A: Abstract Test Suite (Normative)

A.1 Introduction

The test suite is structured into 5 conformance classes. Each conformance class is related to one requirements class from clause 5. Each conformance class contains a number of abstract tests[2]. Each test relates to one or more specific requirements, which are explicitly indicated in the description of the test.

There is a dependency on the conformance class for GML documents, defined in clause 2.4 (with the test suite in A.3) of OGC Geography Markup Language v3.2.

There is a dependency on the conformance class for Geographic Metadata XML encoding, described in Clause 2 and Annex A of Geographic information – metadata – XML implementation.

There are dependencies on the following conformance classes for Observations and Measurements XML encoding, described in Annex A of Observations and Measurements – XML implementation:

http://www.opengis.net/spec/OMXML/2.0/conf/observation
http://www.opengis.net/spec/OMXML/2.0/conf/measurement

There are dependencies on the following conformance classes for WaterML 2 XML encoding described in Annex 2 WaterML 2.0: Part 1- Timeseries:

http://www.opengis.net/spec/waterml/2.0/conf/xsd-measurement-timeseries-tvp
http://www.opengis.net/spec/waterml/2.0/req/xsd-measurement-timeseries-tvp-observation

 

A.2 Conformance class: XSD-XML rules

This is the core conformance class for XML implementation of Water Quality.

This conformance class is based on the WML2 http://www.opengis.net/spec/waterml/2.0/conf/xsd-xml-rules conformance class, but changes the units of measure from UCUM to those appropriate for Water Quality.

There is a dependency on the conformance class for GML documents, defined in clause 2.4 (with the test suite in A.3) of OGC Geography Markup Language v3.2.

There is a dependency on the conformance class for Geographic Metadata XML encoding, described in Clause 2 and Annex A of Geographic information – metadata – XML implementation.

 

Conformance Class

conf/xsd-xml-rules

Requirements

req/xsd-xml-rules

Dependency

http://www.opengis.net/spec/SWE/2.0/conf/xsd-simple-components

Dependency

http://www.w3.org/TR/xmlschema-2

Dependency

http://www.opengis.net/doc/IS/GML/3.2/clause/2.4

Dependency

urn:iso:dis:iso:8601:2004:clause:4

 

Test http://www.opengis.net/spec/waterml/2.0/conf/xsd-xml-rules/iso8601-time

Requirement

http://www.opengis.net/spec/waterml/2.0/req/xsd-xml-rules/iso8601-time

Test purpose

Verify that all time instants are valid according to the XML Schema implementation of ISO8601.  

Test method

Validate the content of each time element against the XML Schema dateTime content type, available here http://www.w3.org/TR/xmlschema-2/#schema.

Pass if no errors are reported. Fail otherwise.

Test type

Capability

 

Test http://www.opengis.net/spec/waterml/2.0/conf/xsd-xml-rules/time-zone

Requirement

http://www.opengis.net/spec/waterml/2.0/req/xsd-xml-rules/time-zone

Test purpose

Verify that all time instants include a time zone specifier.  

Test method

Validate the XML document using the Schematron document http://schemas.opengis.net/waterml/2.0/xml_rules.sch.
Pass if no errors are reported for the “time-zone” test. Fail otherwise

Test type

Capability

 

Test /req/xsd-xml-rules/unit-of-measure

Requirement

req/xsd-xml-rules/unit-of-measure

Test purpose

Verify that the XML element wml2:uom xlink:href is the URI for an individual from the class http://qudt.org/schema/qudt#Unit defined in http://environment.data.gov.au/def/unit.

Test method

Validate the XML document using the Schematron document in Annex C3[3]. Pass if no errors reported. Fail otherwise.

Test type

Capability

 

Test http://www.opengis.net/spec/waterml/2.0/conf/xsd-xml-rules/swe-types

Requirement

http://www.opengis.net/spec/waterml/2.0/req/xsd-xml-rules/swe-types

Test purpose

Ensure that only applicable SWE types are used. Some SWE types are related specifically to the SWE encoding style, which is not used.

Test method

Verify that the following SWE elements are not used in the encoding:

·       swe:quality (AbstractSimpleComponentType)

·       swe:nilValues (AbstractSimpleComponentType)

·       swe:constraint (QuantityType, QuantityRangeType, CategoryType)

Verify the following SWE attributes are not used:

optional’ and ‘updatable’ from the base type ‘AbstractDataComponent’

Test type

Capability

 


 

A.3 Conformance class: Observation data

This conformance class first requires that the target pass the O&M http://www.opengis.net/spec/OMXML/2.0/conf/observation conformance class, and adds additional tests to ensure the observed property is appropriate for Water Quality.

Conformance Class

/conf/observation

Requirements

/req/observation

Dependency

http://www.opengis.net/spec/OMXML/2.0/conf/observation

Dependency

conf/xsd-xml-rules

 

Test

/conf/observation/observed-property

Requirement

/req/observation/observed-property

Test purpose

Verify that the XML element om:observedProperty has an attribute xlink:href whose value is a URI for an individual from the class http://environment.data.gov.au/def/op#PropertyKind [4] as defined in the vocabulary http://environment.data.gov.au/def/property

Test method

Validate the XML document using the Schematron document in Annex C1. Pass if no errors reported. Fail otherwise.

Test type

Capability

Note that there is no formal test for the recommendation that the feature of interest is of a suitable type (i.e. /req/observation/feature-of-interest), because this statement is a recommendation, not a requirement.


 

A.4 Conformance class: Measurement data

This conformance class first requires that the target passes the O&M http://www.opengis.net/spec/OMXML/2.0/conf/measurement and the /conf/observation conformance classes, and adds an additional test to ensure the units of measure used are appropriate for Water Quality.

Conformance Class /conf/single-measurement

Requirements

/req/single-measurement

Dependency

http://www.opengis.net/spec/OMXML/2.0/conf/measurement

Dependency

/conf/observation

 

Test /conf/single-measurement/result-units

Requirement

/req/single-measurement/result-units

Test purpose

Verify that the XML element om:result has a uom attribute whose value is a URI for an individual from the class http://qudt.org/schema/qudt#Unit as defined in the vocabulary http://environment.data.gov.au/def/unit.

Test method

Validate the XML document using the Schematron document in Annex C2.
Pass if no errors reported. Fail otherwise.

Test type

Capability

 


 

A.5 Conformance class: TVP time series measurement

This conformance class extends the WML2 http://www.opengis.net/spec/waterml/2.0/conf/xsd-measurement-timeseries-tvp conformance class to specify the water quality requirement /req/tvp-measurement.

 

Conformance Class conf/tvp-measurement

Requirements

/req/tvp-measurement

Dependency

http://www.opengis.net/spec/waterml/2.0/conf/xsd-measurement-timeseries-tvp

Dependency

/conf/xsd-xml-rules

 

Test

/conf/tvp-measurement/result-units

Requirement

/req/tvp-measurement/result-units

Test purpose

Verify that the XML element om:result has a uom attribute whose value is a URI for an individual from the class http://qudt.org/schema/qudt#Unit as defined in http://environment.data.gov.au/def/unit.

Test method

Validate the XML document using the Schematron document in Annex C3.
Pass if no errors reported. Fail otherwise.

Test type

Capability

A.6 Conformance class: TVP time series observation

This conformance test extends the WML2 http://www.opengis.net/spec/waterml/2.0/conf/xsd-measurement-timeseries-tvp-observation conformance test to test the water quality requirements /req/tvp-observation and /req/tvp-measurement.

 

Conformance Class conf/tvp-observation

Requirements

/req/tvp-observation

Dependency

http://www.opengis.net/spec/waterml/2.0/conf/xsd-measurement-timeseries-tvp-observation

Dependency

/conf/observation

Dependency

/conf/tvp-measurement

 

Annex B: Example XML instances (informative)

The XML examples are provided here for informative purposes.

B1 O&M Measurement

The following example shows a single measurement. The time of the measurement, runtime parameters (type, time, units and value), observed property, result (value, units) and sampled feature are provided.

This example conforms to the following water quality conformance classes:

  
/conf/observation
/conf/single-measurement
/conf/xsd-xml-rules
  
 

<!– Conforms to http://www.opengis.net/spec/watermlwq/1.0/conf/single-measurement–>
<om:OM_Observation
                  gml:id="WQ_Measurement_Test01"
                  xmlns:om="http://www.opengis.net/om/2.0"
                  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                  xmlns:xlink="http://www.w3.org/1999/xlink"
                  xmlns:gml="http://www.opengis.net/gml/3.2"
               xsi:schemaLocation="http://www.opengis.net/om/2.0 http://schemas.opengis.net/om/2.0/observation.xsd">
                  <gml:description>Measurement test instance: turbidity measurement</gml:description>
                  <gml:name>Water quality measurement test 01</gml:name>
                  <om:type xlink:href="http://www.opengis.net/def/observationType/OGC-OM/2.0/OM_Measurement"/>
                  <om:phenomenonTime>
                  <!– Time is ISO8601 conformant with time-zone –>
                                    <gml:TimeInstant
                                                      gml:id="ot1t">
                                                      <gml:timePosition>2005-01-11T16:22:25.00+10:00</gml:timePosition>
                                    </gml:TimeInstant>
                  </om:phenomenonTime>
                  <om:resultTime xlink:href="#ot1t"/>
                  <!– a notional URL identifying a  procedure … –>
                  <om:procedure
                                    xlink:href="http://en.wikipedia.org/wiki/Nephelometer"/>
                  <!– environmental conditions during measurement –>
                  <om:parameter>
                                    <om:NamedValue>
                                    <!– xlink:href comes from http://environment.data.gov.au/def/property instances with xlink:title from skos:prefLabel and uom from qudt:unit –>
                                                      <om:name xlink:href=" http://environment.data.gov.au/def/property/water_temperature " xlink:title="water temperature"/>
                                                      <om:value xsi:type="gml:MeasureType" uom="http://qudt.org/vocab/unit#DegreeCelsius">22.3</om:value>
                                    </om:NamedValue>
                  </om:parameter>
                  <!– a URL identifying the observed property –>
                  <om:observedProperty
                                    xlink:href=" http://environment.data.gov.au/def/property/turbidity-water " xlink:title="water turbidity"/>
                                   
                  <!– a notional WFS call identifying the object regarding which the observation was made. The standard specifies that the object should be an instance of a type from the designated feature-type catalogue, which includes GroundWaterML GroundWaterBody or HydrologicUnit, or HY_Features HydroFeature. The type may also be asserted using the xlink:role attribute.  –>
                  <om:featureOfInterest
                                    xlink:href="http://environment.data.gov.au/groundwater/aquifers/yarragadee-aquifer"
xlink:title="Yarragadee Aquifer"
xlink:role="http://environment.data.gov.au/def/featuretype/HydrologicUnit"/>
<!– The XML Schema type of the result is indicated using the value of the xsi:type attribute –>
<!– xlink:href comes from http://environment.data.gov.au/def/propertyinstances with uom from qudt:unit –>
                  <om:result
                                    xsi:type="gml:MeasureType"
                                    uom="http://qudt.org/vocab/unit#NephelometricTurbidityUnit">100</om:result>
</om:OM_Observation>

B2 Time-value pair time series collection example

The following example shows a complete time-value time series collection. The temporal extent, procedure, default unit of measure, sampled feature and the sampling point for the observations are provided as common data for any observations in the collection. An example point showing a modified unit of measure is also included.

This example conforms to the following water quality and WML2 conformance classes:

  
/conf/xsd-xml-rules
/conf/tvp-observation
/conf/tvp-measurement
http://www.opengis.net/spec/watermlwq/1.0/conf/xsd-timeseries-tvp-observation
http://www.opengis.net/spec/watermlwq/1.0/conf/xsd-timeseries-tvp
http://www.opengis.net/spec/watermlwq/1.0/conf/xsd-timeseries-observation
http://www.opengis.net/spec/watermlwq/1.0/conf/xsd-feature-of-interest-monitoring-point
http://www.opengis.net/spec/watermlwq/1.0/conf/xsd-collection
http://www.opengis.net/spec/watermlwq/1.0/conf/xsd-observation-process
  
 

<wml2:Collection
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                  xmlns:gml="http://www.opengis.net/gml/3.2"
                  xmlns:xlink="http://www.w3.org/1999/xlink"
                  xmlns:wml2="http://www.opengis.net/waterml/2.0"
                  xmlns:swe="http://www.opengis.net/swe/2.0"
                  xmlns:om="http://www.opengis.net/om/2.0"
                  xmlns:sam="http://www.opengis.net/sampling/2.0"
                  xmlns:sams="http://www.opengis.net/samplingSpatial/2.0"
               xmlns:gco="http://www.isotc211.org/2005/gco"
                  xmlns:gmd="http://www.isotc211.org/2005/gmd"
                  xsi:schemaLocation="http://www.opengis.net/waterml/2.0 http://schemas.opengis.net/waterml/2.0/waterml2.xsd"
  gml:id="xsd-collection.example">
  <gml:description>Example collection for XML encoding http://www.opengis.net/spec/waterml/2.0/req/xsd-collection. Time series observation of water temperature</gml:description>
<wml2:metadata>
    <wml2:DocumentMetadata gml:id="document-metadata.1">
      <wml2:generationDate>2011-11-28T10:05:05+11:00</wml2:generationDate>
      <wml2:version xlink:href="http://www.opengis.net/waterml/2.0" xlink:title="WaterML 2.0"/>
      <wml2:generationSystem>Manual</wml2:generationSystem>
      <wml2:profile xlink:href="http://www.opengis.net/spec/watermlwq/1.0/conf/xsd-xml-rules"/>
      <wml2:profile xlink:href="http://www.opengis.net/spec/watermlwq/1.0/conf/tvp-measurement"/>
      <wml2:profile xlink:href="http://www.opengis.net/spec/watermlwq/1.0/conf/tvp-observation"/>
                    <wml2:profile xlink:href="http://www.opengis.net/spec/waterml/2.0/conf/xsd-feature-of-interest-monitoring-point"/>
      <wml2:profile xlink:href="http://www.opengis.net/spec/waterml/2.0/conf/xsd-collection"/>
      <wml2:profile xlink:href="http://www.opengis.net/spec/waterml/2.0/conf/xsd-observation-process"/>
    </wml2:DocumentMetadata>
  </wml2:metadata>
  <wml2:temporalExtent>
    <gml:TimePeriod gml:id="time-period.1">
      <gml:beginPosition>2011-11-21T12:27:00+10:00</gml:beginPosition>
      <gml:endPosition>2011-11-21T12:57:10+10:00</gml:endPosition>
    </gml:TimePeriod>
  </wml2:temporalExtent>
  <wml2:samplingFeatureMember>
    <wml2:MonitoringPoint gml:id="monitoring-point.1">
      <gml:name codeSpace="http://www.csiro.au/">Deddington</gml:name>
      <sam:sampledFeature xlink:href="http://csiro.au/features/rivers/south_esk/deddington" xlink:title="Deddington"/>
      <sams:shape>
        <gml:Point gml:id="location_deddington">
          <gml:pos srsName="urn:ogc:def:crs:EPSG::4326">-41.814935 147.568517 </gml:pos>
        </gml:Point>
      </sams:shape>
      <wml2:verticalDatum xlink:href="urn:ogc:def:crs:EPSG::5711" xlink:title="Australian Height Datum"/>
      <wml2:timeZone>
        <wml2:TimeZone>
          <wml2:zoneOffset>+11:00</wml2:zoneOffset>
          <wml2:zoneAbbreviation>AEDT</wml2:zoneAbbreviation>
        </wml2:TimeZone>
      </wml2:timeZone>
    </wml2:MonitoringPoint>
  </wml2:samplingFeatureMember>
  <wml2:observationMember>
    <om:OM_Observation gml:id="observation.1">
      <gml:identifier codeSpace="http://www.example.com/observations">EX.OB.B.1</gml:identifier>
      <om:metadata>
        <wml2:ObservationMetadata>
          <gmd:contact xlink:href="http://www.example.com" xlink:title="Example Pty Ltd"/>
          <gmd:dateStamp>
            <gco:DateTime>2011-11-28T10:01:00+10:00</gco:DateTime>
          </gmd:dateStamp>
          <gmd:identificationInfo xlink:href="http://www.example.com/observations/C.1" xlink:title="Observation C.1"/>
          <wml2:intendedObservationSpacing>PT15M</wml2:intendedObservationSpacing>
          <wml2:status xlink:href="http://water.usgs.gov/provisional.html" xlink:title="Provisional data"/>
          <wml2:sampledMedium xlink:href="http://environment.data.gov.au/def/object/water" xlink:title="water"/>
        </wml2:ObservationMetadata>
      </om:metadata>
      <om:phenomenonTime xlink:href="#time-period.1" xlink:title="Temporal Extent"/>
      <om:resultTime>
        <gml:TimeInstant gml:id="time-instant.1">
          <gml:timePosition>2011-11-21T13:05:00+10:00</gml:timePosition>
        </gml:TimeInstant>
      </om:resultTime>
      <om:procedure>
        <wml2:ObservationProcess gml:id="observation-process.1">
          <wml2:processType xlink:href="http://www.opengis.net/def/processType/WaterML/2.0/Sensor" xlink:title="Sensor"/>
          <wml2:processReference xlink:href="http://www.example.com/sensor/1.0" xlink:title="Sensor Sampling Regime 1.0"/>
        </wml2:ObservationProcess>
      </om:procedure>
      <om:observedProperty xlink:href="http://environment.data.gov.au/def/property/water_temperature" xlink:title="water temperature"/>
      <om:featureOfInterest xlink:href="http://environment.data.gov.au/groundwater/aquifers/yarragadee-aquifer" xlink:title="Yarragadee Aquifer"/>
      <om:result>
        <wml2:MeasurementTimeseries gml:id="timeseries.1">
          <wml2:metadata>
            <wml2:TimeseriesMetadata>
              <wml2:temporalExtent xlink:href="#time-period.1"/>
            </wml2:TimeseriesMetadata>
          </wml2:metadata>
          <wml2:defaultPointMetadata>
            <wml2:DefaultTVPMeasurementMetadata>
              <wml2:uom xlink:href="http://qudt.org/vocab/unit#DegreeCelsius" xlink:title="Degree Celsius" code="degC"/>
              <wml2:interpolationType xlink:href="http://www.opengis.net/def/timeseriesType/WaterML/2.0/continuous" xlink:title="Instantaneous"/>
            </wml2:DefaultTVPMeasurementMetadata>
          </wml2:defaultPointMetadata>
          <wml2:point>
            <wml2:MeasurementTVP>
              <wml2:time>2011-11-21T12:27:00+10:00</wml2:time>
              <wml2:value>20.5</wml2:value>
            </wml2:MeasurementTVP>
          </wml2:point>
          <wml2:point>
            <wml2:MeasurementTVP>
              <wml2:time>2011-11-21T12:44:35+10:00</wml2:time>
              <wml2:value>20.5</wml2:value>
            </wml2:MeasurementTVP>
          </wml2:point>
          <wml2:point>
            <wml2:MeasurementTVP>
              <wml2:time>2011-11-21T12:57:10+10:00</wml2:time>
           <wml2:value>20.4</wml2:value>
            </wml2:MeasurementTVP>
          </wml2:point>
          <wml2:point>
            <wml2:MeasurementTVP>
              <wml2:value>68.7</wml2:value>
              <wml2:metadata>
                <wml2:TVPMeasurementMetadata>
                  <wml2:accuracy>
                    <swe:Quantity>
                      <swe:uom xlink:href="http://qudt.org/vocab/unit#DegreeFahrenheit" xlink:title="Degree Fahrenheit"  code="degF"/>
                      <swe:value>0.1</swe:value>
                    </swe:Quantity>
                  </wml2:accuracy>
                </wml2:TVPMeasurementMetadata>
              </wml2:metadata>
            </wml2:MeasurementTVP>
          </wml2:point>
        </wml2:MeasurementTimeseries>
      </om:result>
    </om:OM_Observation>
  </wml2:observationMember>
</wml2:Collection>

 


 

Annex C: Schematron tests

C1. Observed Property

This schematron (observed-property.sch) validates the XML document against test /conf/observation/observed-property of conformance class /conf/observation.

 


<?xml version=“1.0” encoding=“UTF-8”?>
<schema fpi=" http://schemas.opengis.net/wmlwq/1.0/observed-property.sch" see="http://www.opengis.net/spec/watermlwq/1.0/req/observation"
  xmlns="http://purl.oclc.org/dsdl/schematron" queryBinding="xslt2" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <!–
        This schematron schema checks the XML encoding requirements of Water Quality, as specified
        in the requirements class:http://www.opengis.net/spec/watermlwq/1.0/req/observation
        Copyright (c) 2013 CSIRO.
        version=“1.0.0”
    –>
  <title>Water Quality XML encoding tests</title>
  <p>This schematron schema checks the XML encoding requirements of Water Quality, as specified
    in the requirements class: http://www.opengis.net/spec/watermlwq/1.0/req/observation</p>
  <ns prefix="om" uri="http://www.opengis.net/om/2.0"/>
  <ns prefix="gml" uri="http://www.opengis.net/gml/3.2"/>
  <ns prefix="xlink" uri="http://www.w3.org/1999/xlink"/>
  <ns prefix="swe" uri="http://www.opengis.net/swe/2.0"/>
  <!– the logic for sch:report is opposite to sch:assert; you report if the statement is true –>
   <pattern id="validObservedProperty">
    <title>Test requirement: /req/observation/observed-property</title>
    <rule context="*[@xlink:href and local-name()=’observedProperty’]">
      <assert test="starts-with(@xlink:href, ‘http://environment.data.gov.au/def/property’)"
 diagnostics="diag">For the observedProperty element an xlink to an instance from http://environment.data.gov.au/def/property must be provided. </assert>
    </rule>
  </pattern>
                  <diagnostics>
                    <diagnostic id="diag">Missing from
                     <value-of select="@xlink:href"/></diagnostic>    
                  </diagnostics>
  </schema>

 

C2. Single Measurement UOM.sch

This schematron (measurement-uom.sch) validates the XML document against test /conf/single-measurement/result-units of conformance class /conf/single-measurement.

 


<?xml version=“1.0” encoding=“UTF-8”?>
<schema fpi="http://schemas.opengis.net/wmlwq/1.0/measurement-uom.sch" see=" http://www.opengis.net/spec/watermlwq/1.0/req/single-measurement"
  xmlns="http://purl.oclc.org/dsdl/schematron" queryBinding="xslt2" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <!–
        This schematron schema checks the XML encoding requirements of Water Quality, as specified
        in the requirements class: http://www.opengis.net/spec/watermlwq/1.0/req/single-measurement
        Copyright (c) 2013 CSIRO.
        version=“1.0.0”
    –>
  <title>Water Quality XML encoding tests</title>
  <p>This schematron schema checks the XML encoding requirements of Water Quality, as specified
    in the requirements class: http://www.opengis.net/spec/watermlwq/1.0/req/single-measurement</p>
  <ns prefix="om" uri="http://www.opengis.net/om/2.0"/>
  <ns prefix="gml" uri="http://www.opengis.net/gml/3.2"/>
  <ns prefix="xlink" uri="http://www.w3.org/1999/xlink"/>
  <ns prefix="swe" uri="http://www.opengis.net/swe/2.0"/>
 
  <!– the logic for sch:report is opposite to sch:assert; you report if the statement is true –>
   <pattern id="validUnitOfMeasure">
    <title>Test requirement: /req/single-measurement/result-units</title>
    <rule context="*[@uom]">
      <assert test="starts-with(@uom, ‘http://qudt.org/vocab/unit’) or starts-with(@uom, ’ http://environment.data.gov.au/def/unit/)">
      For the result element the uom attribute must be an instance from
      http://environment.data.gov.au/def/unit. </assert>
    </rule>
  </pattern>
</schema>

 

C3. TVP Time Series Measurement UOM

This schematron (measurement-tvp-uom.sch) validates the XML document against conformance test /conf/tvp-measurement/result-unitsof conformance class /conf/tvp-measurement.

 


<?xml version=“1.0” encoding=“UTF-8”?>
<schema fpi="http://schemas.opengis.net/wmlwq/1.0/measurement-tvp-uom.sch" see="http://www.opengis.net/spec/watermlwq/1.0/req/tvp-measurement"
  xmlns="http://purl.oclc.org/dsdl/schematron" queryBinding="xslt2" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <!–
        This schematron schema checks the XML encoding requirements of Water Quality, as specified
        in the requirements class: http://www.opengis.net/spec/watermlwq/1.0/req/tvp-measurement
        Copyright (c) 2013 CSIRO.
        version=“1.0.0”
    –>
  <title>Water Quality XML encoding tests</title>
  <p>This schematron schema checks the XML encoding requirements of Water Quality, as specified
    in the requirements class: http://www.opengis.net/spec/watermlwq/1.0/req/single-measurement</p>
  <ns prefix="om" uri="http://www.opengis.net/om/2.0"/>
  <ns prefix="gml" uri="http://www.opengis.net/gml/3.2"/>
  <ns prefix="xlink" uri="http://www.w3.org/1999/xlink"/>
  <ns prefix="swe" uri="http://www.opengis.net/swe/2.0"/>
 
   <pattern id="validTVPUnitOfMeasure">
    <title>Test requirement: /conf/tvp-measurement/result-units </title>
    <rule context="*[@xlink:href and local-name()=’uom’]">
       <assert test="starts-with(@xlink:href, ‘http://qudt.org/vocab/unit’) or starts-with(@xlink:href, ’ http://environment.data.gov.au/def/unit’)">
      For the time series measurements the uom elements must have an xlink:href attribute that is an instance from
      http://environment.data.gov.au/def/unit. </assert>
    </rule>
    </pattern>
</schema>

 

Annex D: Revision history

 

Date

Release

Author

Paragraph modified

Description

2014-01-10

0.1.0

Simon Cox

All

Initial version

2014-01-14

0.1.1

Bruce Simons

All

Minor edits

 

Annex E: Bibliography

[1]       Institute of Electrical and Electronics Engineers, 1990. IEEE Standard Computer Dictionary: A Compilation of IEEE Standard Computer Glossaries. New York, NY: 1990.
[2]       INSPIRE, 2009. D2.8.I.8 INSPIRE Data Specification on Hydrography – Guidelines. INSPIRE Infrastructure for Spatial Information in Europe.
[3]       Moran, B. 2012. Phase 1 Information Platform to support bioregional assessment of Australia’s major coal basins. Project Management Plan. Australian Government, Bureau of Meteorology. 28 July 2012, Version 4.
[4]       O’Hagan, R., Atkinson, R., Cox, S.J.D., Fitch, P., Lemon, D. and Walker, G., 2007. A reference model for a water resources observation network, Proceedings of the International Congress on Modelling and Simulation (MODSIM 07), Christchurch, New Zealand, pp. 10-12.
[5]       SEWPaC, 2012a. Australia’s bioregions (IBRA), version 6.1. [cited 11 May 2012]. http://www.environment.gov.au/parks/nrs/science/bioregion-framework/ibra/index.html. Australian Government: Department of Sustainability, Environment, Water, Population and Communities, Canberra, ACT.
[6]       SEWPaC, 2012b The framework for bioregional assessments of coal seam gas and coal mining development. A report of the Independent Expert Scientific Committee on Coal Seam Gas and Coal Mining through the Department of Sustainability, Environment, Water, Population and Communities.
[7]       Simons, B.A., Lemon, D., Cox, S.J.D. and Woodcock, R., (2012) Information Requirements for Bioregional Assessments. Water for a Healthy Country Flagship Report series ISSN: 1835-095X
[8]       Simons, B.A, and Cox, S.J.D., (2013) Water Quality exchange standard for the Bioregional Assessment Framework. Water for a Healthy Country Flagship Report series
[9]       Simons, B.A, Yu, J. and Cox, S.J.D., (2013) Water Quality vocabularies for Bioregional Assessments. Water for a Healthy Country Flagship Report series

 

Footnotes


[1]The catalogue http://environment.data.gov.au/def/featuretype/ may be used. It currently includes GroundWaterBody and HydrologicUnit from GroundWaterML, and HydroFeature from HY_Features.

[2] Following the practice in ISO standards, a test is termed ‘abstract’ unless all the details of a system including specific software to be used in executing the test are prescribed. 

[3] If this specification becomes an OGC standard, the schematron documents will be hosted in the OGC schema repository. The likely address of each schematron document is given in its @fpi attribute.

[4] Note - http://environment.data.gov.au/def/op#PropertyKind is a superclass of http://environment.data.gov.au/def/op#ScaledQuantityKind, http://environment.data.gov.au/def/op#QualityKind and http://qudt.org/schema/qudt#QuantityKind