OGC WaterML2.0: Part 2 – Ratings, Gaugings and Sections Open Geospatial Consortium Submission Date: 2015-04-09 Approval Date: 2015-08-10 Publication Date: 2016-02-03 External identifier of this OGC ® document: http://www.opengis.net/doc/IS/waterml2.0-part2/1.0 URL for this OGC ® document: https://docs.ogc.org/is/15-018r2/15-018r2.html Additional Formats (informative): Internal reference number of this OGC ® document: 15-018r2 Version: 1.0 Category: OGC ® Implementation Standard Editor: Peter Taylor OGC® WaterML2.0: Part 2 - Ratings, Gaugings and Sections Copyright notice Copyright © 2015 Open Geospatial Consortium To obtain additional rights of use, visit http://www.opengeospatial.org/legal/ . Warning This document is an OGC Member approved international standard. This document is available on a royalty free, non-discriminatory basis. Recipients of this document are invited to submit, with their comments, notification of any relevant patent rights of which they are aware and to provide supporting documentation. Document type: OGC Standard Document subtype: Encoding Document stage: Approved Document language: English 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 standard defines an information model and XML encoding for exchanging the following three hydrological information resources: Conversion tables , or conversion curves , that are used for the conversion of related hydrological phenomenon. Gauging observations – the observations performed to develop conversion table relationships. Cross sections - survey observations made of the geometric structure of features, such as river channels, storages etc. Metadata and vocabularies are defined that together provide a means for parties to exchange these concepts using common semantics. This standard is the second part of the WaterML2.0 suite of standards, building on part 1 that addresses the exchange of time series [1] . ii. Keywords The following are keywords to be used by search engines and document catalogues. ogcdoc, waterml, ratings, gaugings, o&m, conversion, cross section iii. Preface 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. iii. Submitting organizations The following organizations submitted this Document to the Open Geospatial Consortium (OGC): Commonwealth Scientific and Industrial Research Organization (CSIRO), Australia Australian Bureau of Meteorology, Australia Centre for Ecology and Hydrology, UK KISTERS United States Geological Survey (USGS) Aquatic Informatics iv. Submitters All questions regarding this submission should be directed to the editor or the submitters: Name Representing OGC member Peter Taylor Commonwealth Scientific and Industrial Research Organisation (CSIRO), Australia Yes Paul Sheahan Bureau of Meteorology, Australia Yes Dominic Lowe Bureau of Meteorology, Australia Yes Michael Natschke KISTERS, Germany Yes Peter Heweston KISTERS, Australia Yes Mathew Fry Centre for Ecology and Hydrology, UK Yes David Briar United States Geological Survey, USA Yes Stuart Hamilton Aquatic Informatics, Canada Yes Brian Gouge Aquatic Informatics, Canada Yes 1. Scope This document defines an information model to describe hydrological ratings, gauging observations and survey observations. It is part 2 of the WaterML2.0 ‘suite’ of standards; the first part covered time-series observations and monitoring points. This standard re-uses types from part 1. This work has been conducted by members of the WaterML 2.0 Standards Working Group and the joint WMO/OGC Hydrology Domain Working Group. 2. Conformance This standard defines a UML conceptual model and XML encoding schema for describing hydrological conversions, gauging observations and survey observations. Requirements for two standardization target types are considered: UML models XML instances (e.g. XML documents) Conformance with this standard shall be checked using all the relevant tests specified in Annex A (normative) and Annex B (normative) of this document. The framework, concepts, and methodology for testing, and the criteria to be achieved to claim conformance are specified in the OGC Compliance Testing Policies and Procedures and the OGC Compliance Testing web site [2] . In order to conform to this OGC™ interface standard, a software implementation shall choose to implement: Any one of the conformance levels specified in Annex A (normative) or Annex B (normative). All requirements-classes and conformance-classes described in this document are owned by the standard(s) identified. 3. Normative References The following normative documents contain provisions that, through referenced 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. OGC 08-131r3 – The Specification Model – A Standard for Modular Specification ISO 19103:2005 – Geographic information - Conceptual schema language ISO 8601:2004 - Data elements and interchange formats – Information interchange – Representation of dates and times OGC Abstract Specification Topic 1 – Feature geometry (aka ISO 19107) OGC Abstract Specification Topic 2 – Spatial Referencing by Coordinates (aka ISO 19111:2007) OGC Abstract Specification Topic 6 – Schema for Coverage geometry and functions (aka ISO 19123:2005) OGC Abstract Specification Topic 11 – Geographic information — Metadata (aka ISO 19115:2014) OGC Abstract Specification Topic 20 – Observations and Measurements (aka ISO 19156:2011) OGC 07-036 Geography Markup Language (aka ISO 19136:2007) OGC WaterML2.0 part 1 – timeseries. OGC 10-126r4. http://www.opengeospatial.org/standards/waterml OGC Observations and Measurements v2.0 XML OGC Document 10-025r1. http://www.opengis.net/doc/IS/OMXML/2.0 OGC SWE Common Data Model Encoding Standard v2.0 OGC Document 08-094r1 http://www.opengis.net/doc/IS/SWECommon/2.0 Unified Code for Units of Measure (UCUM) – Version 1.8, July 2009 Unified Modeling Language (UML). Version 2.3. May 2010. Extensible Markup Language (XML) – Version 1.0 (Fourth Edition), August 2006 XML Schema – Version 1.0 (Second Edition), October 2004 4. 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. There is some variation in the specific use of some technical terms within the hydrological domain. We have attempted to follow common usage, referring where possible to the WMO Glossary of hydrological concepts ( http://webworld.unesco.org/water/ihp/db/glossary/glu/aglu.htm ). English version: http://webworld.unesco.org/water/ihp/db/glossary/glu/HINDEN.HTM . 4.1 discharge volume of liquid flowing through a cross-section in a unit time. Synonym: flow. 4.2 stage water level, typically measured at a stream-monitoring site. Synonym: gauge height, level. 4.3 cross-section profile of a stream normal to the mean direction of flow, usually bounded by the potential inundation extent of the stream. 4.4 control physical properties of a channel which determine the relationship between stage and discharge at a location in the channel. (WMO) NOTE 1 Physical properties refers to the shape of the natural or anthropogenic feature which is controlling the stream level at the monitoring station. 4.5 gauging observation physical, paired, simultaneous measurement of two related phenomena for the purposes of developing or validating the relationship between them. EXAMPLE Simultaneous measurements of streamflow and aggregate mean gauge height. EXAMPLE Simultaneous measurements of velocity and flow. NOTE 1 Also referred to as Gauging, often - depending on local usage - implying stage and discharge observations specifically. NOTE 2 In some situations outside of this specification the term calibration, or even rating, is used to describe such a measurement. 4.6 monitoring point primary location for conducting observations. (OGC WaterML2.0 part 1) NOTE Also often referred to as Station , Gauging Station and Site . 4.7 property physical phenomenon that may be directly measured or estimated. EXAMPLE Stage, discharge, rainfall, evapotranspiration NOTE 1 Phenomena are often associated with features, where they may be termed property or property type. NOTE 2 Other domain synonyms or close matches include variable, observed property and parameter. 4.8 conversion relationship between two phenomena at a moment in time as defined by an equation, table of paired values or other form. EXAMPLE A stage to discharge conversion defined by a rating table describes the relationship between the water level and the volumetric flow rate of a stream. 4.9 rating conversion specific Conversion that relates stage to discharge. NOTE Within hydrology this is commonly referred to as a Rating . A plot of a Rating Conversion is often called a rating curve. 4.10 conversion table table representation of a Conversion. NOTE A conversion table is, most often, a discretised representation of a rating curve; hence there will be a 1:1 relation between a curve and its table. The tabular form of the rating curve facilitates use and exchange. NOTE Within hydrology this is commonly referred to as a Rating Table when representing a stage to discharge conversion. 4.11 conversion equation equation representation of a Conversion. NOTE The equation may be presented as a curve, which within hydrology is termed a rating curve. 4.12 conversion group A conversion group defines the applicable conversions for time periods at a specific location. EXAMPLE A collection of stage to discharge conversion tables that have their period of application defined across time. 4.13 input property property that is being measured to estimate another property using a Conversion. EXAMPLE stage, velocity, turbidity NOTE 1 Also known as the independent (or input) property 4.14 output property property that is being estimated using a Conversion. EXAMPLE discharge, cross-sectional velocity, total suspended sediment NOTE 1 Also known as the dependent (or output) property 5. Conventions 5.1 Abbreviated terms The following symbols and abbreviated are used in this standard; GML Geography Markup Language O&M Observations and Measurements OGC Open Geospatial Consortium SWE Sensor Web Enablement UML Unified Modeling Language WMO World Meteorological Organisation XML Extensible Markup Language XSD W3C XML Schema Definition Language 5.2 Schema language The XML implementation specified in this Standard is described using the XML Schema language (XSD) [XML Schema Part 1: Structures, XML Schema Part 2: Datatypes] and Schematron [ISO/IEC 19757-3, Information technology — Document Schema Definition Languages (DSDL) — Part 3: Rule-based validation — Schematron]. 5.3 UML notation The diagrams that appear in this standard are presented using the Unified Modeling Language (UML) static structure diagram. Note: Within the context of this standard, the following color scheme is used to identify the package in which the class exists. This is just for informative purposes. Tan: Defined within this standard Blue: WaterML2.0 part 1 - timeseries Red: ISO19156 – Observations & Measurements Green: ISO19115 – Metadata 6. Vocabularies This standard defines a number of properties that require the use of codes/vocabulary items. In some cases, a list of terms is provided. Where no codes are provided, it is expected that a list will be developed in the future, or a local code list may be used. A summary of the vocabularies is shown in Table 1. The joint OGC/WMO Hydrology Domain Working Group (HydroDWG) is responsible for managing the content of these vocabularies. Once agreement is reached for definitions, the HydroDWG should submit updates to the OGC Naming Authority. Table 1 – Summary of vocabularies within this standard Code list Package(s) Code items defined DevelopmentMethodCode Conversions Yes DomainFeatureTypeCode Conversions No PropertyCode Conversions & Gaugings No StatusCode Conversions & Gaugings Yes InputMethodCode Gaugings No OutputMethodCode Gaugings No RelativeDirectionCode Gaugings Yes StreamStateCode Gaugings Yes ControlConditionCode Gaugings No RangeDefinitionCode RangeValues No SectionPropertyCode Sections Yes TerminationTypeCode Sections No 7. Non-Normative (Informative) Material WaterML2.0 is an initiative of the OGC to develop international standards and address interoperability of hydrological information systems. The first part of WaterML2.0 [3] focused on a standard information model for time series of hydrological observations. The scope was defined through identification of common requirements and priority areas for data hydrological data exchange [4] . The development involved a harmonisation process whereby existing formats were compared and contrasted with an aim of capturing the key elements for time series data exchange. Early versions of the standard were tested through a number of OGC Interoperability Experiments, each testing against a different set of use cases. WaterML2.0 Part 2 focuses on another key aspect of hydrological data: rating conversions, gauging observations and river cross-sections. These are part of most surface water monitoring programs and are used in daily operations, including reporting, analysis, modelling and forecasting. This type of data is becoming increasingly important to exchange and share outside the scope of single organisations. The full history of rating conversions through time, and the gauging observations used to develop ratings, is needed to judge their fitness for purpose, and increasingly for the quantification of uncertainty for risk-based modelling and analysis. 7.1 Conversions are a generalised concept The practice of using an observed or theoretical relationship to make indirect observations through conversion of a more readily measured phenomenon has wide application within hydrology. The most prevalent usage of conversions within hydrology is the application of rating conversions. This standard enables the definition of simple relationships between any phenomena, though the primary focus in its creation has been to ensure its appropriateness for stage to discharge conversion. The following discussion describes stage to discharge relationships, their derivation, and their uncertainty in more detail in order to aid understanding of the use cases and the resulting data model. Conversions may be applied in a compound manner with the sequential application of conversions being required to determine the final derived value, e.g. the North American practice of correcting stage data via a conversion prior to the derivation of discharge. This standard defines the method for the communication of the conversions but does not define the workflow process for compound conversion usage. 7.2 Key hydrological concepts 7.2.1 Overview Hydrometry is the practice of measuring river flow, which is important to almost all areas of hydrology. River flows are generally measured indirectly – relying on the conversion of a record of stage to discharge using an often empirically derived rating conversion. Figure: : Rating process 7.2.2 Rating-conversion 7.2.2.1 Purpose A rating conversion contains the information needed to correctly derive the dependent phenomenon (output property) from the independent one (input property). The rating conversion has validity during one, or more, specified periods of duration. The rating conversion period of validity may overlap with the period of validity of another rating requiring a transition. Figure: : Example stage to discharge rating relationship, showing gauging observations [5] Figure 2 shows an example plot of a rating conversion curve (on a log-log scale) with the individual gauging points and rating period of application. WMO recommends a curve should “…include at least 12 to 15 measurements, all made during the period of analysis” and these should be “…well distributed over the range of gauge heights experienced.” 7.2.2.2 Construction of a Rating-conversion A rating conversion is an articulation of the complex physical relationship between stage and discharge. The shape, extent and form of a rating conversion are typically calibrated with gauging observations. Rating conversions are often extrapolated beyond the range of gauging observations. Construction of a rating conversion requires consideration of factors such as the shape of the channel cross-section, the hydro-morphology of the channel, including the texture of the channel surfaces, and the hydraulics of the channel upstream and downstream of the monitoring point. Some monitoring points implement an artificial structure to control the stage to discharge relationship over a limited range of stage e.g. a weir or flume. A control structure may be constructed to a specification for which the stage to discharge relationship is known. In this case gauging observations are commonly used to validate the theoretical relationship, and to define the relationship for the stage ranges where the theoretical relationship does not apply e.g. when the capacity of the control structure is exceeded. 7.2.2.3 Maintenance of a Rating-conversion The stage to discharge relationship can change over time due to a large number of factors including erosion of the channel bed or banks, deposition of sediment either at, or up- and downstream of, the cross-section, growth of weed or accumulation of algae. These changes can be sudden (e.g. erosion of the bed and banks during a flood event) or gradual, seasonal (e.g. weed growth) or irregular in time. The changing nature of the relationship drives a need for ongoing review and re-definition of the relationship. Monitoring points generally have a history of rating conversions that have a time-limited period of validity; the latest rating conversion is used to define the current stage to discharge relationship. 7.2.2.4 Rating-conversion uncertainty Uncertainty is an inherent aspect of rating conversion development and application. Some sources of rating conversion uncertainty at a monitoring point can be characterized by expert-knowledge, for example the quality of a structure, or the likelihood of weed-growth or erosion within a river section. In most cases it is ultimately the quality of the fit of the rating to the gauging observations, and the ability of the gauging observations to represent the range of stage at a monitoring point, which is used to quantify the uncertainty. Increased sharing of ratings and gaugings will assist data users to complete their own evaluation of uncertainty in any dataset. 7.2.2.5 WaterML2.0 Part 2 expresses the data as a points table Rating conversions are defined in many different forms in hydrometric data systems. The two primary methods for defining rating conversions are a table of stage/discharge pairs and one or more equations. Assessment of exchange standards to support equation-based conversions was out of scope for this work . This standard is scoped to enable the interoperable exchange of rating conversions though the use of a linearly interpretable points table. 7.2.2.6 Gauging observation A gauging observation is the simultaneous measurement of the independent and dependent properties that are the subject of a conversion. The observations are used in the development and validation of a conversion. 7.2.2.7 Stage-discharge gauging observation Stage-discharge gauging observations are the simultaneous direct measurements of instantaneous stage and discharge. The technique used for measuring both phenomena can vary. The most common method for determining an estimated discharge measurement is the velocity-area method, which is roughly described as follows: The velocity of water is measured in different segments of the river cross-section. The volume for each segment is calculated based on the segments measured area multiplied by the segments mean velocity, determined from multiple velocity observations. The volume of each segment is summed to give an estimate of total discharge. Figure: : View of a stream cross-section showing the location of points of observation [6] Stream-discharge gauging observations are undertaken to quantify the discharge at the monitoring point. The location of the actual observation is likely to be up or downstream of the monitoring point. The observation location will be chosen based on the prevailing river conditions and assessment of the most appropriate place for conducting a stage-discharge gauging observation. 7.2.2.8 Changing technologies The method used to determine the velocity at each point varies – more traditional techniques involve the use of an impeller driven current meter that is lowered into the river, sometimes from a boat or directly by an operator standing in the river. The use of acoustic methods, such those provided by Doppler instruments, are increasing in use due to their practicality and availability of commercial instruments. For example, Acoustic Doppler Current Profilers (ADCP) can simultaneously measure the velocity of suspended particles in the river, depth and the river cross section path to estimate discharge. Multiple transects can be taken to provide a more accurate estimate. The increased speed of the measurement technique allows for more precise recording of discharge, allowing for greater definition of the rating curve through an increased number of observations in the same time period compared to older methods. 7.2.3 Sections River channel sections are used in the construction and maintenance of rating tables. The types of sections in common use are cross sections and long sections. 7.2.3.1 Cross section Cross sections are taken to define the stage/area relationship and identify variation of riverbank profile. Cross sections are usually taken to define the shape of stage to discharge relationship controlling features. As the stage to discharge relationship controlling feature may change with increasing stage, multiple section may be required e.g. at lower stages there may be an artificial weir, above the weir a downstream bend may be a controlling feature. 7.2.3.2 Long section Long sections typically follow the riverbed along the thalweg. Long sections are used to understand the slope of the river channel and its contribution to the rivers kinetic energy. 7.2.3.3 Use of gauging observation cross sections The process of completing a stage-discharge gauging observation involves the measurement of the river cross section at the gauging section. Whilst this information is useful, it has limited value to rating conversion construction and maintenance as it does not define a stage–discharge relationship at the controlling feature and it only defines the riverbank profile for the area of current inundation. 7.3 Use cases/scenarios Sharing of rating curves is required in multiple scenarios, generally stemming from the need to perform the calculation of the derived phenomenon or to analyse the derived data with a view to understanding its inherent uncertainty or quality. The following use cases were used in the requirements analysis process and produced a set of requirements that are described later in this document. 7.3.1 Data scrutiny A primary use case for exposing detailed descriptions of rating tables is for closer scrutiny of derived data sets. A number of regularly used hydrological time-series – the most obvious being river discharge/flow – are derived using techniques that are approximations of relationships between other more readily measurable phenomena. It is becoming increasingly important for these data to be treated carefully due to the inherent assumptions made in the conversion process [7] . Five scenarios were used when analyzing requirements from this perspective: Uncertainty research; Geomorphic process, cross sections; Engineering design, e.g. designing a flood barrier; Analysis and assessment of input data for hydrological models; and Evaluation of fitness for purpose of data derived from ratings. 7.3.2 Exchange of specific rating table It is often desirable to have instant access to a specific rating table relationship for a specific purpose. Some indicative examples include: Time sensitive (floods, events, emergencies); Inundation modelling (reverse the conversion and get the input variable from the output variable, e.g., get state from discharge); A site visit or comparing a gauging point against the curve; Exchange of the most recent shift curve. (E.g. for reservoir optimization where the rating for inflow is subject to frequent shifts); and Providing ratings to operational systems (such as SCADA). 7.3.3 Exchange of full rating history Often a centralised repository or reporting agency requires access to a full history of rating tables to run derived calculations for specific sites at any point in time. This requires a full history of rating tables as they have evolved through time. This typically excludes development versions of rating tables that have not been approved for use or release. 7.3.4 Suspended sediment and load calculations Sediment-transport relationships (for calculating concentration, loads etc.) are used in numerous scenarios requiring an understanding of expected sediment build up or effects on the general environment. These relationships are often required by hydraulic or civil engineers for particular analyses or case studies. 7.3.5 Transfer between disparate information systems This use case covers exchange between systems that do not have a common information model/schema for representation rating conversion. While this is a generic use case that may occur within the above scenarios, it is an important one for operation and interoperability of distributed information systems. Examples include: Exchange of ratings amongst databases using different schema; Migration of ratings into a new database using a different schema; and Archive of ratings in a form that will preserve information without dependence on any particular software. 7.3.6 Research services General hydrological studies benefit from open access to hydrological data that may be used in educational scenarios. Rating tables and gauging observations are fundamental concepts within hydrological operations and having access to real world data in common formats supports learning these base concepts. 8. UML Model (normative) 8.1 Requirements class: Collection Requirements Class http://www.opengis.net/spec/waterml/part2/1.0/req/uml-collection Requirement / extends-part1 The WaterML2.0 Part 2 Collection type shall specialize the WaterML2.0 part 1 Collection by adding support for rating, gauging and cross-section members. Figure: : Collection UML 8.1.1 Requirements class overview The collection requirements class defines the top level collection that allows components of the part 2 model to be exchange together. It extends the WaterML2.0 part 1 collection type by adding support for conversions, gauging observations and cross-section observations. 8.1.2 Collection The Collection type is an extension of the part 1 collection. It has been extended to allow members of type Conversion, GaugingObservation, ConversionGroups, and CrossSectionObservations. Table 2 - Collection properties Name Definition Data types and values Multiplicity groupMember A member of the collection that contains a conversion group. ConversionGroup 0..* gaugingMember A member of the collection that contains a specific gauging. GaugingObservation 0..* sectionMember A member containing a cross-section instance. SectionObservation 0..* rangeGroup A range group member of the collection. RangeGroup 0..* propertyPairMember Members to allow local definition of property pairs, which group together two related properties. E.g. stage-flow. These can then be referenced for gauging observations. PropertyPair (see 8.4.9) 0..* conversionMember A member of the collection that contains a specific conversion. Conversion 0..* 8.2 Requirements class: Conversions Requirements Class http://www.opengis.net/spec/waterml/part2/1.0/req/uml-conversions Dependency http://www.opengis.net/spec/waterml/2.0/req/uml-monitoring-point Dependency urn:iso:dis:iso:19156:clause:9 Requirement / datums-for-stage A ConversionGroup that converts a level or stage property shall include a definition of the vertical datum used. Requirement / multiple-conversion-types Conversions shall support conversion between any properties, not just stage-flow conversions. Requirement / start-periods Within a ConversionGroup, each ConversionPeriod shall express the start date of a period of application for a Conversion. The end of the applicable period may be specified using the periodEnd. If no end is specified for the ConversionPeriod, the conversion applies to the start of the next applicable period, or indefinitely if no other ConversionPeriods exist in the ConversionGroup. Requirement / conversion-reuse Different ConversionPeriods shall be able to refer to the same Conversion. Requirement / conversion-gaps To express a gap in groups of Conversions, a ConversionPeriod with a periodEnd shall be used, followed by a ConversionPeriod with periodStart to express the end of the gap. Requirement / linear-interpolation A ConversionTable shall contain sufficient input/output values to allow linear interpolation between points. The data producer determines the resolution at which the values are created. Requirement / equation A Conversion shall support specification of the source equation of the conversion table. This shall be done using the sourceDefinition property to reference a ConversionEquation. The ConversionEquation supports a text-based equation description. There is no equation formatting specified. Requirement / transformation The definition of a Conversion shall be sufficient to allow calculation of derived values, without the need to specify the way the transformation should be run. Requirement / source-system A Conversion definition shall support additional information that describes how the source system stored the conversion table. This shall be done using the sourceDefinition property. Requirement / keys A ConversionGroup shall be uniquely identified by, at a minimum, the Monitoring Point, inputProperty and outputProperty. If additional key entries are required, these can be expressed using the 'name' property. Requirement / link-to-gaugings A Conversion shall allow referencing to the gauging observations that were used in construction of the conversion relationship through the ConversionMetadata type. This allows the following to be defined: · Gauging observations that were used and taken in the period of application; · Gauging observations that were not used in the period of application; · Gauging observation that were used but taken outside the application period, e.g. a high flow rating conversion. Requirement / phasing A ConversionGroup shall support the definition of a phased changed between Conversions. Each ConversionPeriod shall specify the period over which the applicable Conversion should be phased from the previous Conversion. Requirement / table-point-quality A ConversionTable shall support expression of the quality of each point within the table. A default shall be provided for the whole table, unless overridden by individual points. To override the default, the input and output values provide a SWE:Quantity type that allows a quality to be specified against a quantity. Requirement / review-process-metadata A Conversion shall contain metadata properties to support definition of whether the conversion is under review, approved or in development. Requirement / range-group A Conversion shall contain an associated with a RangeGroup, which describes metadata that varies according to the inputProperty. Figure: : Conversion UML 8.2.1 Requirements class overview This requirements class provides a model and requirements to define conversions between input and output properties, e.g. a conversion table describing a stage to discharge relationship. 8.2.2 Conversion A Conversion defines the relationship between two properties: the input property and the one being converted to (output property). A conversion applies to a specific monitoring point. Table 3 - Conversion properties Name Definition Data types and values Multiplicity metadata Association of a conversion with the Metadata of the conversion. ConversionMetadata 0..1 sourceDefinition This is an extension point to enable propriety systems to refer to an encoding of their systems definition of the conversion. Conversion 0..1 monitoringPoint Association of the conversion with a 'WaterML 2.0: Part 1- Timeseries' monitoring point. MonitoringPoint (WaterML2.0 part 1) 1 inputProperty The input property to the conversion. E.g. river level/stage. PropertyCode (see 8.2.11) 1 outputProperty The output of the conversion process. E.g. discharge. PropertyCode (see 8.2.11) 1 extension A point of extension to allow vendor/organization specific content. NamedValue (ISO19156) 0..* inputPropertyDatumOffset Indicates that an offset from the specified datum (specified by the ConversionGroup) should be added to the input property. Positive upwards with respect to gravity. Quantity (SWE Common 2.0) 0..1 8.2.3 ConversionEquation A conversion may be defined by an equation. This type provides a simple free-form text description of the equation. Future work may specify particular equation types or forms. Where multiple equations are used to define conversion, the range values section of this standard should be considered for use. Table 4 - ConversionEquation properties Name Definition Data types and values Multiplicity equationDefinition A string representation of the equation. No strict format is defined as many forms may exist. CharacterString 1 8.2.4 ConversionGroup A conversion group defines the association between conversion periods and specific conversions. This reflects the changing nature of a conversion through time. The group may represent all conversions available at a site (see fullConversion attribute) or a subset for exchange. Table 5 - ConversionGroup properties Name Definition Data types and values Multiplicity rangeGroup The available range tables for this conversion group (combination of inputProperty/outputProperty and monitoring point). RangeGroup 0..* monitoringPoint Association of the conversion with a 'WaterML 2.0: Part 1- Timeseries' monitoring point. MonitoringPoint (WaterML2.0 part 1) 1 period Captures the conversion period members of the group. Each period defines a period of application that makes up the group. ConversionPeriod 1..* domainFeatureType This describes the type of feature that the conversion is applicable to. This is likely to be a reference or code that describes a feature type. E.g. 'reservoir', 'river'. DomainFeatureTypeCode (see 8.2.10) 0..1 fullConversion Defines whether this group of conversions contains all the available conversions for a monitoring point, inputProperty and outputProperty combination. This would be false, for example, if the group contains only the latest conversions. Boolean 0..1 inputPropertyDatum The vertical datum that is associated with the input property. CD_VerticalDatum (ISO19111) 0..1 extension A point of extension, allowing named-value pairs, where the value is of type Any. E.g. you can name an extension point that can contain any application-specific metadata. NamedValue (ISO19156) 0..* 8.2.5 ConversionMetadata Describes metadata relating to the conversion. Generally, this is related to conversion development processes (review, development method etc.). Table 6 - ConversionMetadata properties Name Definition Data types and values Multiplicity includedGaugings References to gaugings that were used in development of this conversion. Association properties (e.g. arcrole if an XML target) may be used to specify the reason for inclusion GaugingObservation 0..* excludedGaugings References to gaugings that were excluded from this conversion in its development. Association properties (e.g. arcrole if an XML target) may be used to specify the reason for exclusion. GaugingObservation 0..* approvalDate If the conversion has been approved for production use, this represents the date the conversion was approved for use. This is not related to the conversion period start date. TM_Instant (ISO19108) 0..1 developmentMethod A code that gives an indication of the method used to develop the conversion relationship. See DevelopmentMethodCode. DevelopmentMethodCode (see 8.2.9) 0..* reviewDate Date of the last review of the conversion where the conversion was assessed for accuracy in relation to input data or observations such as gaugings. TM_Instant (ISO19108) 0..1 releaseStatus A code indicating the status of the conversion in relation to its development lifecycle. StatusCode (see 8.2.12) 0..1 versionIdentifier If a conversion has been through development of multiple versions, this version identifier allows reference to a specific version. CharacterString 0..1 lastModified This defines that date when the conversion was last modified during the conversion maintenance process. If the conversion has been approved this represents the date the conversion was approved for use, this is not related to the conversion period start date. TM_Instant (ISO19108) 0..1 extension Extension point that allows extra metadata to be added to the Conversion. This can be used to exchange system specific metadata that is not defined in the standard model. NamedValue (ISO19156) 0..* 8.2.6 ConversionPeriod A conversion period defines the time period in which a particular conversion relationship should be used. Conversion periods may re-use conversions for different periods (e.g. the physical relationship is changed for a period of time due to some installation and reverts to the previous conversion once this is removed). Table 7 - ConversionPeriod properties Name Definition Data types and values Multiplicity applicableConversion The applicable conversion for this period. Conversion 1 periodStart The start of the conversion period. TM_Instant (ISO19108) 1 periodEnd The end of the conversion period. This is used to define a gap between conversion periods or a period of validity for the current conversion table. Normal usage would involve a succession of conversion periods defined by only periodStart dates. TM_Instant (ISO19108) 0..1 phasedPeriod The phasedPeriod property specifies the period over which the conversion should be phased from the preceding table to the current table. Refer to requirement /phasing for further description. TM_PeriodDuration (ISO19108) 0..1 8.2.7 Phasing between conversions When two conversions are to be phased, the second conversion defines a period over which it should be phased into. This defines the transition period for moving between conversions. Two examples of phased transitions are show in the following diagrams. Figure: : An example phased conversion Figure: : An example conversion with no phasing 8.2.8 ConversionTable A conversion table is the primary means for exchange of conversion relationships. It encodes the relationship between the input and output of the conversion using a table of tuples. This table shall be of sufficient resolution to allow linear interpolation between points. Table 8 - ConversionTable properties Name Definition Data types and values Multiplicity point The points that make up the conversion table. TableTuple 2..* defaultQuality Defines the default quality code for the output values of the table. Individual quality assertions override the default value. This property uses swe:Quality, which allows quality assertions using text, quantities, ranges, or a vocabulary entry. Quality (SWE Common 2.0) 0..1 8.2.9 DevelopmentMethodCode A code indicating the way the conversion was developed. Table 9 - Development method code items Code item Definition URL equation The conversion was developed using a standard equation (e.g. from a known control structure). http://www.opengis.net/def/waterml/part2/1.0/DevelopmentMethodCode/equation estimated The relationship was estimated using modeling, mass balance or other quantifiable techniques http://www.opengis.net/def/waterml/part2/1.0/DevelopmentMethodCode/estimated fromGauging The conversion was developed using regular gaugings. http://www.opengis.net/def/waterml/part2/1.0/DevelopmentMethodCode/fromGauging unknown Unknown development method. http://www.opengis.net/def/waterml/part2/1.0/DevelopmentMethodCode/unknown 8.2.10 DomainFeatureTypeCode A code indicating the feature type that the conversion relates to. E.g. ‘River’, ‘Reservoir’. HY_Features [8] provides a potential high-level categorisation of relevant features. 8.2.11 PropertyCode A code that defines an observable property. E.g. ‘river level’, ‘discharge’. This list has not been defined in this standard. 8.2.12 StatusCode A proposed list of status codes to indicate where the conversion is in its development lifecycle. Table 10 - Status code items Code item Definition URL working The conversion relationship is the working version. This is the currently active conversion. http://www.opengis.net/def/waterml/part2/1.0/StatusCode/working inReview The conversion is under review. http://www.opengis.net/def/waterml/part2/1.0/StatusCode/inReview approved The conversion has been approved for use. http://www.opengis.net/def/waterml/part2/1.0/StatusCode/approved submitted The conversion has been reviewed and submitted for approval but has not yet been approved. http://www.opengis.net/def/waterml/part2/1.0/StatusCode/submitted provisional The conversion has been modified to include the latest gauging information. It is released for real time purposes only. http://www.opengis.net/def/waterml/part2/1.0/StatusCode/provisional 8.2.13 TableTuple A tuple represents a pair of measured values: the input property and the output property. Table 11 - TableTuple properties Name Definition Data types and values Multiplicity inputValue Individual value of the property being converted from. Quantity (SWE Common 2.0) 1 outputValue Individual value of the property being converted to. Quantity (SWE Common 2.0) 1 8.3 Requirements class: RangeValues Requirements Class http://www.opengis.net/spec/waterml/part2/1.0/req/uml-range-values Requirement / range-values A range group shall contain multiple RangeTables, which define metadata that changes with the input property. Requirement / start-end-value Range tables shall contain a start and end value for which the specified metadata is valid. Figure: : RangeValue UML 8.3.1 Requirements class overview Range tables are data structures that are similar to a conversion table except that the value applies across a broad input range and the content describes a state or condition that varies with the input range, rather than a conversion. Range tables may carry information that relates to, or adds value to, a conversion table. e.g. information describing the rating construction method. A range table may carry information that is of value in its own right. e.g. stage vs. Flood condition (not in flood, minor flood, moderate flood, major flood). 8.3.2 RangeEntry A single entry within the range values definition. A categorisation that defines the range of inputProperty values that are associated with a range value. The inputProperty start value is defined explicitly. The inputProperty end value is defined by the lower of the next rangeEntry startValue or the rangeTable endRangeValue. Table 12 - RangeEntry properties Name Definition Data types and values Multiplicity startValue The value from which the range entry begins. Each entry holds until the next startValue, or to the endValue if it is the last entry in the definition. Quantity (SWE Common 2.0) 1 value The range value entry (i.e. the value for the property being described. e.g. flood level, controlling feature etc.). AnyScalar (SWE Common 2.0) 1 8.3.3 RangeGroup A group of range tables that have a period of application. Table 13 - RangeGroup properties Name Definition Data types and values Multiplicity monitoringPoint The monitoringPoint associated with the rangeGroup. MonitoringPoint (WaterML2.0 part 1) 1 member The range table entry for this definition. RangeTable 1..* inputProperty The property that the range group relates to. PropertyCode (see 8.2.11) 1 rangeDefinition The varying metadata property that the range group relates to. E.g. 'a vocabulary defining flood levels' RangeDefinitionCode (see 8.3.4) 1 8.3.4 RangeDefinitionCode A code that describes the nature of the range value, e.g. ‘a textual description of different flood levels’. 8.3.5 RangeTable A RangeDefinition specifies metadata that is associated with a range of a quantity (e.g. from 2.3 to 3.5). For Conversions, this will most often relate to the input property (e.g. metadata for stage between 2.3 and 3.5 meters.). Ranges are specified by the start value and hold until the next range entry. The upper end of applicability is specified by the endValue attribute. Table 14 - RangeTable properties Name Definition Data types and values Multiplicity member An entry within the range table. RangeEntry 1..* endRangeValue The value at which the range entries end. Only the final end value is specified -- each range point holds from its start value until the next value or, if it is the last entry, to the endRangeValue. Quantity (SWE Common 2.0) 1 periodStart The start time from which this range table applies. TM_Instant (ISO19108) 1 periodEnd The end time until which the range value applies. TM_Instant (ISO19108) 0..1 8.4 Requirements class: Gaugings Requirements Class http://www.opengis.net/spec/waterml/part2/1.0/req/uml-gaugings Requirement / observed-property The observed property of the OM_Observation type shall be a composite property that includes both the inputProperty and outputProperty. E.g. a stage to discharge definition. Requirement / result-type A GaugingObservation shall have a result property (from OM_Observation) that contains two scalar values: the observed inputProperty and outputProperty. Requirement / feature-of-interest The feature of interest of a Gauging Observation shall be a MonitoringPoint (from WaterML2.0 part 1). Figure: : Gauging UML 8.4.1 Requirements class overview Gauging observations are the observations that are made to record the relationship between two properties at a specific point in time, influenced by the environmental conditions. These observations are used to either build an empirical conversion relationship or to verify a theoretically produced relationship between the properties. These observations are performed using a wide array of methods, procedures and types of hardware. The focus of this model is to capture the x-y value that results from (potentially many) observations that are made to estimate the relationship between two properties. For example, to understand the stage to discharge relationship at a gauging station, many observations are made at different x-y-z locations within a watercourse. These results are generally used to calculate an aggregate a single stage to discharge estimate for the section of the river. 8.4.2 Gauging The result of an individual gauging, comprising of two measurements of related properties. Table 15 - Gauging properties Name Definition Data types and values Multiplicity inputValue The measurement of the input property. Quantity (SWE Common 2.0) 1 outputValue The measurement of the output property. Quantity (SWE Common 2.0) 1 8.4.3 GaugingObservation Gauging observations are defined as a specialised type OM_Observation from ISO19156, with the following restrictions: the feature of interest relates to the location to which the gauging observation is applied (a MonitoringPoint); the result is a measurement tuple of the input property (e.g. stage) and the output property (e.g. discharge) values; the observed property groups the two properties together into a property pair. The alternative is to model the gauging as two separate measurement observations, one each for the independent and dependent properties. It is common practice to combine the two; and the process is captured with a type categorisation and extensible metadata properties. The variety of methods and metadata for gauging observations is extensive. Harmonisation of all the methods is not practical and would most likely rely on more fully standardised measurement methods. A metadata type captures common metadata relating to the observation, such as influencing environmental conditions, status of the observational data etc. Table 16 - GaugingObservation properties Name Definition Data types and values Multiplicity conditionsParameter Captures conditions that influenced the measurement process during the period of observation. These are values that are not tightly bound to the definition of the process; they could vary across individual observations of the same feature/process. ObservationConditions 0..1 monitoringPoint Association of the conversion with a 'WaterML 2.0: Part 1- Timeseries' monitoring point. MonitoringPoint (WaterML2.0 part 1) 1 metadataParameter Metadata for the gauging observation. GaugingObservationMetadata 0..1 streamGaugingMetadataParameter Metadata specific to stream gauging style observations. StreamGaugingMetadata 0..1 procedure The procedure used in making the observation. A specialised type is provided to detail important aspects of the observation procedure. There is huge diversity in the available methods for gauging observations; the key aspects are captured here to provide useful metadata for result interpretation. GaugingProcess 1 observedProperty The observed property pair that is being observed and calculated. This will normally be an identifier that links to a vocabulary definition for the type of physical property being measured. The observed property is a tuple that captures the two properties that are being related. PropertyPair (see 8.4.9) 1 result The resulting measurements from the gauging. Gauging 1 8.4.4 GaugingObservationMetadata Captures metadata relating to the gauging observation. Table 17 - GaugingObservationMetadata properties Name Definition Data types and values Multiplicity approvalDate Date that the gauging observation was approved. TM_Instant (ISO19108) 0..1 status Captures the status of the gauging in terms of its use in conversion relationships. StatusCode (see 8.2.12) 1 8.4.5 GaugingProcess A description of the observation process used for the gauging. Table 18 - GaugingProcess properties Name Definition Data types and values Multiplicity operator The field operator (person/organisation/contact) for the gauging observation. CI_ResponsibleParty (ISO19115) 0..1 outputPropertyMethod Describes the method that was used for observing the output property. For example: area-velocity, ADCP, mechanical meter etc. OutputMethodCode (see 8.4.6) 0..1 inputPropertyMethod Describes the method that was used for observing the input property. For example: flow weighted mean gauge height. InputMethodCode (see 8.4.7) 0..1 8.4.6 OutputMethodCode A code that describes the method used when measuring the output value. E.g. code item that describes an acoustic Doppler current profiler. 8.4.7 InputMethodCode A code that describes the method used when measuring the input value. E.g. manual staff gauge reading. 8.4.8 ObservationConditions Captures conditions affecting the measurement being taken, these properties apply to stream gauging observations. Table 19 - ObservationConditions properties Name Definition Data types and values Multiplicity streamState The state of the stream while the gauging was taking place (e.g. was the stream rising.). See also stageStart/EndOfObservation. StreamStateCode (see 8.4.13) 0..1 controlConditions Conditions adversely affecting the controls ability to function normally: e.g. weed growth, ice etc. ControlConditionCode (see 8.4.10) 0..* inputValueEndOfObservation The observed input property (e.g. stage) at the end of the observation period. Quantity (SWE Common 2.0) 0..1 inputValueStartOfObservation The observed input property (e.g. stage) at the start of the observation period. Quantity (SWE Common 2.0) 0..1 directionFromMonitoringPoint A relative direction from the monitoring point to the location the measurement was made. RelativeDirectionCode (see 8.4.11) 0..1 distanceFromMonitoringPoint The distance to the monitoring point from the measurement location. Quantity (SWE Common 2.0) 0..1 8.4.9 PropertyPair The pair of related properties that are being measured by the gauging observation. Table 20 - PropertyPair properties Name Definition Data types and values Multiplicity inputProperty The property that is being directly measured by the observation, e.g. stage. PropertyCode (see 8.2.11) 1 outputProperty The property that is being estimated, e.g. discharge. PropertyCode (see 8.2.11) 1 8.4.10 ControlConditionCode A code that describes the condition of the control. E.g. a code indicating ‘control is affected by weed growth’. The code list is not defined in this standard. 8.4.11 RelativeDirectionCode Provides codes to describe the location of the gauging measurement relative to the monitoring point. Table 21 - RelativeDirectionCode code items Code item Definition URL Upstream The measurement was performed upstream of the monitoring point. http://www.opengis.net/def/waterml/part2/1.0/RelativeDirectionCode/Upstream Downstream The measurement was performed downstream of the monitoring point. http://www.opengis.net/def/waterml/part2/1.0/RelativeDirectionCode/Downstream 8.4.12 StreamGaugingMetadata A type capturing metadata typical for stream gauging. Table 22 - StreamGaugingMetadata properties Name Definition Data types and values Multiplicity gaugedSectionLine The line (start coordinates, end coordinates) that describes the segment of the river that was measured. GM_MultiPoint (ISO19107) 0..1 wettedPerimeter The perimeter of the cross-section that is in contact with water flow. Quantity (SWE Common 2.0) 0..1 crossSectionArea The area of the cross-section that is being measured. Quantity (SWE Common 2.0) 0..1 crossSectionWidth The width of the cross-section that is being measured. Quantity (SWE Common 2.0) 0..1 8.4.13 StreamStateCode A controlled list for terms describing the stream state during the period of observation. Table 23 - StreamState code items Code item Definition URL Rising The level of the stream was rising during observation. http://www.opengis.net/def/waterml/part2/1.0/StreamStateCode/Rising Falling The level of the stream was falling during observation. http://www.opengis.net/def/waterml/part2/1.0/StreamStateCode/Falling Steady The level of the stream was steady during observation. http://www.opengis.net/def/waterml/part2/1.0/StreamStateCode/Steady 8.5 Requirements class: Sections Requirements Class http://www.opengis.net/spec/waterml/part2/1.0/req/uml-section-observations Requirement / geometry-observation A section observation shall be an OM_GeometryObservation with a result type of that is a sub-class of GM_Object. Requirement / observed-property The observedProperty of the OM_GeometryObservation shall refer to the type of section that is being observed (e.g. river cross-section) using a controlled vocabulary. Figure: : Sections UML 8.5.1 Requirements class overview Section observations are a type of geometric observation used to survey rivers sections, typically with the intention of understanding water flow. 8.5.2 SectionObservationMetadata Metadata relating to the section observation. Table 24 - SectionObservationMetadata properties Name Definition Data types and values Multiplicity startPoint The start point of which the section observation was made. GM_Point (ISO19107) 1 endPoint The end point of the section observation. GM_Point (ISO19107) 0..1 terminationType A vocabulary entry to indicate how the section observation was terminated. TerminationTypeCode (see 8.5.4) 0..1 verticalCRS The coordinate reference system used for the vertical component of the section observation. SC_VerticalCRS (ISO19111) 0..1 surveyCRS The coordinate reference system used when making the lateral component of the section observation. SC_EngineeringCRS (ISO19111) 0..1 compoundCRS The property that combines the vertical and engineering reference systems into a 2D reference system that can then be used in the observation result geometries. SC_CompoundCRS (ISO19111) 0..1 8.5.3 SectionObservation A SectionObservation is a more specialised GeometryObservation (as defined by O&M) that adds specific metadata and further refines the result to be an ordered list of geometric points. Table 25 - SectionObseration properties Name Definition Data types and values Multiplicity result The geometric result of the observation. Overrides the O&M property by specialising to a Geometry. GM_MultiPoint (ISO19107) 1 observedProperty The type of section that is being observed. E.g. river cross section. SectionPropertyCode (see 8.5.5) 1 parameterMetadata Metadata of the observation. SectionObservationMetadata 0..1 8.5.4 TerminationTypeCode A code list to describe the way the section observation has been terminated. 8.5.5 SectionPropertyCode A controlled list for observed properties of section observations. Table 26 - SectionProperty code items Code item Definition URL longSection An observation of a longitudinal section. http://www.opengis.net/def/waterml/part2/1.0/SectionPropertyCode/longSection gaugingCrossSection An observation of a gauging cross section. http://www.opengis.net/def/waterml/part2/1.0/SectionPropertyCode/gaugingCrossSection crossSection A cross section observation. http://www.opengis.net/def/waterml/part2/1.0/SectionPropertyCode/crossSection controlCrossSection An observation of a control cross section. http://www.opengis.net/def/waterml/part2/1.0/SectionPropertyCode/controlCrossSection bedSlope An observation of a section of bed slope. http://www.opengis.net/def/waterml/part2/1.0/SectionPropertyCode/bedSlope 9. XML Encoding (normative) Table 27 - Mapping of WaterML2.0 Part 2 UML to XML WaterML 2.0 Part 2 UML WaterML 2.0 Part 2 XML ConversionGroup part2:ConversionGroup Conversion part2:Conversion ConversionTable part2:ConversionTable TableTuple part2:TableTuple ConversionEquation part2 ConversionEquation ConversionPeriod part2:ConversionPeriod GaugingObservation om:OM_Observation* Gauging part2:Gauging ObservationProcess part2:ObservationProcess RangeGroup part2:RangeGroup RangeTable part2:RangeTable RangeEntry part2:RangeEntry Collection part2:Collection SectionObservation om:OM_Observation* * The specialisation of OM_Observation is provided through Schematron rather than a specialised XML type. This section defines an XML encoding of the WaterML2.0 Part 2 UML model. The mappings of the core types are show in Table 1. 9.1 Requirements class: XML encoding Requirements Class http://www.opengis.net/spec/req/waterml/part2/1.0/req/xml-rules Dependency http://www.opengis.net/spec/waterml/2.0/req/xsd-xml-rules Requirement / part1-rules The XML encodings shall conform to the XML encoding rules specified in WaterML2.0 part 1. 9.2 Requirements class: Collections XML Requirements Class href="http://www.opengis.net/spec/req/waterml/part2/1.0/req/xml-collection">http://www.opengis.net/spec/req/waterml/part2/1.0/req/xml-collection Dependency http://www.opengis.net/spec/req/waterml/part2/1.0/xml-rules Requirement / extends-part1 The WaterML2.0 Part 2 Collection type shall specialize the WaterML2.0 part 1 Collection (http://schemas.opengis.net/waterml/2.0/waterml2.xsd) by adding support for conversion, gauging and cross-section members. Requirement / valid The XML instance document shall be valid according to the XML grammar specified in http://schemas.opengis.net/waterml/part2/1.0/collection.xsd. The following example instances show the use of the collection schema type: Collection with gauging members: http://schemas.opengis.net/waterml/part2/1.0/examples/gauging-collection-expanded-example.xml Collection with conversion members: http://schemas.opengis.net/waterml/part2/1.0/examples/collection-example.xml Collection with range-value members: http://schemas.opengis.net/waterml/part2/1.0/examples/conversion-group-example-with-datum.xml 9.3 Requirements class: Conversions XML Requirements Class http://www.opengis.net/spec/req/waterml/part2/1.0/req/xml-conversions Dependency http://www.opengis.net/spec/req/waterml/part2/1.0/xml-rules Requirement / valid The XML instance document shall be valid according to the XML grammar specified in http://schemas.opengis.net/waterml/part2/1.0/conversions.xsd . Requirement / monitoring-point All Conversion objects within a ConversionGroup shall inherit the monitoringPoint property. Additionally all Conversions within a ConversionGroup shall have the same monitoringPoint property. Requirement / inputProperty All Conversion objects within a ConversionGroup shall have the same inputProperty value. If a Conversion does not specify the inputProperty value, it is inherited from the ConversionGroup. Requirement / outputProperty All Conversion objects within a ConversionGroup shall have the same outputProperty value. If a Conversion does not specify the outputProperty value, it is inherited from the ConversionGroup. The following example instances show the use of the conversion schema types: A conversion group with multiple applicable periods: http://schemas.opengis.net/waterml/part2/1.0/examples/conversion-group-linked-tables.xml A full conversion table: http://schemas.opengis.net/waterml/part2/1.0/examples/conversion-single-example.xml 9.4 Requirements class: RangeValues XML Requirements Class http://www.opengis.net/spec/req/waterml/part2/1.0/req/xml-range-values Requirement / valid The XML instance document shall be valid according to the XML grammar specified in http://schemas.opengis.net/waterml/part2/1.0/rangeValues.xsd . Requirement / range-definition The rangeDefinition xlink:href attribute shall use an HTTP URL that links to a vocabulary term indicating the type of range value that is being encoded. E.g. ‘percent of time height exceeded’ or ‘flood levels’. The following example shows how a range value may be used to encode the precent of time height exceeded for ranges of stream height: http://schemas.opengis.net/waterml/part2/1.0/examples/range-groups-example.xml 9.5 Requirements class: Gaugings XML Requirements Class http://www.opengis.net/spec/req/waterml/part2/1.0/req/xml-gaugings Dependency http://www.opengis.net/spec/waterml/2.0/req/xsd-feature-of-interest-monitoring-point Requirement / observation-type A Gauging Observation shall be encoded using the OM_Observation type, with restrictions defined in this requirements class. Requirement / result The ‘result’ property of the OM_Observation element shall be a ‘Gauging’ type. Requirement / observed-property The ‘observedProperty’ property of the OM_Observation element shall be reference a vocabulary term that defines both the input and the outputProperties that are being observed. Requirement / feature-of-interest The ‘featureOfInterest’ property of the OM_Observation element shall be reference a MonitoringPoint (WaterML2.0 part 1) or reference one using xlink. Requirement / observation-conditions The conditionsParameter property shall be encoded using the om:parameter property of OM_Observation. The ‘name’ element (of om:NamedValue) shall have an xlink:href value of ‘http://www.opengis.net/def/waterml/part2/1.0/gauging-conditions’, with the ‘value’ element containing the ObservationConditions value or a reference to one. Requirement / observation-metadata The metadataParameter property shall be encoded using the om:parameter property of OM_Observation. The ‘name’ element (of om:NamedValue) shall have an xlink:href value of ‘http://www.opengis.net/def/waterml/part2/1.0/gauging-metadata’, with the ‘value’ element containing the ObservationMetadata value or a reference to one. Requirement / stream-gauging-metadata The streamGaugingMetadataParameter type shall be encoded using the om:parameter property of OM_Observation. The ‘name’ element (of om:NamedValue) shall have an xlink:href value of ‘http://www.opengis.net/def/waterml/part2/1.0/stream-gauging-metadata’, with the ‘value’ element containing the StreamGaugingMetadatad value or a reference to one. The following example instances show the use of the gauging observation schema types: http://schemas.opengis.net/waterml/part2/1.0/examples/gauging-example-extended.xml http://schemas.opengis.net/waterml/part2/1.0/examples/gauging-example-service-output.xml http://schemas.opengis.net/waterml/part2/1.0/examples/gauging-example-with-conditions.xml 9.6 Requirements class: Section Observation Requirements Class http://www.opengis.net/spec/req/waterml/part2/1.0/req/xml-section-observation Requirement / observation-type A SectionObservation shall be encoded using the OM_Observation type, with restrictions defined in this requirements class. Requirement / observed-property A observedProperty of the OM_Observation shall indicate the type of cross-section observed using a term from the vocabulary at: ‘http://www.opengis.net/def/waterml/part2/1.0/SectionPropertyCode’ Requirement / observation-metadata The parameterMetadata shall be encoded using the om:parameter property of OM_Observation, with ‘name’ element (of om:NamedValue) having an xlink:href value of ‘http://www.opengis.net/def/waterml/part2/1.0/section-metadata’. The ‘value’ element shall contain the SectionObservationMetadata type. The following instances show some example use of the section observation schema: A local coordinate system section observation: http://schemas.opengis.net/waterml/part2/1.0/examples/cross-section-example-line-string.xml . A 3D geo-referenced section observation: http://schemas.opengis.net/waterml/part2/1.0/examples/cross-section-example-georeferenced.xml . 10. Media Types for any data encoding(s) WaterML2.0 Part 2 data conforming to this standard 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 UML Conformance Class Abstract Test Suite (normative) A.1 Conformance class: Collection Conformance Class: Collection http://www.opengis.net/spec/waterml/part2/1.0/conf/uml-collection http://www.opengis.net/spec/waterml/part2/1.0/conf/uml-collection/extends-part1 Requirement /req / uml-collection/extends-part1 Test purpose Test that the collection extends the WaterML2.0 part 1 Collection type. Test method Inspect the Collection type’s base class and ensure if is either the WaterML2.0 part 1 Collection type, or a sub-class of it. Test type Conformance A.2 Conformance class: Conversions Conformance Class: Conversions http://www.opengis.net/spec/waterml/part2/1.0/conf/uml-conversions Dependency http://www.opengis.net/spec/waterml/2.0/req/uml-monitoring-point Dependency urn:iso:dis:iso:19156:clause:9 /datums-for-stage Requirement /req / uml-conversions/datums-for-stage Test purpose Test that the conversion supports the specification of a vertical datum Test method Inspect the conversion model element to ensure a vertical datum is supported. Test type Conformance /multiple-conversion-types Requirement /req / uml-conversions/multiple-conversion-types Test purpose Check whether the conversion supports properties other than stage and discharge. Test method Inspect the inputProperty and outputProperty attributes and ensure any vocabulary terms are allowed. Test type Conformance /start-periods Requirement /req / uml-conversions/start-periods Test purpose Check whether the model supports conversions with open ended applicable periods unless specified by an end time property. Test method Inspect the ConversionPeriod type and check it has a start and end specified, with the end optional. Test type Conformance /conversion-gaps Requirement /req / uml-conversions/conversion-gaps Test purpose Check the model supports gaps in conversion periods. Test method Inspect the model to ensure that it is possible to have gaps in periods of conversion application. Test type Conformance /conversion-reuse Requirement /req / uml-conversions/conversion-reuse Test purpose Ensure that a conversion period (applicableConversion) is able to refer to the same conversion. Test method Check that Conversions are of a type that allows reference by its identity, rather than only contained within. Test type Conformance. /linear-interpolation Requirement /req / uml-conversions/linear-interpolation Test purpose Ensure that a conversion is able to represent sufficient points to enable linear interopolation. Test method Check that Conversions has an unbounded number of input/output pairs. Test type Conformance. /equation Requirement /req / uml-conversions/equation Test purpose Ensure that a Conversion is able to refer to the source equation from which the conversion has been derived. Text-based equations are only supported. Test method Check that Conversions allows a reference to a ConversionEquation. Test type Conformance. /transformation Requirement /req / uml-conversions/transformation Test purpose Ensure that a Conversion definition is sufficient to enable transformation of output data. Test method Check that Conversion contains sufficient points and metadata to allow a transformation to be run, without requiring addition transformation information. Test type Conformance. /source-system Requirement /req / uml-conversions/source-system Test purpose Ensure that a Conversion is able to express how it was originally stored. Test method Inspect the Conversion type and pass if a property allows specifying the source system of the conversion, fail otherwise. Test type Conformance. /keys Requirement /req / uml-conversions/keys Test purpose Ensure that a Conversion provides the core keys required to identify instances. Test method Inspect the Conversion type and pass if associations are provided to monitoring point, inputProperty and outputPropety. Test type Conformance. /link-to-gaugings Requirement /req / uml-conversions/link-to-gaugings Test purpose Ensure that a Conversion can express which gauging observations were used in conversion development. This should include used and/or excluded gaugings. Test method Inspect the Conversion type and check whether an association with GaugingObservation exists for both included and excluded observations. Test type Conformance. /phasing Requirement /req / uml-conversions/phasing Test purpose Ensure that a Conversion provides sufficient metadata to describe phasing between conversions. Test method Inspect the ConversionGroup type and pass if a phase period can be specified within each ConversionPeriod definition. Test type Conformance. /table-point-quality Requirement /req / uml-conversions/table-point-quality Test purpose Ensure that a ConversionTable can express the quality of each table point individually or as a default for the whole table. Test method Inspect the ConversionTable type and pass if a default quality is provided, along with a quality for each point within the ConversionTable. Test type Conformance. /review-process-metadata Requirement /req / uml-conversions/review-process-metadata Test purpose Ensure that a Conversion provides metadata properties relating to the status of its development. Test method Inspect the Conversion object and pass if it is possible to described the state of the conversion development using a vocabulary. Test type Conformance. /range-group Requirement /req / uml-conversions/range-group Test purpose Ensure that a Conversion provides a RangeGroup type to describe metadata that varies according to the inputProperty. Test method Inspect the Conversion object and pass if it has a property that is of type RangeGroup. Test type Conformance. A.3 Conformance class: RangeValues Conformance Class: RangeValues http://www.opengis.net/spec/waterml/part2/1.0/conf/uml-range-values /range-values Requirement /req/uml-range-values/range-values Test purpose Ensure that a RangeGroup is associated with a ConversionGroup and defines sufficient metadata to described varying metadata for the inputProperty. Test method Inspect the RangeGroup and ensure it is associated with an inputProperty and provides a range definition. Test type Conformance. /start-end-value Requirement /req / uml-range-values/start-end-value Test purpose Ensure that a RangeTable contains a start and end value, describing the period for which this range value is valid. Test method Inspect the RangeTable type and pass if it provides both period start and end times, with the start being mandatory. Test type Conformance. A.4 Conformance class: Gaugings Conformance Class: Gaugings http://www.opengis.net/spec/waterml/part2/1.0/conf/uml-gaugings /observed-property Requirement /req / uml-gaugings/observed-property Test purpose Ensure that the GaugingObservation supports an observed property containing an input and output property. Test method Inspect the model and pass if a type is available that defines a property tuple containing an input and output property. Test type Conformance. /result-type Requirement /req / uml-gaugings/result-type Test purpose Ensure that a GaugingObservation has a result of two scalar values (input and output measurements). Test method Inspect the GaugingObservation type and pass if the OM_Observation:result property is restricted to a type that supports two measurement values. Test type Conformance. /feature-of-interest Requirement /req / uml-gaugings/feature-of-interest Test purpose Ensure that a GaugingObservation has a feature of interest of a MonitoringPoint from WaterML2.0 part 1. Test method Inspect the OM_Observation:featureOfInterest property and pass if it is restricted to be a MonitoringPoint type. Test type Conformance. A.5 Conformance class: Sections Conformance Class: Sections http://www.opengis.net/spec/waterml/part2/1.0/conf/uml-sections /geometry-observation Requirement /req / uml-sections/geometry-observation Test purpose Ensure that a SectionObservation has an appropriate geometric result type Test method Inspect the OM_Observation:result property and pass if it is restricted to be a GM_Object type. Test type Conformance. /geometry-observation Requirement /req / uml-sections/observed-property Test purpose Ensure that a SectionObservation has an appropriate observed property type. Test method Inspect the OM_Observation:observedProperty type – pass if the property has been restricted to an appropriated vocabulary (preferably from http://www.opengis .net/def/waterml/part2/1.0/SectionPropertyCode ) Test type Conformance. Annex B XML Conformance Class Abstract Test Suite (normative) B.1 Conformance Class: XML Encoding Conformance Class: XML Encoding http://www.opengis.net/spec/req/waterml/part2/1.0/conf/xml-rules Requirements http://www.opengis.net/spec/req/waterml/part2/1.0/req/xml-rules Dependency http://www.opengis.net/spec/waterml/2.0/conf/xsd-xml-rules Test /part1-rules Requirement /req/xml-rules/part1-rules Test purpose Verify that the XML instance conforms to the common XML encoding rules as specified by WaterML2.0 part 1 XML encoding. Test method Execute all conformance tests specified by http://www.opengis.net/spec/waterml/2.0/conf/xsd-xml-rules . B.2 Conformance Class: Collections XML Conformance Class: Collections XML http://www.opengis.net/spec/req/waterml/part2/1.0/conf/xml-collection Requirements http://www.opengis.net/spec/req/waterml/part2/1.0/req/xml-collection Dependency http://www.opengis.net/spec/req/waterml/part2/1.0/conf/xml-rules Test /extends-part1 Requirement /req/xml-collection/extends-part1 Test purpose Verify that the XML Collection type extends the WaterML2.0 part 1 collection type. Test method Inspect XML Schema to ensure Collection type extends the CollectionType specified by http://schemas.opengis.net/waterml/2.0/collection.xsd . Test /valid Requirement /req/xml-collection/valid Test purpose Verify that the XML instance document is a valid collection. Test method Validate the XML instance document using the XML Schema document: http://schemas.opengis.net/waterml/part2/1.0/collection.xsd . B.3 Conformance Class: Conversions XML Conformance Class: Conversions XML http://www.opengis.net/spec/req/waterml/part2/1.0/conf/xml-conversions Requirements http://www.opengis.net/spec/req/waterml/part2/1.0/req/xml-conversions Dependency http://www.opengis.net/spec/req/waterml/part2/1.0/conf/xml-rules Test /valid Requirement /req/xml-conversion/valid Test purpose Verify that the XML instance is valid. Test method Validate the XML instance document using the XML Schema document: http://schemas.opengis.net/waterml/part2/1.0/conversions.xsd . Test /monitoring-point Requirement /req/xml-conversion/monitoring-point Test purpose Verify that all the Conversions within a ConversionGroup have the same monitoringPoint property. Test method Inspect the value of the monitoringPoint property of each Conversion object. If they are the same then pass, fail otherwise, with the following rule: If no monitoringPoint is specified for a conversion then it inherits its value from the ConversionGroup. Test /inputProperty Requirement /req/xml-conversion/inputProperty Test purpose Verify that all the Conversions within a ConversionGroup have the same inputProperty value. Test method Inspect the value of the inputProperty property of each Conversion object. If they are the same then pass, fail otherwise, with the following rule: If no inputProperty is specified for a conversion then it inherits its value from the ConversionGroup. Test /conf/xml-conversion/outputProperty Requirement /req/xml-conversion/outputProperty Test purpose Verify that all the Conversions within a ConversionGroup have the same outputProperty value. Test method Inspect the value of the outputProperty property of each Conversion object. If they are the same then pass, fail otherwise, with the following rule: If no outputProperty is specified for a conversion then it inherits its value from the ConversionGroup. B.4 Conformance Class: Range Values XML Conformance Class: Range Values XML http://www.opengis.net/spec/req/waterml/part2/1.0/conf/xml-range-values Requirements http://www.opengis.net/spec/req/waterml/part2/1.0/req/xml-range-values Dependency http://www.opengis.net/spec/req/waterml/part2/1.0/conf/xml-rules Test /valid Requirement /req/xml-range-values/valid Test purpose Verify that the XML instance is valid. Test method Validate the XML instance document using the XML Schema document: http://schemas.opengis.net/waterml/part2/1.0/rangeValues.xsd . Test /range-definition Requirement /req/xml-range-values/range-definition Test purpose Verify that the definition of the range values is specified in the range group. Test method Verify the RangeGroup/rangeDefinition/@xlink:href value is a valid vocabulary term. B.5 Conformance Class: Gaugings XML Conformance Class: Gaugings XML http://www.opengis.net/spec/req/waterml/part2/1.0/conf/xml-gaugings Requirements http://www.opengis.net/spec/req/waterml/part2/1.0/req/xml-gaugings Dependency http://www.opengis.net/spec/req/waterml/part2/1.0/conf/xml-rules Test /observation-type Requirement /req/xml-gaugings/observation-type Test purpose Verify that the XML instance is a valid OM_Observation type. Test method Validate the XML instance document using the O&M XML Schema document: http://schemas.opengis.net/om/2.0/observation.xsd Test /result Requirement /req/xml-gaugings/result Test purpose Verify that the child element of the OM_Observation result property is a ‘Gauging’. Test method Validate the XML instance document the ‘result’ test in the Schematron file at gauging-observation.sch. Test /observed-property Requirement /req/xml-gaugings/observed-property Test purpose Verify that the input and output property have been defined using the observedProperty xlink:href attribute. Test method Inspect the vocabulary after resolving the HTTP URL in the OM_Observation/observedProperty/@xlink:href attribute. Ensure sufficient definition is provided to define both the input and output properties. Test /feature-of-interest Requirement /req/xml-gaugings/feature-of-interest Test purpose Verify that a Monitoring Point has been specified as the feature of interest of the OM_Observation. Test method Validate the XML instance document the ‘featureOfInterest test in the Schematron file at gauging-observation.sch. Test /observation-conditions Requirement /req/xml-gaugings/observation-conditions Test purpose Verify observation conditions are being encoded using the om:parameter property with the specified vocabulary term ‘http://www.opengis.net/def/waterml/part2/1.0/gauging-conditions’. Test method Inspect the om:parameter entries and ensure that any entries using the ObservationConditions type has set the om:name/@xlink:href to ‘http://www.opengis.net/def/waterml/part2/1.0/gauging-conditions’. Test /observation-metadata Requirement /req/xml-gaugings/observation-metadata Test purpose Verify observation metadata are being encoded using the om:parameter property with the specified vocabulary term ‘http://www.opengis.net/def/waterml/part2/1.0/gauging-metadata. Test method Inspect the om:parameter entries and ensure that any entries using the GaugingObservationMetadata type has set the om:name/@xlink:href to ‘http://www.opengis.net/def/waterml/part2/1.0/gauging-metadata. B.6 Conformance Class: Section Observation XML Conformance Class: Section Observation XML http://www.opengis.net/spec/req/waterml/part2/1.0/conf/xml-section-observation Requirements http://www.opengis.net/spec/req/waterml/part2/1.0/req/xml-section-observation Dependency http://www.opengis.net/spec/req/waterml/part2/1.0/conf/xml-rules Test /observation-type Requirement /req/xml-section-observation/observation-type Test purpose Verify that the XML instance uses a valid OM_Observation type to encod a section observation. Test method Validate the XML instance document using the O&M XML Schema document: http://schemas.opengis.net/om/2.0/observation.xsd Test /observed-property Requirement /req/xml-section-observation/observed-property Test purpose Verify that the XML instance uses a valid vocabulary term for the observedProperty element. Test method Inspect the om:observedProperty element and ensure it’s xlink:href attribute refers to a code within the http://www.opengis.net/def/waterml/part2/1.0/SectionPropertyCode vocabulary. Bibliography Beven, K., Buytaert, W., & Smith, L. A. (2012). On virtual observatories and modelled realities (or why discharge must be treated as a virtual variable). Hydrological Processes, 26(12), 1905-1908. Beven, K., & Westerberg, I. (2011). On red herrings and real herrings: disinformation and information in hydrological inference. Hydrological Processes, 25(10), 1676-1680. G. Di Baldassarre and A. Montanari (2009), Uncertainty in river discharge observations: a quantitative analysis. Hydrology and Earth System Sciences. Hamilton, AS, Moore, RD. 2012. Quantifying uncertainty in streamflow records. Canadian Water Resources Journal. 37(1):3-21. José-Luis Guerrero, Ida K. Westerberg, Sven Halldin, Chong-Yu Xu, Lars-Christer Lundin, Temporal variability in stage–discharge relationships, Journal of Hydrology, Volumes 446–447, 26 June 2012, Pages 90-102, ISSN 0022-1694, 10.1016/j.jhydrol.2012.04.031 McMillan , H., Krueger, T. and Freer, J. 2012, Benchmarking observational uncertainties for hydrology: rainfall, river discharge and water quality. Hydrol. Process.. doi: 10.1002/hyp.9384 Stephen R. Jackson, David R. Maidment. RiverML: A Harmonized Transfer Language for River Hydraulic Models. Tomkins, Kerrie M. “Uncertainty in streamflow rating curves: methods, controls and consequences.” Hydrological Processes (2012). Footnotes [1] www.opengeospatial.org/standards/waterml [2] http://cite.opengeospatial.org/ [3] www.opengeospatial.org/standards/waterml [4] Harmonising standards for water observations data, discussion paper. OGC 09-124r2, [5] Graph extracted from http://www.water.nsw.gov.au/. Identifiers and site details removed. [6] Extracted from WMO Guide to Hydrological Practices, Volume I. [7] Beven, K., & Westerberg, I. (2011). On red herrings and real herrings: disinformation and information in hydrological inference. Hydrological Processes, 25(10), 1676-1680. [8] OGC HY_Features: a Common Hydrologic Feature Model. https://portal.opengeospatial.org/files/?artifact_id=55157