Navigation und Service

Datenschnittstelle

  • Das Bundesamt für Strahlenschutz (BfS) stellt die Daten des ODL-Messnetzes kostenlos über eine standardisierte Datenschnittstelle zur Verfügung.
  • Bitte beachten Sie die Nutzungsbedingungen.

Das Bundesamt für Strahlenschutz (BfS) stellt die Daten des ODL-Messnetzes kostenlos über eine standardisierte Datenschnittstelle zur Verfügung. Es handelt sich dabei um den "Web Feature Service", einen Standard des Open Geospatial Consortiums (OGC).

Die beim BfS verfügbaren Geodatendienste werden auch im BfS-Geoportal bereitgestellt. Bitte beachten Sie die Nutzungsbedingungen für diese Dienste, die auch für die ODL-Datenschnittstelle gelten.

Datenformat

Die Daten werden von der Schnittstelle unter anderem im GeoJSON-Format ausgegeben. Hierbei handelt es sich um ein standardisiertes, offenes Format, welches Daten mit geografischem Bezug nach der Simple-Feature-Access-Spezifikation repräsentiert. Auch ODL-Info ruft die Daten in dieser Form ab.

Neben dem im Folgenden beschriebenen GeoJSON-Format ist ein Datenabruf auch in anderen Formaten (z.B. GML2, GML3, shape-zip, csv) möglich.

GeoJSON

Die Daten sind beim GeoJSON immer in einer FeatureCollection enthalten. Jedes Feature darin enthält neben den Koordinaten der jeweiligen Messstelle zudem auch die Messstellenkennung, den Namen der Messstelle und natürlich den entsprechenden Messwert inklusive Zeitstempel. Sofern die Anfrage fehlerfrei gestellt wurde, enthält die Antwort immer ein JSON-Objekt mit den folgenden Eigenschaften:

JSON-Objekt: Eigenschaften
EigenschaftBeschreibung
  • Jeder Eintrag im features-Array ist ein Objekt.
  • Unter der Eigenschaft properties enthält dieses wiederum ein Objekt mit den eigentlichen Daten. Die Daten sind dabei abhängig vom jeweiligen Layer.
  • Zudem sind unter der Eigenschaft geometry die Koordinaten der jeweiligen Messstelle verfügbar.
featuresEin Array mit den sogenannten "Features", also den eigentlichen Datensätzen.
totalFeaturesAnzahl der insgesamt von der Anfrage gefundenen Datensätzen.
numberReturnedAnzahl der für die Anfrage zurückgegebenen Datensätzen.
timeStampZeitstempel der Antwort.

Verfügbare Informationen

Die verfügbaren Informationen werden in sogenannten Layern bereitgestellt. Jeder Layer enthält unterschiedliche Daten. Neben weiteren, teilweise optionalen, Parametern enthält die Abruf-URL immer den Layernamen.

Basis-Abruf-URL

https://www.imis.bfs.de/ogc/opendata/ows?service=WFS&version=1.1.0&request=GetFeature&typeName=opendata:<Layername>&outputFormat=application/json

Layer

Liste der Messstellen inklusive dem jeweils letzten 1-Stunden-MesswertEinklappen / Ausklappen

Layername

odlinfo_odl_1h_latest

Abruf-URL

https://www.imis.bfs.de/ogc/opendata/ows?service=WFS&version=1.1.0&request=GetFeature&typeName=opendata:odlinfo_odl_1h_latest&outputFormat=application/json

Properties der einzelnen Features
PropertyBeschreibung
idDie internationale ID der Messstelle.
kennDie Messstellenkennung, wie sie auch auf ODL-Info verwendet wird.
plzDie Postleitzahl der Messstelle.
nameDer Name bzw. Ortsname der Messstelle.
site_statusDer Status der Messstelle als Zahl. (1 = in Betrieb, 2 = Defekt, 3 = Testbetrieb)
site_status_textDer Status der Messstelle als Text.
kidID des Messnetzknotens, dem die Messstelle zugeordnet ist. (1 = Freiburg, 2 = Berlin, 3 = München, 4 = Bonn, 5 = Salzgitter, 6 = Rendsburg)
height_above_seaHöhe der Messstelle über NN.
start_measureStartzeitpunkt der Messperiode für den gegebenen Messwert.
end_measure
Endzeitpunkt der Messperiode für den gegebenen Messwert.
valueDer Messwert.
value_cosmicKosmischer Anteil des Messwertes.
value_terrestrialTerrestrischer Anteil des Messwertes.
unitEinheit zu dem Messwert.
validatedPrüfstatus des Messwertes. (1 = geprüft, 2 = ungeprüft)
nuclideBezeichnung der Messgröße.
durationDauer der Messperiode.
Beispiel
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"id": "odlinfo_odl_1h_latest.fid-67f071dd_17b78091d3a_-1c2f",
"geometry": {
"type": "Point",
"coordinates": [
9.38,
54.78
]
},
"geometry_name": "geom",
"properties": {
"id": "DEZ0001",
"kenn": "010010001",
"plz": "24941",
"name": "Flensburg",
"site_status": 1,
"site_status_text": "in Betrieb",
"kid": 6,
"height_above_sea": 39,
"start_measure": "2021-08-24T10:00:00Z",
"end_measure": "2021-08-24T11:00:00Z",
"value": 0.075,
"value_cosmic": 0.043,
"value_terrestrial": 0.033,
"unit": "µSv/h",
"validated": 1,
"nuclide": "Gamma-ODL-Brutto",
"duration": "1h"
}
},
{
"type": "Feature",
"id": "odlinfo_odl_1h_latest.fid-67f071dd_17b78091d3a_-1c2e",
"geometry": {
"type": "Point",
"coordinates": [
9.05,
54.02
]
},
"geometry_name": "geom",
"properties": {
"id": "DEZ0005",
"kenn": "010510061",
"plz": "25719",
"name": "Barlt",
"site_status": 1,
"site_status_text": "in Betrieb",
"kid": 6,
"height_above_sea": 1,
"start_measure": "2021-08-24T10:00:00Z",
"end_measure": "2021-08-24T11:00:00Z",
"value": 0.08,
"value_cosmic": 0.042,
"value_terrestrial": 0.038,
"unit": "µSv/h",
"validated": 1,
"nuclide": "Gamma-ODL-Brutto",
"duration": "1h"
}
},
// [...]
],
"totalFeatures": 1629,
"numberMatched": 1629,
"numberReturned": 1629,
"timeStamp": "2021-08-24T12:12:03.304Z",
"crs": {
"type": "name",
"properties": {
"name": "urn:ogc:def:crs:EPSG::4326"
}
}
}

Zeitreihe mit 1-Stunden-MessdatenEinklappen / Ausklappen

Bei der Abfrage von Zeitreihendaten muss immer eine 9-stellige Messstellenkennung mit angegeben werden. Zusätzlich ist über einen Filter eine zeitliche Eingrenzung möglich.

Layername der Zeitreihe mit 1-Stunden-Messdaten

odlinfo_timeseries_odl_1h

Abruf-URL

https://www.imis.bfs.de/ogc/opendata/ows?service=WFS&version=1.1.0&request=GetFeature&typeName=opendata:odlinfo_timeseries_odl_1h&outputFormat=application/json&viewparams=kenn:<Messstellenkennung>

Properties der einzelnen Features
PropertyBeschreibung
idDie internationale ID (teilweise auch als locality_code bezeichnet) der Messstelle.
kennDie Messstellenkennung, wie sie auch auf ODL-Info verwendet wird.
plzDie Postleitzahl der Messstelle.
nameDer Name bzw. Ortsname der Messstelle.
start_measureStartzeitpunkt der Messperiode für den gegebenen Messwert.
end_measure
Endzeitpunkt der Messperiode für den gegebenen Messwert.
valueDer Messwert.
unitEinheit zu dem Messwert.
validatedPrüfstatus des Messwertes. (1 = geprüft, 2 = ungeprüft)
nuclideBezeichnung der Messgröße.
durationDauer der Messperiode.
Beispiel

https://www.imis.bfs.de/ogc/opendata/ows?service=WFS&version=1.1.0&request=GetFeature&typeName=opendata:odlinfo_timeseries_odl_1h&outputFormat=application/json&viewparams=kenn:031020004

{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"id": "odlinfo_timeseries_odl_1h.fid-67f071dd_17b7820a5ac_40fc",
"geometry": {
"type": "Point",
"coordinates": [
10.33,
52.15
]
},
"geometry_name": "geom",
"properties": {
"id": "DEZ2799",
"kenn": "031020004",
"name": "Salzgitter-Lebenstedt",
"start_measure": "2021-08-17T12:00:00Z",
"end_measure": "2021-08-17T13:00:00Z",
"value": 0.088,
"unit": "µSv/h",
"validated": 1,
"nuclide": "Gamma-ODL-Brutto",
"duration": "1h"
}
},
{
"type": "Feature",
"id": "odlinfo_timeseries_odl_1h.fid-67f071dd_17b7820a5ac_40fd",
"geometry": {
"type": "Point",
"coordinates": [
10.33,
52.15
]
},
"geometry_name": "geom",
"properties": {
"id": "DEZ2799",
"kenn": "031020004",
"name": "Salzgitter-Lebenstedt",
"start_measure": "2021-08-17T13:00:00Z",
"end_measure": "2021-08-17T14:00:00Z",
"value": 0.092,
"unit": "µSv/h",
"validated": 1,
"nuclide": "Gamma-ODL-Brutto",
"duration": "1h"
}
},
// [...]
],
"totalFeatures": 168,
"numberMatched": 168,
"numberReturned": 168,
"timeStamp": "2021-08-24T12:30:21.262Z",
"crs": {
"type": "name",
"properties": {
"name": "urn:ogc:def:crs:EPSG::4326"
}
}
}

