# Water Quality Interoperability Experiment
## -SensorThings API

Sylvain Grellet, Hylke van Der Schaaf, Katharina Schleidt

► To cite this version:

Sylvain Grellet, Hylke van Der Schaaf, Katharina Schleidt. Water Quality Interoperability Experiment -SensorThings API. Workshop on Hydrological Data Exchange, Standardization, and Interoperability (WHOS), Nov 2024, Cape town, South Africa. hal-05009034

HAL Id: hal-05009034

https://brgm.hal.science/hal-05009034v1

Submitted on 27 Mar 2025

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
<figure><img src="image_2.png" /></figure>

RÉPUBLIQUE
FRANÇAISE

Liberté
Égalité
Fraternité

# Water Quality Interoperability Experiment
- SensorThings API

Sylvain Grellet - BRGM

Hylke van der Schaaf - Fraunhofer IOSB

Katharina Schleidt - DataCove

20/11/2024

WHOS Training in South Africa - Final Online Session 4
# Open Geospatial Consortium (OGC) ?

<figure><img src="image_3.png" /></figure>

<figure><img src="image_4.png" /></figure>

## What is OGC?

A hub for thought leadership, innovation, and standards for all things related to location

### Our Vision

Building the future of location with community and technology for the good of society

### Our Mission

Make location information Findable, Accessible, Interoperable, and Reusable (FAIR)

### Our Approach

A proven collaborative and agile process combining consensus-based standards, innovation project, and partnership building
<figure><img src="image_5.png" /></figure>

# OGC Interoperability Experiment (IE) ?

* OGC Innovation Continuum
Innovation Roadmap
Development (What)

Innovation Roadmap
Execution (How)

<figure><img src="image_6.png" /></figure>
<figure><img src="image_7.png" /></figure>

# OGC Interoperability Experiment (IE) ?

* Applied research initiative led by OGC members and supported by OGC staff

=> Most of the time building on the current standards and best practices : the 'OGC Baseline' (pushing them to their limits / applying them to a new domain)

* Non-OGC member participation is allowed (usually as observers)

=> In several IEs: GitHub + mailing list + meetings are open

=> so the 'observers' can be really active

* Results documented in Engineering Report(s) or other OGC documents and generally used to define new Standardization work.

=> Some lead to Change Request to the 'OGC Baseline'

=> Some to Best Practices in applying it

=> Some fill in gaps in the 'OGC Baseline' proposing document ready for the standardization process: exactly what happened to all the WaterML2.0 series of standards

=> Most important : it's during the IE that the group decides what the output of the IE will be : through experimentation
<figure><img src="image_8.png" /></figure>

# OGC Water Quality IE tl;dr;

* 1º/ WMO-UNEP-WHO-UNESCO Water Quality workshop in March 2022 (29-31) : Surface & Ground water

* 2º/ Kick-off 13/09/2022

* ... 83 (+ impromptu) meetings later

* A Best Practice on Observations, Measurements and Samples for Water Quality

* A ST API 1.1 + WQ extension (reference implementation in FROST) paving the road to ST API 2.0

* Running implementations in various national, organization endpoints (including clients)

* A steadily growing uptake through initial IE partners + 2 important EU projects and WMO members

<figure><img src="image_9.png" /></figure>

3º/ Engineering Report currently being written preparing next steps on

- a Best Practice for WQ Data Exchange : upgrading OGC WaterML2.0 - Part 5 (OGC 14-003) : O&M Profile for WQ Data

- a review of OGC WaterML2.0 - Part 1 (OGC 10-126r3) : Timeseries

Both to be updated with regards O&M revision into OMS + major changes in the context of OGC APIs

It all starts here : https://github.com/opengeospatial/WaterQualityIE/
(model, FROST plugin, ...)
<figure><img src="image_10.png" /></figure>

Water Quality Use Cases

<figure><img src="image_11.png" /></figure>

<figure><img src="image_12.png" /></figure>

<figure><img src="image_13.png" /></figure>

<figure><img src="image_14.png" /></figure>
<figure><img src="image_15.png" /></figure>

Sample collection

<figure><img src="image_16.png" /></figure>

<figure><img src="image_17.png" /></figure>

Processing and Analysis

<figure><img src="image_18.png" /></figure>

<figure><img src="image_19.png" /></figure>

Data

<table><thead><tr><th>A</th><th>B</th><th>C</th><th>D</th><th>E</th><th>F</th><th>G</th><th>H</th><th>I</th><th>J</th><th>K</th><th>L</th><th>M</th><th>N</th><th>O</th><th>P</th><th>Q</th></tr></thead><tbody><tr><td>1</td><td>Org Id</td><td>-</td><td>Org_Fo</td><td>-</td><td>Project</td><td>-</td><td>Project</td><td>-</td><td>Locatio</td><td>-</td><td>Locatio</td><td>-</td><td>Locatio</td><td>-</td><td>Locatio</td><td>-</td><td>Locatio</td><td>-</td></tr><tr><td>2</td><td>11NPSWR</td><td>National</td><td>P</td><td>"REDWOC"</td><td>"Changes 11NPSWR:Elam Cree River/58</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>3</td><td>11NPSWR</td><td>National</td><td>P</td><td>"REDWOC"</td><td>"Changes 11NPSWR:Little Lost River/58</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>4</td><td>11NPSWR</td><td>National</td><td>P</td><td>"REDWOC"</td><td>"Changes 11NPSWR:Harry Wei River/58</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>5</td><td>11NPSWR</td><td>National</td><td>P</td><td>"REDWOC"</td><td>"Changes 11NPSWR:North Forl River/58</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>6</td><td>11NPSWR</td><td>National</td><td>P</td><td>"REDWOC"</td><td>"Changes 11NPSWR:Tom McDri River/Stre The mont California United Sta Humboldt US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>7</td><td>11NPSWR</td><td>National</td><td>P</td><td>"REDWOC"</td><td>"Changes 11NPSWR:North Forl River/Stre The mont California United Sta Humboldt US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>8</td><td>11NPSWR</td><td>National</td><td>P</td><td>"REDWOC"</td><td>"Changes 11NPSWR:Tom McDri River/Stre The mont California United Sta Humboldt US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>9</td><td>11NPSWR</td><td>National</td><td>P</td><td>"REDWOC"</td><td>"Changes 11NPSWR:MacArthu River/Stre The mont California United Sta Humboldt US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>10</td><td>11NPSWR</td><td>National</td><td>P</td><td>"REDWOC"</td><td>"Changes 11NPSWR:Elam Cree River/Stre The mont California United Sta Humboldt US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>11</td><td>11NPSWR</td><td>National</td><td>P</td><td>"REDWOC"</td><td>"Changes 11NPSWR:Tom McDri River/Stre The mont California United Sta Humboldt US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>12</td><td>11NPSWR</td><td>National</td><td>P</td><td>"REDWOC"</td><td>"Changes 11NPSWR:MacArthu River/Stre The mont California United Sta Humboldt US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>13</td><td>11NPSWR</td><td>National</td><td>P</td><td>"REDWOC"</td><td>"Changes 11NPSWR:Harry Wei River/Stre The mont California United Sta Humboldt US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>62</td><td>NIDEP_BF</td><td>NIDEP Bur</td><td>"HIBI2011"</td><td>"Headwa NIDEP_BF</td><td>Broi River/Stream</td><td>New Jersey United Sta Sussex</td><td>US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>63</td><td>NIDEP_BF</td><td>NIDEP Bur</td><td>"HIBI2011"</td><td>"Headwa NIDEP_BF</td><td>Havenme River/Stream</td><td>New Jersey United Sta Bergen</td><td>US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>64</td><td>NIDEP_BF</td><td>NIDEP Bur</td><td>"HIBI2011"</td><td>"Headwa NIDEP_BF</td><td>Beathys Br River/Stream</td><td>New Jersey United Sta Mercer</td><td>US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>65</td><td>NIDEP_BF</td><td>NIDEP Bur</td><td>"HIBI2011"</td><td>"Headwa NIDEP_BF</td><td>Shabakun River/Stream</td><td>New Jersey United Sta Mercer</td><td>US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>66</td><td>NIDEP_BF</td><td>NIDEP Bur</td><td>"HIBI2011"</td><td>"Headwa NIDEP_BF</td><td>Wawayan River/Stream</td><td>New Jersey United Sta Sussex</td><td>US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>67</td><td>NIDEP_BF</td><td>NIDEP Bur</td><td>"HIBI2011"</td><td>"Headwa NIDEP_BF</td><td>Brass Cast River/Stream</td><td>New Jersey United Sta Warren</td><td>US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>68</td><td>NIDEP_BF</td><td>NIDEP Bur</td><td>"HIBI2011"</td><td>"Headwa NIDEP_BF</td><td>Jackson Br River/Stream</td><td>New Jersey United Sta Morris</td><td>US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>69</td><td>NIDEP_BF</td><td>NIDEP Bur</td><td>"HIBI2011"</td><td>"Headwa NIDEP_BF</td><td>Mill Brook River/Stream</td><td>New Jersey United Sta Sussex</td><td>US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>70</td><td>NIDEP_BF</td><td>NIDEP Bur</td><td>"HIBI2011"</td><td>"Headwa NIDEP_BF</td><td>Willoughb River/Stream</td><td>New Jersey United Sta Hunterdo</td><td>US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>71</td><td>NIDEP_BF</td><td>NIDEP Bur</td><td>"HIBI2011"</td><td>"Headwa NIDEP_BF</td><td>Teetertow River/Stream</td><td>New Jersey United Sta Hunterdo</td><td>US</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr><tr><td>130</td><td>IOWAST</td><td>Iowa State</td><td>"EPA WPI"</td><td>"A Condit IOWAST_Teal Basin Wetland Undifferent Iowa</td><td></td><td>United Sta Cerro Gor US</td><td>IA</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>N</td></tr><tr><td>131</td><td>IOWAST</td><td>Iowa State</td><td>"EPA WPI"</td><td>"A Condit IOWAST_Tallard M Wetland Undifferent Iowa</td><td></td><td>United Sta Cerro Gor US</td><td>IA</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>N</td></tr><tr><td>132</td><td>IOWAST</td><td>Iowa State</td><td>"EPA WPI"</td><td>"A Condit IOWAST_Christians Wetland Undifferent Iowa</td><td></td><td>United Sta Worth US</td><td>IA</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>N</td></tr><tr><td>133</td><td>IOWAST</td><td>Iowa State</td><td>"EPA WPI"</td><td>"A Condit IOWAST_Eagle Flatt Wetland Undifferent Iowa</td><td></td><td>United Sta Hancock US</td><td>IA</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>N</td></tr><tr><td>134</td><td>IOWAST</td><td>Iowa State</td><td>"EPA WPI"</td><td>"A Condit IOWAST_Gladeffer Wetland Undifferent Iowa</td><td></td><td>United Sta Hancock US</td><td>IA</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>N</td></tr><tr><td>135</td><td>IOWAST</td><td>Iowa State</td><td>"EPA WPI"</td><td>"A Condit IOWAST_Hanlontop Wetland Undifferent Iowa</td><td></td><td>United Sta Worth US</td><td>IA</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>N</td></tr><tr><td>136</td><td>IOWAST</td><td>Iowa State</td><td>"EPA WPI"</td><td>"A Condit IOWAST_Hoffman I Wetland Undifferent Iowa</td><td></td><td>United Sta Cerro Gor US</td><td>IA</td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td>N</td></tr></tbody></table>
<figure><img src="image_20.png" /></figure>

