Der Sensor Observation Service (SOS) ist ein Webservice zur Abfrage von Echtzeit-Sensordaten sowie von Sensordatenzeitreihen. Die angebotenen Sensordaten umfassen einerseits Beschreibungen von Sensoren selbst, die in der Sensor Model Language (SensorML) kodiert werden, sowie die Messwerte, die in dem Observations&Measurements (O&M) Format kodiert werden. Der Webservice sowie beide Datei-Formate sind offene Standards und in gleichnamigen Spezifikationen des Open Geospatial Consortium (OGC) definiert. Falls der SOS transaktional (SOS-T) ist, können neue Sensoren über die Serviceschnittstelle registriert und anschließend Messwerte eingefügt werden. Der SOS kann sowohl Daten von Vor-Ort- als auch von Fernerkundungssensoren anbieten. Ferner können die Sensoren sowohl mobil als auch stationär sein.
Seit 2007 ist der SOS ein offizieller OGC-Standard. Der Vorteil des SOS ist, dass Sensordaten – gleich welcher Art – in einem einheitlichen Format und über standardisierte Operationen im Internet verfügbar werden und somit der webbasierte Zugriff auf Sensordaten vereinfacht wird. Da der SOS ein OGC-Standard ist, ermöglicht er ferner eine einfache Integration in bestehende Geoservice-Infrastrukturen oder in allgemeine Geoinformationssysteme.
Der SOS hat drei sogenannte Kernoperationen, die von jeder SOS-Implementierung angeboten werden müssen. Die GetCapabilities-Operation ermöglicht die Abfrage einer Servicebeschreibung mit Infos über die Serviceschnittstelle sowie die angebotenen Sensordaten. Für den laufenden Betrieb ist die GetObservation-Funktion vermutlich die wichtigste. Hiermit lassen sich Messwerte von Sensoren abfragen. Die DescribeSensor-Funktion gibt detaillierte Informationen über einen Sensor oder ein Sensorsystem, die gelieferten Daten und die Prozesse, welche die Daten verarbeiten, zurück.
Kernoperationen (Core Profile):
Transaktionale Operationen (Transactional Profile):
Erweiterte Operationen (Enhanced Profile):
Neben den Kernoperationen gibt es noch zusätzlich Operationen, die nicht zwingend implementiert werden müssen. In vielen Projekten wird vorerst neben den grundlegenden Funktionen zusätzlich nur die InsertObservation-Methode verwendet. Diese ermöglicht es, von außen Daten in den laufenden Sensor Observation Service einzupflegen. Die Daten werden streng nach den O&M-Spezifikationen eingebettet in einer XML-Datei an den SOS übergeben.
Ist ein potenzieller Nutzer auf der Suche nach Sensoren, geschieht dieses gewöhnlich auf einem hohen Abstraktionsniveau. Die Suche wird entweder von einem sensorbezogenen Standpunkt, oder aber beobachtungsbezogen durchgeführt. Ein Nutzer sucht im Allgemeinen sensorbezogen, wenn er bereits Kenntnisse über Sensoren in einer Gegend hat und nun deren Messwerte abfragen möchte. Beobachtungsbezogen sucht ein Nutzer immer dann, wenn er in einer bestimmten Gegend Sensordaten erhalten möchte. Ihm sollen dann alle Messungen, die einem bestimmten Phänomenen zugehören, angezeigt werden.
Das OGC hat – nicht nur im Rahmen des SOS – eine eigene wohldefinierte Begriffswelt. Zum besseren Verständnis hier einige wichtige Begriffe:
Begriff | Beschreibung |
---|---|
Feature of Interest (FOI) | Das ~ repräsentiert das Geoobjekt, für das die Messwerte gelten und das von Sensoren gemessen wird. Über das FeatureOfInterest erfolgt in der Regel die Verortung (Georeferenzierung) der Messpunkte, d. h. das Geoobjekt besitzt Koordinaten (z. B. Länge/Breite und Höhe über NN). Die Festlegung des FOI hängt sehr stark vom Projekt ab und muss je nach Struktur gewählt werden. |
Observation | Eine ~ liefert einen Messwert (Result) für die Eigenschaft (Phenomenon) eines observierten Objekts (FeatureOfInterest). Der Wert selbst wird durch einen Sensor oder Prozeduren erzeugt (Procedure). Ferner wurde das Phänomen zu einem bestimmten Zeitpunkt erfasst (SamplingTime) und der Wert an einem bestimmten Zeitpunkt erzeugt (ResultTime). Häufig stimmen die Werte überein, weshalb in der Praxis dann die SamplingTime als Zeitpunkt der Observation verwendet wird. |
Offering | Ein ~ ist eine logische Gruppierung von miteinander in Bezug stehenden Observationen, welche gemeinsam von einem Dienst angeboten werden. |
Phenomenon | Ein ~ (Phänomen) stellt eine Eigenschaft (physikalische Größe) eines Geoobjekts dar. (Lufttemperatur, Windgeschwindigkeit, Schadstoffkonzentration der Atmosphäre, Reflektierte Strahlung in bestimmten Frequenzband etc.) |
Procedure | Eine ~ (Prozedur) erzeugt den Messwert einer Observation. Dieses kann durch das Auslesen eines Sensors, Simulation oder auch einen numerischen Prozess geschehen. |
In-situ | ~ ist der lateinische Begriff für „vor Ort und Stelle“. |
Der SOS ist ein Standard des OGC und definiert letztlich nur die Serviceschnittstelle, nicht aber wie der Service implementiert wird. Es gibt derzeit mehrere Open-Source-Umsetzungen des Dienstes: