Web-based Hydroinformatics Systems

Web-based Hydroinformatics Systems XML-based Techniques

30.01.2018 XML - Standards 1 Web-based Hydroinformatics Systems

SensorML and (SWE)

30.01.2018 XML - Standards 2 Web-based Hydroinformatics Systems SensorML Overview • name: Sensor Model Language • standardization: Open Geospatial Consortium (OGC) • version: 1.0 • basis: XML, GML 3.1.1 (feature model) • purpose: definition of geometric/geospatial, dynamic, and observational characteristics of sensors and sensor systems • not included: measurement data such as time series • HI application: metadata on observation and measurement systems based on sensors

30.01.2018 XML - Standards 3 Web-based Hydroinformatics Systems SensorML OGC Standard

reference: OSGeoLive

30.01.2018 XML - Standards 4 Web-based Hydroinformatics Systems SensorML Overview • SensorML describes an information model and XML encodings that enable discovery and tasking of Web-resident sensors as well as exploitation of sensor observations. application: to define models and XML Schema for describing measurements by a sensor system, as well as post-measurement processing. • SensorML models detectors and sensors as processes that convert real phenomena to data • processes define their inputs, outputs, parameters, and method, as well as provide relevant metadata

30.01.2018 XML - Standards 5 Web-based Hydroinformatics Systems SensorML Models and Processes • descriptions of sensors and sensor systems for inventory management • sensor and process information for resource and observation discovery • support the processing and analysis of the sensor observations • support the geo-location of observed values (measured data) • provide performance characteristics (e.g. accuracy, threshold, etc.); • provide an explicit description of the process by which an observation was obtained • provide an executable process chain for deriving new data products on demand (i.e. derivable observation); • archive fundamental properties and assumptions regarding sensor systems

reference: OSGeoLive

30.01.2018 XML - Standards 6 Web-based Hydroinformatics Systems SensorML Elements Detector atomic element of a measurement system defining sampling and response characteristic of a simple detection device, one input and one output scalar value Sensor a complete sensor including several detectors Component transformation process, detectors, actuators, physical filters System set of components, describes a process chain to the real world Process Model atomic non-physical processing block incl. inputs, outputs and parameters. Process Method definition of the behavior and interface of a Process Model can be stored in a library for software reuse Process Chain composite by interconnected Process Models

30.01.2018 XML - Standards 7 Web-based Hydroinformatics Systems SensorML OGC Sensor Web Enablement (SWE): Framework using several OGC standards: • Observations & Measurements (O&M) general models and XML encodings for observations and measurements • PUCK Protocol Standard protocol to retrieve a SensorML description, sensor "driver" code, and other information from the device itself -> automatic sensor installation, configuration and operation • Sensor Model Language (SensorML) standard models and XML Schema for describing the processes within sensor and observation processing systems • Sensor Observation Service (SOS) open interface for a web service to obtain observations and sensor and platform descriptions from sensors • Sensor Planning Service (SPS) open interface for a web service to determine the feasibility of collecting data and to submit collection requests • SWE Common Data Model defines low-level data models for exchanging sensor related data between nodes of the SWE framework. • SWE Service Model defines data types for common use across SWE services 30.01.2018 XML - Standards 8 Web-based Hydroinformatics Systems XML-based Technology Abstraction Example Hydroinformatics -> O&M ISO 19156 gauging station -> SF_SamplingPoint borhole, observation well -> SF_SamplingCurve river cross-section -> SF_SamplingSurface

30.01.2018 XML - Standards 9 Web-based Hydroinformatics Systems OGC Services

reference: Luis Bermudez / OGC

30.01.2018 XML - Standards 10 Web-based Hydroinformatics Systems SensorML Sensor Web Enablement • technical concept example

30.01.2018 XML - Standards 11 Web-based Hydroinformatics Systems OGC Services

reference: Luis Bermudez / OGC

30.01.2018 XML - Standards 12 Web-based Hydroinformatics Systems OGC Services

reference: Luis Bermudez / OGC

30.01.2018 XML - Standards 13 Web-based Hydroinformatics Systems OGC Services

reference: Luis Bermudez / OGC

30.01.2018 XML - Standards 14 Web-based Hydroinformatics Systems SensorML Application in Hydroinformatics Example: Smart Networks for the Water Industry “SmartWater”

Online-Monitoring Real-Time Operation Optimization

by AquamatiX 2014

30.01.2018 XML - Standards 15 Web-based Hydroinformatics Systems SensorML Application in Hydroinformatics Example: Smart Water Metering

Online-Metering Real-Time Operation Optimization

by Alliance for Water Efficiency 2010

30.01.2018 XML - Standards 16 Web-based Hydroinformatics Systems

WaterML CUASHI

30.01.2018 XML - Standards 17 Web-based Hydroinformatics Systems WaterML Overview • name: Water Markup Language • standardization: Open Geospatial Consortium (OGC) • version: 2.0 (2012) • basis: XML, GML 3.1.1 (feature model) • purpose: data exchange standard in hydrology hydro-meteorological observations and measurements -> mainly time series