# Use Cases identification and work methodology

* Overview of all aspects of water quality information

<table><thead><tr><th>Observed Property group</th><th>Quantity</th><th>Physical properties</th><th>Chemistry</th><th>Biology</th></tr></thead><tbody><tr><td>In situ sensor</td><td rowspan="2">Here as a support to WaterQuality</td><td rowspan="2">(1)</td><td rowspan="2">(2)</td><td rowspan="2"></td></tr><tr><td>Ex situ (lab analysis)</td></tr><tr><td>Models</td><td></td><td></td><td></td><td></td></tr><tr><td>Remote</td><td></td><td></td><td></td><td></td></tr></tbody></table>

Grayed = out of scope this IE: Biology (taxa observation), Hydro Models, Remote Sensing

* Grouping of use cases the IE members agreed on carrying out

<table><thead><tr><th></th><th colspan="2">Surface Water</th><th colspan="2">Ground Water</th></tr><tr><th></th><th>In situ</th><th>Ex situ</th><th>In situ</th><th>Ex situ</th></tr></thead><tbody><tr><th>Quality</th><td>☑</td><td>☑</td><td>☑</td><td>☑</td></tr><tr><th>Quantity</th><td>☑</td><td>☒</td><td>☑</td><td>☒</td></tr></tbody></table>