Zeitreihe mit 24-Stunden-MessdatenEinklappen / Ausklappen

Bei der Abfrage von Zeitreihendaten muss immer eine 9-stellige Messstellenkennung mit angegeben werden. Zusätzlich ist über einen Filter eine zeitliche Eingrenzung möglich.

Layername der Zeitreihe mit 24-Stunden-Messdaten

odlinfo_timeseries_odl_24h

Abruf-URL

https://www.imis.bfs.de/ogc/opendata/ows?service=WFS&version=1.1.0&request=GetFeature&typeName=opendata:odlinfo_timeseries_odl_24h&outputFormat=application/json&viewparams=kenn:<Messstellenkennung>

Properties der einzelnen Features
PropertyBeschreibung
idDie internationale ID (teilweise auch als locality_code bezeichnet) der Messstelle.
kennDie Messstellenkennung, wie sie auch auf ODL-Info verwendet wird.
plzDie Postleitzahl der Messstelle.
nameDer Name bzw. Ortsname der Messstelle.
start_measureStartzeitpunkt der Messperiode für den gegebenen Messwert.
end_measure
Endzeitpunkt der Messperiode für den gegebenen Messwert.
valueDer Messwert.
unitEinheit zu dem Messwert.
validatedPrüfstatus des Messwertes. (1 = geprüft, 2 = ungeprüft)
nuclideBezeichnung der Messgröße.
durationDauer der Messperiode.
Beispiel

https://www.imis.bfs.de/ogc/opendata/ows?service=WFS&version=1.1.0&request=GetFeature&typeName=opendata%3Aodlinfo_timeseries_odl_24h&viewparams=kenn%3A031020004&outputFormat=application%2Fjson

{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"id": "odlinfo_timeseries_odl_24h.fid-67f071dd_17b784e2b46_-2dcf",
"geometry": {
"type": "Point",
"coordinates": [
10.33,
52.15
]
},
"geometry_name": "geom",
"properties": {
"id": "DEZ2799",
"kenn": "031020004",
"name": "Salzgitter-Lebenstedt",
"start_measure": "2020-08-24T00:00:00Z",
"end_measure": "2020-08-25T00:00:00Z",
"value": 0.097,
"unit": "µSv/h",
"validated": 1,
"nuclide": "Gamma-ODL-Brutto",
"duration": "1d"
}
},
{
"type": "Feature",
"id": "odlinfo_timeseries_odl_24h.fid-67f071dd_17b784e2b46_-2dce",
"geometry": {
"type": "Point",
"coordinates": [
10.33,
52.15
]
},
"geometry_name": "geom",
"properties": {
"id": "DEZ2799",
"kenn": "031020004",
"name": "Salzgitter-Lebenstedt",
"start_measure": "2020-08-25T00:00:00Z",
"end_measure": "2020-08-26T00:00:00Z",
"value": 0.099,
"unit": "µSv/h",
"validated": 1,
"nuclide": "Gamma-ODL-Brutto",
"duration": "1d"
}
},
// [...]
],
"totalFeatures": 345,
"numberMatched": 345,
"numberReturned": 345,
"timeStamp": "2021-08-24T13:29:20.877Z",
"crs": {
"type": "name",
"properties": {
"name": "urn:ogc:def:crs:EPSG::4326"
}
}
}

Sortierung, Filtermöglichkeiten und alternative Datenformate

Die zurückgegebenen Daten einer Anfrage können direkt über die Anfrage sortiert, begrenzt und gefiltert werden. Zudem ist die Ausgabe auch in anderen Datenformaten möglich.

Sortierung

Sortierung der ausgegebenen Daten nach Eigenschaften

Die Daten können nach jeder in den "properties" enthaltenen Eigenschaft der Features sortiert werden. Sinnvoll kann beispielsweise eine Sortierung nach "end_measure" sein, wodurch die Daten nach dem Ende der Messperiode sortiert ausgegeben werden.