30.01.2018 XML - Standards 18 Web-based Hydroinformatics Systems WaterML Observation -> Time Series

30.01.2018 XML - Standards 19 Web-based Hydroinformatics Systems WaterML Partner • Commonwealth Scientific and Industrial Research Organisation CSIRO (AUS) • San Diego Supercomputer Center (US) • Australian Bureau of Meteorology (AUS) • Geological Survey of Canada, Natural Resources Canada (CA) • U.S. Geological Survey USGS (US) • KISTERS AG (Aachen/D) • NOAA National Oceanic and Atmospheric Administration (US) • Deltares (Delft/NL) • Federal Waterways Engineering and Research Institute (Karlsruhe/D) • disy Informationssysteme GmbH (Karlsruhe/D) • German Federal Institute of Hydrology BFG (Koblenz/D) • International Office For Water – Sandre French National Service for Water Data and Common Reference (F)

30.01.2018 XML - Standards 20 Web-based Hydroinformatics Systems WaterML History Parallel Developments -> harmonized in WaterML 2.0 • Xhydro Germany: developed by disy and KISTERS • WaterML USA: developed for CUAHSI • WaterDataTransferFormat Australia: CSIRO, Bureau of Meteorology (AU)

30.01.2018 XML - Standards 21 Web-based Hydroinformatics Systems Water ML

30.01.2018 XML - Standards 22 Web-based Hydroinformatics Systems WaterML – Example File KISTERS WaterML2.0 demonstration based on GRDC data 2011-10-19T00:00:00Z KISTERS KiWIS 2000-01-01T00:00:00Z 2000-01-10T00:00:00Z 2000-01-10T00:00:00Z

30.01.2018 XML - Standards 23 Web-based Hydroinformatics Systems WaterML – Example File P1D 6731310 Dramselv Norway 30.01.2018 XML - Standards 24 Web-based Hydroinformatics Systems WaterML – Example File Norwegian Water Resources and Energy Directorate 9.908 59.881 +1 30.01.2018 25 false Web-based Hydroinformatics Systems WaterML – Example File false P1D 2000-01-01T00:00:00.000Z 266

30.01.2018 XML - Standards 26 Web-based Hydroinformatics Systems WaterML – Example File 2000-01-02T00:00:00.000Z 266 2000-01-05T00:00:00.000Z 258 2000-01-06T00:00:00.000Z 265 ….

30.01.2018 XML - Standards 27 Web-based Hydroinformatics Systems CUAHSI-HIS Overview Consortium of Universities for the Advancement of Hydrologic Science, Inc. • https://www.cuahsi.org Water Data Centre

WaterML R- Package: https://cran.r-project.org/web/packages/WaterML/ 30.01.2018 XML - Standards 28 Web-based Hydroinformatics Systems CUAHSI-HIS WaterML: HydroServer

30.01.2018 XML - Standards 29 Web-based Hydroinformatics Systems CUAHSI-HIS WaterML: HydroCentral and HydroDesktop

30.01.2018 XML - Standards 30 Web-based Hydroinformatics Systems

OpenMI

30.01.2018 XML - Standards 31 Web-based Hydroinformatics Systems OpenMI Overview • name: Open Modeling Interface • standardization: OpenMI Association • version: 1.4 and 2.0 • Web: http://www.openmi.org • purpose: software component interface definition • Application: model coupling “during runtime” model: any kind of data source e.g. - numerical simulation models - data base, information systems - data analysis models (e.g. AI, statistics) - visualization/presentation models - … 30.01.2018 XML - Standards 32 Web-based Hydroinformatics Systems OpenMI History – EU research activity • HarmonIT 2002-2005 EU project within 5th Framework programme main partners: DHI, Delft Hydraulics, Wallingford Software -> OpenMI v1.0 • OpenMI-Life 2006-2010 EU project within LIFE Environment programme -> OpenMI v1.4 • OpenMI since 2010 Association -> OpenMI v2.0 FluidEarth -> HR Wallingford/UK HydroDesktop, Water Data Center -> CUASHI/US -> OGC: proposed candidate standard

30.01.2018 XML - Standards 33 Web-based Hydroinformatics Systems OpenMI Aim • The aim of the OpenMI is to provide a mechanism by which physical and socioeconomic process models can be linked to each other, to other data sources and to a variety of tools at runtime, hence enabling process interactions to be better modeled.

reference: Tom Whiteaker, Introduction to OpenMI ,www.openmi.org

30.01.2018 XML - Standards 34 Web-based Hydroinformatics Systems Problem

Model Coupling Evaporation

Precipitation Integrated Water Ressource Surface runoff

Management Rainfall runoff - hydrology model - hydraulics How ? - groundwater - ecology Evaporation River - urban water Coast Estuary - irrigation/drainage - … Hydraulic model

30.01.2018 XML - Standards 35 Web-based Hydroinformatics Systems Numerical Simulation Models Typical Structure • examples: MIKE11/21 MIKESHE MIKEUrban FeFlow ModFlow ISIS1D/2D Telemac Hec-RAS/HMS SWAT Infoworks