<figure><img src="image_21.png" /></figure>

DATA®
COVE

<figure><img src="image_22.png" /></figure>

Fraunhofer
IOSB

<figure><img src="image_23.png" /></figure>

Géosciences pour une Terre durable

brgm
<figure><img src="image_24.png" /></figure>

# Use Cases identification and work methodology

## Rationale (per Use Case)

<figure><img src="image_25.png" /></figure>
# Water Quality IE - what do we want to exchange on ?

<figure><img src="image_26.png" /></figure>
# Conceptual Modelling

* Step 1º/ Express the domain need stemming from the UseCases

<figure><img src="image_27.png" /></figure>

<figure><img src="image_28.png" /></figure>

<figure><img src="image_29.png" /></figure>

<figure><img src="image_30.png" /></figure>
# Conceptual Modelling

* Step 2°/ Identify the standards in the OGC standard baseline to build on

* 2 OGC-WMO water standards : GroundWaterML2.0 & HY_Features

* THE OGC-ISO for Observations & Samples : ISO 19156:2023 : Observations, measurements and samples

## OGC® WaterML 2: Part 3 - Surface Hydrology Features (HY_Features) - Conceptual Model

### Open Geospatial Consortium

Submission Date: 2017-08-17

Approval Date: 2017-10-16

Publication Date: 2018-01-08

External identifier of this OGC® document: http://www.openungs.net/doc/IS/hy-features/1.0

Internal reference number of this OGC® document: 14-11116

Version: 1.0

Category: OGC® Implementation Standard

Editor: David Blodgett, Irla Dornblatt

### OGC® WaterML 2: Part 3 - Surface Hydrology Features (HY_Features) - Conceptual Model

### Copyright notice

Copyright © 2018 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:

Document stage: Approved

Document language: English

### Open Geospatial Consortium

Submission Date: 2021-11-18

Approval Date: 2022-03-07

Publication Date: 2023-05-26

External identifier of this OGC® document: http://www.openungs.net/doc/as/om/3.0

Internal reference number of this OGC® document: 20-082r4

Version: 3.0.0

Category: OGC® Abstract Specification

Editors: Katharina Schleidt, Ilkka Rinne

## OGC Abstract Specification Topic 20: Observations, measurements and samples

### Copyright notice

Copyright © 2023 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® Abstract Specification

Document subtype:

Document stage: Approved for public release

Document language: English

OGC® DOCUMENT: 16-032R3

External identifier of this OGC® document: http://www.openungs.net/doc/15/GWML/2.2.1

OGC®
Making location count

## OGC WATERML 2: PART 4 - GROUNDWATERML 2 (GWML2)

STANDARD
Implementation

APPROVED

Version: 2.2.1

Submission Date: 2019-04-15

Approval Date: 2019-09-15

Publication Date: 2021-01-20

Editor: Boyan Brodovic

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.
<figure><img src="image_31.png" /></figure>