Zusätzlich kann +A für eine aufsteigende (Standard) oder +D für eine absteigende Sortierung angehängt werden.

Beispiele dafür sind

  • https://www.imis.bfs.de/ogc/opendata/ows?service=WFS&version=1.1.0&request=GetFeature&typeName=opendata:odlinfo_timeseries_odl_1h&outputFormat=application/json&viewparams=kenn:031020004&sortBy=end_measure
  • https://www.imis.bfs.de/ogc/opendata/ows?service=WFS&version=1.1.0&request=GetFeature&typeName=opendata:odlinfo_timeseries_odl_1h&outputFormat=application/json&viewparams=kenn:031020004&sortBy=end_measure+D

Filterung

Beschränkung der Anzahl an zurückgegebenen Datensätzen

Besonders bei Anfragen mit erwartungsgemäß vielen Datensätzen kann es sinnvoll sein, die Anzahl der zurückgegebenen Datensätze mit dem Parameter &maxFeatures=… zu begrenzen.

Zusätzlich kann mittels &startIndex=… ein Offset angegeben werden, wodurch viele Datensätze in kleineren Teilen geholt werden können. Bei der Verwendung von &startIndex=… ist eine Sortierung erforderlich.

Beispiele dafür sind

  • https://www.imis.bfs.de/ogc/opendata/ows?service=WFS&version=1.1.0&request=GetFeature&typeName=opendata:odlinfo_timeseries_odl_1h&outputFormat=application/json&viewparams=kenn:031020004&sortBy=end_measure&maxFeatures=50
  • https://www.imis.bfs.de/ogc/opendata/ows?service=WFS&version=1.1.0&request=GetFeature&typeName=opendata:odlinfo_timeseries_odl_1h&outputFormat=application/json&viewparams=kenn:031020004&sortBy=end_measure&maxFeatures=50&startIndex=50

Zeitliche Eingrenzung der Datensätze

Über einen speziellen &filter=… Parameter können die Datensätze zeitlich eingegrenzt werden. Der eigentliche Filter ist dabei ein spezielles XML in URL-Encodierter Form.

Beispiel-XML

<Filter xmlns="http://www.opengis.net/ogc" xmlns:ogc="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml">
<PropertyIsBetween>
<PropertyName>end_measure</PropertyName>
<LowerBoundary><Literal>2021-08-24T00:00:00.000Z</Literal></LowerBoundary>
<UpperBoundary><Literal>2021-08-24T23:59:59.000Z</Literal></UpperBoundary>
</PropertyIsBetween>
</Filter>

Beispiel-URL mit dem vorherigen XML-Filter

https://www.imis.bfs.de/ogc/opendata/ows?service=WFS&version=1.1.0&request=GetFeature&typeName=opendata:odlinfo_timeseries_odl_1h&outputFormat=application/json&viewparams=kenn:031020004&filter=%3CFilter%20xmlns%3D%22http%3A%2F%2Fwww.opengis.net%2Fogc%22%20xmlns%3Aogc%3D%22http%3A%2F%2Fwww.opengis.net%2Fogc%22%20xmlns%3Agml%3D%22http%3A%2F%2Fwww.opengis.net%2Fgml%22%3E%0A%20%20%3CPropertyIsBetween%3E%0A%20%20%20%20%3CPropertyName%3Eend_measure%3C%2FPropertyName%3E%0A%20%20%20%20%3CLowerBoundary%3E%3CLiteral%3E2021-08-24T00%3A00%3A00.000Z%3C%2FLiteral%3E%3C%2FLowerBoundary%3E%0A%20%20%20%20%3CUpperBoundary%3E%3CLiteral%3E2021-08-24T23%3A59%3A59.000Z%3C%2FLiteral%3E%3C%2FUpperBoundary%3E%0A%20%20%3C%2FPropertyIsBetween%3E%0A%3C%2FFilter%3E

Datenformate

Mögliche Datenformate

Über den &outputFormat=… Parameter kann das gewünschte Datenformat angegeben werden.
Mögliche Werte für &outputFormat=… sind:

  • application/json
  • application/gml+xml; version=3.2
  • application/vnd.google-earth.kml+xml
  • csv
  • GML2
  • gml3
  • gml32
  • json
  • KML
  • SHAPE-ZIP
  • text/xml; subtype=gml/2.1.2
  • text/xml; subtype=gml/3.1.1
  • text/xml; subtype=gml/3.2
Stand: 12.01.2024

Wie bewerten Sie diesen Artikel?