30.01.2018 XML - Standards 36 Web-based Hydroinformatics Systems OpenMI Modelling Coupling Approach • file based data exchange data import/export • integrated, closed system internal API and data access/exchange • open system external, standardized API incl. data exchange and runtime control

30.01.2018 XML - Standards 37 Web-based Hydroinformatics Systems Model Coupling OpenMI: Standard API • request / response principle • communication on “engine” level • open API • data exchange • runtime control

30.01.2018 XML - Standards 38 Web-based Hydroinformatics Systems Data Exchange Example

30.01.2018 XML - Standards 39 Web-based Hydroinformatics Systems OpenMI Application Domain Application Roots Get values Rainfall runoff • coupling HI numerical models data exchange, runtime control Get values Hydraulic • water/environmental domain Application Potential Get values Ecology • any model asking for data • not limited to simulation tools Get values Economic • interdisciplinary systems

Interface 30.01.2018 XML - Standards 40 Web-based Hydroinformatics Systems Value Exchange Value Properties • numbers • “metadata” what ? where ? when? how ?

30.01.2018 XML - Standards 41 Web-based Hydroinformatics Systems Value Exchange (GetValue) Value Properties • what ? quantity problem: different types (e.g. discharge and velocity) different units (e.g. m, km, feet, miles) requires transformation • where ? location problem: different spatial approximation / grids different spatial assumptions e.g. 1D and 2D requires interpolation and transformation • when ? Time problem: different temporal approximation / time step requires interpolation and transformation

30.01.2018 XML - Standards 42 Web-based Hydroinformatics Systems What Value Description • Quantity - ID - Description - ValueType • Unit - ID - Description - Factor - Offset • Dimension - SI combination - Système international d’unités 30.01.2018 XML - Standards 43 Web-based Hydroinformatics Systems Where Value Location • elements: locations of quantities

30.01.2018 XML - Standards 44 Web-based Hydroinformatics Systems Where Value Location • element types - point - line - polyline - polygon - polyhedron

- 2D - 3D

30.01.2018 XML - Standards 45 Web-based Hydroinformatics Systems When Value Time • when to exchange values - instantaneous moment in time (a timestep) - a period over time (a time span) • runtime impact - time step of simulation and time step of exchange - synchronous simulation: waiting for the slowest - blocking mechanism

30.01.2018 XML - Standards 46 Web-based Hydroinformatics Systems How Value Preparation operations which define how data is exchanged between two models • Spatial - Interpolation - TakeNearest • Temporal - Aggregation - Extrapolation

30.01.2018 XML - Standards 47 Web-based Hydroinformatics Systems Model Coupling Model Composition (Examples) • linear chain of models rainfall runoff river flow groundwater • bidirectional chain junction of two rivers outflow -> Q boundary H boundary <- water level • Logical decision chain access to monitoring data or forecast values

30.01.2018 XML - Standards 48 Web-based Hydroinformatics Systems Global Steps • model set-up set-up of the model(s) (as usual) • OpenMI model specification definition of the quantities a model can exchange including elements for exchange (generated by the sofware, *.omi + dll) • configuration of the OpenMI system composition of the set of models including their relationships to couple in terms of quantities and elements • OpenMI system runtime operation trigger the system to run the coupled models including data exchange on request • result analysis post-processing of the model(s) results (as usual)

30.01.2018 XML - Standards 49 Web-based Hydroinformatics Systems Handling GetValues Requests

30.01.2018 XML - Standards 50 Web-based Hydroinformatics Systems Implementaion

30.01.2018 XML - Standards 51 Web-based Hydroinformatics Systems Implementaion OpenMI SDK Minimum number of functions the Wrapper class has to implement

//== Theorg.OpenMI.Utilities.Wrapper.IEngine interface //Component description methods (Inherited from IRunEngine) == double GetMissingValueDefinition(); // Execution control methods (Inherited from IRunEngine) string GetComponentID(); void Initialize(Hashtable properties); string GetComponentDescription(); bool PerformTimeStep(); // Model description methods void Finish(); string GetModelID(); //Time methods (Inherited from IRunEngine) ITime string GetModelDescription(); GetCurrentTime(); double GetTimeHorizon(); ITime GetInputTime(string QuantityID, string // Exchange items ElementSetID); Int GetInputExchangeItemCount(); ITimeStamp GetEarliestNeededTime(); int GetOutputExchangeItemCount(); //Data access methods (Inherited from IRunEngine) org.OpenMI.Backbone GetInputExchangeItem(int Void SetValues(string QuantityID, string ElementSetID, exchangeItemIndex); IValueSet values); org.OpenMI.Backbone GetOutputExchangeItem(int IValueSet GetValues(string QuantityID, string exchangeItemIndex); ElementSetID); 30.01.2018 XML - Standards 52 Web-based Hydroinformatics Systems OpenMI Introduction Movie / Demonstration • www.openmi.org/dashboard2/OpenMI_Introduction.wmv?attredirects=0

reference: Jan Gregersen, Introduction to OpenMI ,www.openmi.org

30.01.2018 XML - Standards 53