# Conceptual Modelling

* Step 3º/ Express domain needs according to the OGC standard baseline
=> **Almost everything is in, just need to agree on how to use it**
=> mainly “Object diagrams exercise” to document the use of the standards

FROM

<figure><img src="image_32.png" /></figure>

TO

<figure><img src="image_33.png" /></figure>

<figure><img src="image_34.png" /></figure>
<figure><img src="image_35.png" /></figure>

# Conceptual Modelling

* 2 modelling patterns

* GW_InSitu_QuantityObservation < > SW_InSitu_QuantityObservation
  GW_InSitu_QualityObservation < > SW_InSitu_QualityObservation

<figure><img src="image_36.png" /></figure>

In situ sensor

* GW_ExSitu_QualityObservation < > SW_ExSitu_QualityObservation

<figure><img src="image_37.png" /></figure>

Ex situ = Laboratory
<figure><img src="image_38.png" /></figure>

Conceptual Modelling : one in-situ example

* GW_InSitu_QuantityObservation (water level)

<figure><img src="image_39.png" /></figure>
<figure><img src="image_40.png" /></figure>

Conceptual Modelling : one in-situ example

* GW_InSitu_QuantityObservation (water level)

<figure><img src="image_41.png" /></figure>
<figure><img src="image_42.png" /></figure>

# Conceptual Modelling : one in-situ example

* GW InSitu Quantity Observation (water level)

<figure><img src="image_43.png" /></figure>
<figure><img src="image_44.png" /></figure>

# Conceptual Modelling: one ex-situ example

* SW_ExSitu_QualityObservation (ex: Dissolved Oxygen, pH)

Ex situ = Lab

<figure><img src="image_45.png" /></figure>
<figure><img src="image_46.png" /></figure>

# Conceptual Modelling: one ex-situ example

* SW_ExSitu_QualityObservation (ex : Dissolved Oxygen, pH)

Ex situ = Lab

<figure><img src="image_47.png" /></figure>
# Water Quality IE - how do we want to exchange ?

<figure><img src="image_48.png" /></figure>
<figure><img src="image_49.png" /></figure>

# Which interoperable / FAIR API ?

## Available options

1. OGC WFS/API Features :

- All the identified concepts are Features => could work

- Not tied to a specific semantic/model and quite limited query mechanism on Observation topics

2. OGC SensorThings API

- Semantics : Already Observations & Measurements compliant

- Powerful query mechanism based on OASIS oData

## Decision

1. Use OGC SensorThings API for Observation, Samples sharing and also a bit of River, Aquifer, Well information => core of the implementation, work presented here

2. Use OGC WFS / API – Features for pure geospatial features description / Use Cases : River, Aquifer, Well etc...
<figure><img src="image_50.png" /></figure>

# OGC SensorThings API?

* An OGC standard for exchanging sensor data and metadata

* Historic data & current data

* JSON Encoded

* RESTful

* Adapting OASIS OData URL patterns and query options

* Supporting ISO MQTT messaging

* Easy to use & understandable

* Discoverable with only a web browser
<figure><img src="image_51.png" /></figure>

# OGC SensorThings API?

Layman's terms

<figure><img src="image_52.png" /></figure>
<figure><img src="image_53.png" /></figure>

# OGC SensorThings API?

Terms from the standard

<figure><img src="image_54.png" /></figure>
# SensorThings API 1.1 – Data Model

<figure><img src="image_55.png" /></figure>

<figure><img src="image_56.png" /></figure>
# SensorThings API 1.1 – API

HTTP:

<table><thead><tr><th></th><th>GET</th><th>POST</th><th>PATCH</th><th>DELETE</th></tr></thead><tbody><tr><td>v1.1</td><td>Get index</td><td></td><td></td><td></td></tr><tr><td>v1.1/Type</td><td>Get all of type</td><td>Create</td><td></td><td></td></tr><tr><td>v1.1/Type(id)</td><td>Get one of type</td><td></td><td>Update</td><td>Delete</td></tr><tr><td>v1.1/Type(id)/Entity</td><td>Get linked entity</td><td></td><td></td><td></td></tr><tr><td>v1.1/Type(id)/EntitySet</td><td>Get all linked</td><td>Create Linked</td><td></td><td></td></tr></tbody></table>

