Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

STA Example #118

Closed
KathiSchleidt opened this issue Nov 16, 2023 · 3 comments
Closed

STA Example #118

KathiSchleidt opened this issue Nov 16, 2023 · 3 comments

Comments

@KathiSchleidt
Copy link
Contributor

KathiSchleidt commented Nov 16, 2023

@rob-metalinkage
An example, to see if we can align SOSA and STA

Taken from the air quality STA at https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1
The @iot.selfLink will resolve to the shown JSON

sosa:Platform ~ STA:Thing:

{
      "@iot.selfLink": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Things(139)"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Things(139)),
      "@iot.id": 139,
      "name": "Gaudenzdorf",
      "description": "Air quality station Gaudenzdorf",
      "properties": {
            "owner": ["http://luft.umweltbundesamt.at"](http://luft.umweltbundesamt.at/),
            "mobile": false,
            "localId": "STA.09.GAUD",
            "metadata": ["http://luft.umweltbundesamt.at/inspire/wfs?service=WFS&version=2.0.0&request=GetFeature&typeName=aqd:AQD_Station"](http://luft.umweltbundesamt.at/inspire/wfs?service=WFS&version=2.0.0&request=GetFeature&typeName=aqd:AQD_Station),
            "beginTime": "1977-04-01",
            "namespace": "AT.0008.20.AQ",
            "countryCode": "AT",
            "mediaMonitored": ["http://inspire.ec.europa.eu/codelist/MediaValue/air"](http://inspire.ec.europa.eu/codelist/MediaValue/air),
            "measurementRegime": ["http://inspire.ec.europa.eu/codelist/MeasurementRegimeValue/continuousDataCollection"](http://inspire.ec.europa.eu/codelist/MeasurementRegimeValue/continuousDataCollection)
      },
      "[email protected]": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Things(139)/Locations"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Things(139)/Locations),
      "[email protected]": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Things(139)/HistoricalLocations"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Things(139)/HistoricalLocations),
      "[email protected]": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Things(139)/Datastreams"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Things(139)/Datastreams),
      "[email protected]": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Things(139)/MultiDatastreams"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Things(139)/MultiDatastreams)
}

sosa:HomogeneousObservationCollection ~ STA:Datastream

{
      "@iot.selfLink": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Datastreams(416)"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Datastreams(416)),
      "@iot.id": 416,
      "name": "SPO.09.GAUD.5061.5.1",
      "description": "PM10 as Gaudenzdorf",
      "observationType": ["http://www.opengis.net/def/observationType/OGC-OM/2.0/OM_Measurement"](http://www.opengis.net/def/observationType/OGC-OM/2.0/OM_Measurement),
      "unitOfMeasurement": {
            "name": "ug.m-3",
            "symbol": "ug.m-3",
            "definition": ["http://dd.eionet.europa.eu/vocabulary/uom/concentration/ug.m-3"](http://dd.eionet.europa.eu/vocabulary/uom/concentration/ug.m-3)
      },
      "observedArea": {
            "type": "Point",
            "coordinates": [
                  16.339331111,
                  48.187146944
            ]
      },
      "phenomenonTime": "2017-12-31T23:00:00Z/2023-11-16T21:00:00Z",
      "properties": {
            "owner": ["http://luft.umweltbundesamt.at"](http://luft.umweltbundesamt.at/),
            "localId": "SPO.09.GAUD.5061.5.1",
            "metadata": ["http://luft.umweltbundesamt.at/inspire/wfs?service=WFS&version=2.0.0&request=GetFeature&typeName=aqd:AQD_SamplingPoint"](http://luft.umweltbundesamt.at/inspire/wfs?service=WFS&version=2.0.0&request=GetFeature&typeName=aqd:AQD_SamplingPoint),
            "namespace": "AT.0008.20.AQ",
            "processType": ["http://inspire.ec.europa.eu/codeList/ProcessTypeValue/process"](http://inspire.ec.europa.eu/codeList/ProcessTypeValue/process),
            "resultNature": ["http://inspire.ec.europa.eu/codeList/ResultNatureValue/primary"](http://inspire.ec.europa.eu/codeList/ResultNatureValue/primary),
            "featureOfInterestLocalId": "SAM.09.GAUD.5061.5.1"
      },
      "[email protected]": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Datastreams(416)/ObservedProperty"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Datastreams(416)/ObservedProperty),
      "[email protected]": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Datastreams(416)/Sensor"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Datastreams(416)/Sensor),
      "[email protected]": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Datastreams(416)/Thing"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Datastreams(416)/Thing),
      "[email protected]": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Datastreams(416)/Observations"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Datastreams(416)/Observations)
}

ObservedProperty

{
      "@iot.selfLink": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/ObservedProperties(3)"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/ObservedProperties(3)),
      "@iot.id": 3,
      "name": "PM10",
      "definition": ["http://dd.eionet.europa.eu/vocabulary/aq/pollutant/5"](http://dd.eionet.europa.eu/vocabulary/aq/pollutant/5),
      "description": "PM10",
      "properties": {
            "owner": ["http://dd.eionet.europa.eu"](http://dd.eionet.europa.eu/),
            "localId": 5,
            "recommendedUnit": "µg/m3"
      },
      "[email protected]": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/ObservedProperties(3)/Datastreams"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/ObservedProperties(3)/Datastreams),
      "[email protected]": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/ObservedProperties(3)/MultiDatastreams"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/ObservedProperties(3)/MultiDatastreams)
}

Sensor

{
      "@iot.selfLink": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Sensors(140)"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Sensors(140)),
      "@iot.id": 140,
      "name": "GRIMM EDM 180",
      "description": "http://dd.eionet.europa.eu/vocabulary/aq/measurementequipment/GRIMM EDM 180",
      "encodingType": "application/pdf",
      "metadata": ["http://www.umweltbundesamt.at/fileadmin/site/umweltthemen/luft/PM_Aequivalenz_Dokumentation.pdf"](http://www.umweltbundesamt.at/fileadmin/site/umweltthemen/luft/PM_Aequivalenz_Dokumentation.pdf),
      "properties": {
            "owner": ["http://luft.umweltbundesamt.at"](http://luft.umweltbundesamt.at/),
            "method": ["http://dd.eionet.europa.eu/vocabulary/aq/measurementmethod/OPC-CMC"](http://dd.eionet.europa.eu/vocabulary/aq/measurementmethod/OPC-CMC),
            "localId": "SPP.09.GAUD.5061.5",
            "metadata": ["http://luft.umweltbundesamt.at/inspire/wfs?service=WFS&version=2.0.0&request=GetFeature&typeName=aqd:AQD_SamplingPointProcess"](http://luft.umweltbundesamt.at/inspire/wfs?service=WFS&version=2.0.0&request=GetFeature&typeName=aqd:AQD_SamplingPointProcess),
            "namespace": "AT.0008.20.AQ",
            "measurementtype": ["http://dd.eionet.europa.eu/vocabulary/aq/measurementtype/automatic"](http://dd.eionet.europa.eu/vocabulary/aq/measurementtype/automatic),
            "responsibleParty": {
                  "website": ["http://www.umweltbundesamt.at"](http://www.umweltbundesamt.at/),
                  "postCode": "1090",
                  "adminUnit": "Wien",
                  "individualName": "Iris Buxbaum",
                  "telephoneVoice": "+431313045964",
                  "organisationName": "Umweltbundesamt GmbH",
                  "locatorDesignator": "Spittelauer Laende 5",
                  "electronicMailAddress": "[email protected]"
            }
      },
      "[email protected]": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Sensors(140)/Datastreams"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Sensors(140)/Datastreams),
      "[email protected]": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Sensors(140)/MultiDatastreams"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Sensors(140)/MultiDatastreams)
}

Observation

{
          "@iot.selfLink": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Observations(750380444)"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Observations(750380444)),
          "@iot.id": 750380444,
          "phenomenonTime": "2023-11-15T21:00:00Z/2023-11-15T22:00:00Z",
          "resultTime": null,
          "result": 3.3534498215,
          "[email protected]": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Observations(750380444)/Datastream"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Observations(750380444)/Datastream),
          "[email protected]": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Observations(750380444)/FeatureOfInterest"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/Observations(750380444)/FeatureOfInterest)
}

FeatureOfInterest

{
      "@iot.selfLink": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/FeaturesOfInterest(1259)"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/FeaturesOfInterest(1259)),
      "@iot.id": 1259,
      "name": "FoI for location 139",
      "description": "Generated from location 139",
      "encodingType": "application/geo+json",
      "feature": {
            "type": "Point",
            "coordinates": [
                  16.3393311111111,
                  48.1871469444444
            ]
      },
      "[email protected]": ["https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/FeaturesOfInterest(1259)/Observations"](https://airquality-frost.k8s.ilt-dmz.iosb.fraunhofer.de/v1.1/FeaturesOfInterest(1259)/Observations)
}

SensorThingsAPI_DatenModel_v1 1-900

From: https://datacoveeu.github.io/API4INSPIRE/sensorthingsapi/requestingData/STA-Data-Model.html

@nmtoken
Copy link

nmtoken commented Nov 17, 2023

Is a feature really metadata, as in:

"metadata": "http://luft.umweltbundesamt.at/inspire/wfs?service=WFS&version=2.0.0&request=GetFeature&typeName=aqd:AQD_SamplingPointProcess"

Perhaps it should point to a description of the feature like:

"metadata": "http://luft.umweltbundesamt.at/inspire/wfs?service=WFS&version=2.0.0&request=DescribeFeatureType&typeName=aqd:AQD_SamplingPointProcess"

@KathiSchleidt
Copy link
Contributor Author

@nmtoken this data is originally provided via SOS as part of the Austrian Air Quality Reporting. Within API4INSPIRE, we harvest this and re-provide as STA, keeping the original values.

Not sure why I didn't link to DescribeFeatureType when I set up the original SOS ages ago, probably because the DescribeFeatureType response is strangely unsatisfying:

<xsd:schema elementFormDefault="qualified" targetNamespace="http://dd.eionet.europa.eu/schemaset/id2011850eu-1.0">
    <xsd:include schemaLocation="http://dd.eionet.europa.eu/schemas/id2011850eu-1.0/AirQualityReporting.xsd"/>
</xsd:schema>

Goal here is to see how STA aligns with O&M/OMS

@dr-shorthair
Copy link
Collaborator

See #271

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants