52°North - exploring horizons

52°North SOS Quickstart

Der 52°North SOS ermöglicht den Zugriff und die Bereitstellung von raumbezogenen Sensordaten. Dies umfasst sowohl Messwerte als auch zugehörige Metadaten.

Dieses Quickstart-Dokument umfasst:

  • Beispiel eines Capabilities-Dokumentes des 52°North SOS, um festzustellen,
    welche Operationen/Abfrageparameter unterstützt werden.
  • Beispiel-Anfrage um Messdaten des SOS abzurufen.
  • Informationen zur Datenvisualisierung in einem einfachen, mit dem SOS
    mitgelieferten Viewer “Helgoland”.
  • Informationen zum Ausprobieren einer REST-Schnittstelle für Anwendungsentwickler.
  • Einfügen von dynamisch generierten Beispieldaten.

Erste Schritte

  1. Rufen Sie Geospatial ‣ Web Services ‣ 52North ‣ Start 52North SOS auf.
  2. Es öffnet sich ein Browser-Fenster, welches die Willkommens-Seite der 52°North SOS-Anwendung anzeigt (siehe Abb. 1).
52°North SOS-Anwendung - Willkommens-Seite

Abb. 1: 52°North SOS Anwendung - Willkommens-Seite.

  1. Um eigene Anfragen an den SOS zu stellen, wird das Capabilities-Dokument des 52°North SOS benötigt. Mit Hilfe der Inhalte des Capabilities-Dokuments (siehe Abb. 2) können die Beispielanfragen aus der Beispielliste individuell angepasst werden.
52°North SOS Anwendung - Test Client mit GetCapabilities-Anfrage

Abb. 2: 52°North SOS Anwendung - Test Client mit GetCapabilities-Anfrage.

  1. Um z.B. für jede Zeitreihe im SOS die verfügbaren Daten in dem Zeitraum von 28.2.2017 23:45 bis 1.3.2017 23:45 in der Zeitzone +0 abzufragen, muss im Test Client nach Auswahl von Service “SOS” –> Version “2.0.0” –> Binding “SOAP” –> Operation “GetObservation” folgende Abfrage im Feld “Request” stehen:
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope
    xmlns:env="http://www.w3.org/2003/05/soap-envelope"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.w3.org/2003/05/soap-envelope http://www.w3.org/2003/05/soap-envelope/soap-envelope.xsd">
    <env:Body>
        <sos:GetObservation service="SOS" version="2.0.0"
            xmlns:sos="http://www.opengis.net/sos/2.0"
            xmlns:fes="http://www.opengis.net/fes/2.0"
            xmlns:gml="http://www.opengis.net/gml/3.2"
            xmlns:swe="http://www.opengis.net/swe/2.0"
            xmlns:xlink="http://www.w3.org/1999/xlink"
            xmlns:swes="http://www.opengis.net/swes/2.0"
            xsi:schemaLocation="http://www.opengis.net/sos/2.0 http://schemas.opengis.net/sos/2.0/sos.xsd">
            <sos:temporalFilter>
                <fes:During>
                    <fes:ValueReference>phenomenonTime</fes:ValueReference>
                    <gml:TimePeriod gml:id="tp_1">
                        <gml:beginPosition>2017-02-28T23:45:00.000+00:00</gml:beginPosition>
                        <gml:endPosition>2017-03-01T23:45:00.000+00:00</gml:endPosition>
                    </gml:TimePeriod>
                </fes:During>
            </sos:temporalFilter>
        </sos:GetObservation>
    </env:Body>
</env:Envelope>

Listing 1: Abfrage für Messdaten.

Ausprobieren

  • Versuchen Sie weitere Abfragen der Test-Anwendung.
  • Passen Sie die Beispielanfragen an, um andere Daten zu erhalten
  • Lernen Sie den SOS-Administrator kennen.
    Die Zugangsdaten lauten: “user” mit Passwort “user”.
  • Nutzen Sie den View Client (siehe Abb. 3).
  • Testen Sie wweitere Beispieldaten, in dem Sie die folgenden Schritte ausführen:
    1. Öffen Sie im SOS-Administrator die “database maintenance”-Seite.
    2. Leeren Sie die Datanbank mit dem “Clear Datasource”-Knopf” (Dadurch werden die initialen Beispiel-Daten gelöscht. Sie können OSGeoLive neustarten, um Sie zurück zu bekommen.).
    3. Fügen Sie dynamisch erzeugte Beispieldaten durch einen Klick auf den “Insert sample data”-Knopf. Seien Sie informiert, dass dieser Prozess einige Minuten in Anspruch nimmt.
    4. Öffnen Sie helgoland erneut und erkunden Sie die erzeugten Beispieldaten.
52°North SOS Anwendung - JavaScript-Client mit Zeitreihendaten

Abb. 3: 52°North SOS Anwendung - JavaScript-Client mit Zeitreihendaten.

  • Testen Sie die REST API (siehe Listing 2):
[
    {
        id: "services",
        label: "Service Provider",
        description: "A service provider offers timeseries data."
    },
    {
        id: "stations",
        label: "Station",
        description: "A station is the place where measurement takes place."
    },
    {
        id: "timeseries",
        label: "Timeseries",
        description: "Represents a sequence of data values measured over time."
    },
    {
        id: "categories",
        label: "Category",
        description: "A category group available timeseries."
    },
    {
        id: "offerings",
        label: "Offering",
        description: "An organizing unit to filter resources."
    },
    {
        id: "features",
        label: "Feature",
        description: "An organizing unit to filter resources."
    },
    {
        id: "procedures",
        label: "Procedure",
        description: "An organizing unit to filter resources."
    },
    {
        id: "phenomena",
        label: "Phenomenon",
        description: "An organizing unit to filter resources."
    },
    {
        id: "platforms",
        label: "Platforms",
        description: "A sensor platform where observations are made."
    },
    {
        id: "geometries",
        label: "Geometries",
        description: "A geometry where observations are made or that was observed."
]

Listing 2: Ausgabe der REST-Schnittstelle.

Weitere Informationen

Weitere Informationen über den 52°North SOS und/oder 52°North erhalten Sie über
folgende Wege:

Die Entwicklung dieser Version des 52°North SOS wurde durch verschiedene Projekte, Organisationen und Personen unterstützt. Mehr Informationen finden Sie in der 52°North SOS Anwendung.

Sollte der SOS nicht erreichbar sein, so prüfen Sie bitte mit folgendem Befehl,
ob der Tomcat Web Service-Container läuft:
user@osgeolive:~$ sudo systemctl status tomcat8.service | grep Active
Active: active (running) since Wed 2017-06-21 12:00:42 UTC; 42min ago   <-- Tomcat läuft
[...]
Active: inactive (dead)                                                 <-- Tomcat läuft nicht, starten Sie Tomcat über folgenden befehl:
user@osgeolive:~$ sudo systemctl start tomcat8.service
Active: active (running) since Wed 2017-06-21 12:52:42 UTC; 3s ago      <-- Tomcat läuft nun

Listing 3: Befehle zum Abfragen des Status und zum Starten des Tomcat-Dienstes (Passwort für sudo: user).