MQTT:

## 1. Subscribe

* v1.1/Things

* v1.1/Datastreams(x)

* v1.1/Datastreams(x)/Observations

* etc.

## 2. Get Notified

* Fully Explorable with just a browser

* Composable Responses

* Powerful filtering
# SensorThings API 1.1 – Water Quality

* River?
(SampledFeature)

* Deployment?

* Sampler?

* ObservingProcedure?

<figure><img src="image_57.png" /></figure>

Ex situ = Lab

<figure><img src="image_58.png" /></figure>

<figure><img src="image_59.png" /></figure>

Fraunhofer
IOSB

<figure><img src="image_60.png" /></figure>
# STA 1.1 WQ-IE – Sensor Extensions

Extending the Sensor
with OMS concepts

+ Deployment

+ ObservingProcedure

<figure><img src="image_61.png" /></figure>
# STA 1.1 WQ-IE – Sampling

## Adding Sampling from OMS

* Sampling

* Sampler

* SamplingProcedure

<figure><img src="image_62.png" /></figure>

<figure><img src="image_63.png" /></figure>
# STA 1.1 WQ-IE – Features

## Adding the River as Feature and linking a time series

+ FeatureType

+ Datastream → UltimateFeatureOfInterest

<figure><img src="image_64.png" /></figure>

<figure><img src="image_65.png" /></figure>
# STA 1.1 WQ-IE – Relations

## Relating Features to other Features

* RelatedFeature

* RelationRole

## The same for:

* RelatedThing

* RelatedDatastream

* RelatedObservation

<figure><img src="image_66.png" /></figure>

<figure><img src="image_67.png" /></figure>

<figure><img src="image_68.png" /></figure>
# STA 1.1 WQ-IE

Full data model

* Still v1.1 compatible

* Paving the way to STA 2.0

STA 1.1

OMS
addition

Relation
extension

<figure><img src="image_69.png" /></figure>
Water Quality IE - lets try and see how this works !

<figure><img src="image_70.png" /></figure>

<figure><img src="image_71.png" /></figure>
<figure><img src="image_72.png" /></figure>

# Implementation

* Who

* Water Quality IE members USGS, USEPA, DataStream (Canada), BRGM, BaFG (UNEP Gems water), Fraunhofer

* EU Water4All project partners

■ Ex: Danish DEP, ISPRA, Fraunhofer, VITO etc...

* EU GSEU project partners

■ Many EU geological surveys

* What

* FROST Data Model Plugin https://github.com/hylkevds/FROST-Server.plugin.WaterQualityIE

* Docker Image

https://hub.docker.com/r/hylkevds/frost-http-waterquality

* Demo endpoints

* Generic Map client: https://api4inspire.k8s.ilt-dmz.iosb.fraunhofer.de/servlet/is/226/ Also tested in QGIS SensorThings API Plugin
<figure><img src="image_73.png" /><figcaption>Surface water quality
US - Canada, Great Lakes
region</figcaption></figure>

<figure><img src="image_74.png" /></figure>

Implementation - WebGenesis client

* It works !

<figure><img src="image_75.png" /></figure>

web

GENESIS

Use Cases

WQ-IE - Water4All

Other Data

Datenschutzerklärung

Impressum

<figure><img src="image_76.png" /></figure>

Login

Genesis > WQ-IE - Water4All

<figure><img src="image_77.png" /><figcaption>Water Quality IE / Water 4 All</figcaption></figure>

<figure><img src="image_78.png" /></figure>
<figure><img src="image_79.png" /></figure>

Surface water quality
US - Canada, Great Lakes
region

<figure><img src="image_80.png" /></figure>

# Implementation - WebGenesis client

* It works !

## Water Quality IE / Water 4 All

<figure><img src="image_81.png" /></figure>
<figure><img src="image_82.png" /><figcaption>Surface water quality
US - Canada, Great Lakes
region</figcaption></figure>

<figure><img src="image_83.png" /></figure>

# Implementation - WebGenesis client

* It works !

```json
// https://wqp.wqie.internetofwater.app/FROST-Server/v1.1/Datastreams('fec02df5-a2f8-0255-74e5-6cada9d66cb6')?expand=Observations
{
  "@iot selfLink": "https://wqp.wqie.internetofwater.app/FROST-Server/v1.1/Datastreams('fec02df5-a2f8-0255-74e5-6cada9d66cb6')",
  "@iot id": "fec02df5-a2f8-0255-74e5-6cada9d66cb6",
  "name": "Dissolved oxygen (DO) at 21MICH_WQX-821523",
  "description": "Dissolved oxygen (DO) at 21MICH_WQX-821523",
  "observationType": "http://www.opengis.net/def/observationType/OGC-OM/2.0/OM_Measurement",
  "unitOfMeasurement": {
    "name": "mg/L",
    "symbol": "mg/L",
    "definition": "mg/L"
  },
  "observedArea": {
    "type": "Point",
    "coordinates": [
      -83.51139,
      42.10036
    ]
  },
  "phenomenonTime": "2006-05-18T10:00:00Z/2006-11-27T10:00:00Z",
  "properties": {
    "ActivityIdentifier": "21MICH_WQX-821523_7/28/2016",
    "ActivityMediaName": "Water",
    "ActivityTypeCode": "Sample-Routine"
  },
  "resultTime": "2006-05-18T10:00:00Z/2006-11-27T10:00:00Z",
  "Observations@iot.count": 4,
  "Observations": [
    {
      "@iot selfLink": "https://wqp.wqie.internetofwater.app/FROST-Server/v1.1/Observations('91cef6b4-2dc1-11ef-a098-a7aa9b8c2d4d')",
      "@iot id": "91cef6b4-2dc1-11ef-a098-a7aa9b8c2d4d",
      "phenomenonTime": "2006-05-18T10:00:00Z",
      "resultTime": "2006-05-18T10:00:00Z",
      "result": 8.39,
      "resultQuality": "Final",
      "parameters": {
        "modified": "2016-01-04T15:21:23",
        "publisher": "STORET",
        "status": "Final",
        "valueType": "Actual"
      }
    }
  ]
}
```

Datastream/Observation
content: WQ IE Compliant
<figure><img src="image_84.png" /><figcaption>Surface water quality
US - Canada, Great Lakes
region</figcaption></figure>

<figure><img src="image_85.png" /></figure>

# Implementation - WebGenesis client

* It works !

<figure><img src="image_86.png" /><figcaption>USGS - US Internet of Water
- US Water Quality Portal</figcaption></figure>
<figure><img src="image_87.png" /></figure>

Other implementation in the
US : *in-situ*, groundwater
quantity

<figure><img src="image_88.png" /></figure>

Implementation - WebGenesis client

* It works !

<figure><img src="image_89.png" /></figure>
<figure><img src="image_90.png" /></figure>

Other implementation in the
US: in-situ, groundwater
quantity

<figure><img src="image_91.png" /></figure>

# Implementation - WebGenesis client

* It works !

<figure><img src="image_92.png" /></figure>
<figure><img src="image_93.png" /></figure>

Surface water quality,
ex-situ, France -
Germany

<figure><img src="image_94.png" /></figure>

# Implementation - WebGenesis client

* It works !

<figure><img src="image_95.png" /></figure>

<figure><img src="image_96.png" /></figure>
<figure><img src="image_97.png" /><figcaption>* French & German Data 1 Map</figcaption></figure>

<figure><img src="image_98.png" /></figure>

# Implementation - WebGenesis client

<figure><img src="image_99.png" /></figure>
<figure><img src="image_100.png" /></figure>

* French & German Data

* 1 Map

<figure><img src="image_101.png" /></figure>

Implementation - WebGenesis client

<figure><img src="image_102.png" /></figure>
Implementation - WebGenesis client

<figure><img src="image_103.png" /><figcaption>Other French data: raw
**in-situ** groundwater
quantity & quality</figcaption></figure>

<figure><img src="image_104.png" /></figure>

<figure><img src="image_105.png" /></figure>
<figure><img src="image_106.png" /></figure>

Other French data: raw
in-situ groundwater
quantity & quality

<figure><img src="image_107.png" /></figure>

# Implementation - WebGenesis client

## Water Quality IE / Water 4 All

<figure><img src="image_108.png" /></figure>

Installation de suivi eau souterraine quantité

GroundWater Quantity Environmental monitoring facility
monitoring ground water level

* altitude_point_eau

* uom: https://data.geoscience.fr/ncl/urf/111

* value: 113

* altitude_repere

* uom: https://data.geoscience.fr/ncl/urf/111

* value: 114.93

<figure><img src="image_109.png" /></figure>

<figure><img src="image_110.png" /></figure>
# Implementation - QGIS client

<figure><img src="image_111.png" /></figure>

## Same French & German Data

* ST API compliant version 3.36+

* ST API plugin under revision to use this

<figure><img src="image_112.png" /></figure>

<figure><img src="image_113.png" /></figure>
<figure><img src="image_114.png" /></figure>

# Implementation - QGIS client

## Same French & German Data

* ST API compliant version 3.36+

* ST API plugin under revision to use this

<figure><img src="image_115.png" /></figure>

<figure><img src="image_116.png" /></figure>
<figure><img src="image_117.png" /></figure>

Implementation - R client

RPubs by RStudio

Sign in

Register

+

-

<figure><img src="image_118.png" /></figure>

US WQP (Samples) WQIE STA

<figure><img src="image_119.png" /></figure>

USGS STA (Continuous Sensors)

<figure><img src="image_120.png" /></figure>

Animas River

<figure><img src="image_121.png" /></figure>

* USGS Water Quality Portal data

* + continuous sensor (ex: pH)

<figure><img src="image_122.png" /></figure>

<figure><img src="image_123.png" /></figure>
Water Quality IE - Conclusion
<figure><img src="image_124.png" /></figure>

# Landing the Interoperability Experiment

* What/When

* Demo during OGC Member Meeting in June 2024 > DONE

* Engineering Report > on-going

* summarizing the findings from the IE

* and proposing next steps. Ex: adoption of a Best Practice for Water Quality data exchange Water ML2.0 Part 5 and (potentially) a revision of WaterML2.0 Part 1: TimeSeries (just started)
<figure><img src="image_125.png" /></figure>

## Some hindsight on the effort

* How the new "Observations, measurements and samples (OMS)" is meaningful to the Interoperability Experiment?

<figure><img src="image_126.png" /></figure>

⇒ No need to reinvent the wheel, just use the available standards and document it
<figure><img src="image_127.png" /></figure>

# Some context supporting this work

* Some supporting national/EU projects from our end (both running now)

OneWater
Eau Bien Commun

PROGRAMME NATIONAL
DE RECHERCHE SUR L'EAU

<figure><img src="image_128.png" /></figure>

<figure><img src="image_129.png" /></figure>

* French Research project, 53 Million €, 10 years

* https://www.onewater.fr/en (ANR project : 22-PEXO-0009)

* Many domain objectives including FAIR (interoperable) Water Data Exchange

<figure><img src="image_130.png" /></figure>

Water4All
Water security for the planet

* EU joint research partnership

* https://www.water4all-partnership.eu/

* 31 countries, 7 years, 81 Million € for the 2 years.

* Many domain objectives including FAIR (interoperable) Water Data Exchange

* Your project could join the effort

* join the OGC Hydro DWG discussions
<figure><img src="image_131.png" /></figure>

Thank you

s.grellet@brgm.fr

hylke.vanderschaaf@iosb.fraunhofer.de

kathi@datacove.eu