9. Geo Web Services

9.1. Lernziele der Übung

  • Erlangen von grundlegendem Wissen zur Interoperabilität

  • Kennenlernen grundlegender WMS-Operationen

  • Anwendung mit Browser und ArcGIS Pro

9.2. Hintergrund der Übung

Interoperabilität ist ein wichtiges Schlagwort in der Geoinformatik. Der Begriff bezeichnet die Fähigkeit zur Zusammenarbeit autonomer Systeme. Über syntaktisch und semantisch eindeutig spezifizierte Schnittstellen werden Dienstleistungen für andere Systeme erbracht und Dienstleistungen von anderen Systemen genutzt. Die Komplexität und die inneren Strukturen der Systeme werden vor dem Nutzer einer Dienstleistung verborgen. Oder um es einfacher zu sagen: Interoperabilität ist die Fähigkeit von Systemen, zuverlässig miteinander zu kommunizieren.

image0

Abbildung 1: Prinzip der Interoperabilität mittels standardisierter Schnittstellen

Ein wichtiger Weg zur Interoperabilität in der Geoinformatik ist der Datenaustausch und der Aufruf von Operationen mit Hilfe von standardisierten Schnittstellen. Das Open Geospatial Consortium (OGC) befasst sich seit seiner Gründung 1994 mit der Entwicklung solcher Schnittstellen. In dieser Übung wird die wohl populärste dieser Schnittstellen vorgestellt, der sog. Web Map Service (kurz WMS).

9.3. WMS-Operationen

Ein WMS-Server beinhaltet die Operationen “GetCapabilities”, “GetMap” und “GetFeatureInfo”. In den folgenden Abschnitten werden diese Operationen genauer beleuchtet.

Ausführlichere Informationen zu den WMS-Spezifikationen finden Sie unter: http://www.opengeospatial.org/standards/wms

9.3.1. WMS-Operation “GetCapabilities”

Jeder WMS-Server, auch WMS-Instanz genannt, muss darüber Auskunft geben können, welche Operationen er unterstützt, unter welchen Internet-Adressen (URL genannt) man die Operationen aufrufen kann, für welchen geographischen Ausschnitt und zu welcher Thematik der Server digitale Karten anbietet. Derartige Daten, auch Service Metadaten genannt, sind in einem speziellen XML-Dokument enthalten (Capabilities-Dokument genannt), welches ein WMS-Server als Antwort auf einen Aufruf der “GetCapabilities”-Operation liefert.

Alle WMS-Operationen werden über das Hypertext Transfer Protocol (HTTP) aufgerufen. Hierzu wird an die URL, unter der die Operation vom Server zur Verfügung gestellt wird (WMS-Server-URL), ein Fragezeichen gefolgt von Parametern, die für jede Operation unterschiedlich sind, angehängt. Den Parametern werden durch ein Gleichheitszeichen Werte zugewiesen. Einzelne Parameter werden durch ein Und-Zeichen (”&”) voneinander getrennt.

Beispiel für eine “GetCapabilities”-Anfrage: http://Server_URL?SERVICE=WMS&REQUEST=GetCapabilities&VERSION=1.3.0

9.3.2. WMS-Operation “GetMap”

Die Operation “GetMap” dient zum Abruf von digitalen Karten. Der Aufruf der “GetMap”-Operation enthält alle Informationen, die ein WMS-Server braucht, um die gewünschte Karte zu erstellen.

Die wichtigsten Parameter sind in folgender Tabelle zusammengestellt:

Parameter mit Beispielwerten

Bedeutung

SERVICE=WMS

Service-Typ: Hier Web Map Service

&VERSION=1.3.0

Version des WMS-Standards

&REQUEST=GetMap

Name der aufgerufenen Operation

&CRS=EPSG:4326

Code für das Bezugssystem, in dem die Karte angefordert wird; definiert durch EPSG (= europäische Petroleumvermessungsgruppe).

&BBOX=11.5,47.3,12.0,49.3

Geographischer Ausschnitt der Karte, ausgedrückt als so genannte “Bounding Box”; ein umschließendes Rechteck mit den Koordinaten der linken unteren Ecke und der rechten oberen Ecke des Rechtecks, jeweils durch Komma getrennt

&LAYERS=layer1,layer2,…

Thematischer Inhalt der Karte, ausgedrückt in Layer-Namen; bei mehreren Layern durch Komma getrennt

&STYLES=style1,style2,…

Grafische Ausprägung der Karte; ausgedrückt durch Namen der Styles, die für jeden Layer im “GetCapabilities”- Dokument definiert werden. Bei mehreren Ebenen können Styles durch Komma getrennt werden. Wird für einen Layer kein Style angegeben, so wird der Default-Style verwendet

&TRANSPARENT=TRUE

Transparenz (optional); beim Wert “TRUE” und einem Bildformat, das Transparenz unterstützt, werden alle leeren Bereiche der Karte transparent dargestellt, so dass Karten von mehreren WMS-Servern überlagert werden können

&FORMAT=image/jpeg

Bildformat (hier jpeg)

&WIDTH=800

Bildgröße (Breite und Höhe) in Pixel. Seitenverhältnis muss dem im Parameter BBOX definierten Rechteck entsprechen, ansonsten wird die Karte verzerrt dargestellt

&HEIGHT=800

9.3.3. WMS-Operation “GetFeatureInfo”

Die “GetFeatureInfo”-Operation dient zum Abrufen von Zusatzinformationen (im GIS-Bereich häufig “Sachdaten” genannt) zu den auf der Karte dargestellten Geoobjekten.

Beim Aufruf der “GetFeatureInfo”-Operation werden zusätzlich zu den Parametern eines “GetMap”-Requests (wobei der Parameter REQUEST den Wert “GetFeatureInfo” statt “GetMap” erhält) noch folgende Parameter verwendet:

Parameter mit Beispielwerten

Bedeutung

INFO_FORMAT=text/plain

Format, in dem die Sachdaten ausgegeben werden sollen

QUERY_LAYERS=svozonen

Liste von Layers, in denen nach Geoobjekten gesucht werden soll.

X=345

Spalte des Bildpunkts, an dem nach Geoobjekten gesucht werden soll. Ursprung des Bildkoordinatensystems ist die linke obere Ecke des Bildes.

Y=213

Reihe des Bildpunkts, an dem nach Geoobjekten gesucht werden soll. Ursprung des Bildkoordinatensystems ist die linke obere Ecke des Bildes.

9.4. Übungsumsetzung

9.4.1. WMS-Anfragen im Webbrowser

In diesem Teil der Übung werden Sie sich mit zwei WMS-Diensten (siehe Tabelle) beschäftigen. Sie werden in einem Webbrowser Anfragen zum Leistungsumfang der Server stellen, anschließend ein Rasterbild und in einem nächsten Abschnitt Sachdaten einzelner Objekte abfragen. ArcGIS Pro benötigen Sie erst im letzten Teil der Übung.

Bezeichnung

WMS-Server URL

Beschreibung

Server A

http://www.lfu.bayern.de/gdi/wms/naturschutz/schutzgebiete?

Schutzgebiete in Bayern

Server B

http://ows.terrestris.de/osm/service?

Kartendienst der terrestris GmbH & Co. KG mit Daten von Open Street Map

Schreiben Sie ihre WMS-Anfragen in eine Text oder Word-Datei und kopieren Sie diese von dort aus in den Browser. So können Sie Ihre Anfragen leicht editieren und müssen nicht immer alles neu schreiben.

9.4.1.1. WMS-Operation “GetCapabilities”

  • Rufen Sie die “GetCapabilities”-Operationen für Server A oder B eine von beiden ist ausreichend - auf.

  • Speichern Sie die Ergebnisse als z.B. “ServerA.xml” bzw. “ServerB.xml”.

  • Öffnen Sie die Dokumente mit einem Web-Browser.

  • Erstellen Sie ein Word Dokument und beantworten Sie darin die folgenden Fragen:

    • a) Wem würden Sie eine E-Mail schreiben, wenn der Server nicht funktioniert?

    • b) Welche WMS-Operationen (Request) bietet der Server an?

    • c) Welche Bildformate unterstützt der Server für den Abruf digitaler Karten?

    • d) Für welches geographische Gebiet können diese Karten geliefert werden?

    • e) Welche Raumbezugssysteme werden für diese Karten unterstützt?

9.4.1.2. WMS-Operation “GetMap”

  • Formulieren Sie einen “GetMap”-Request an Server B mit folgenden Parameter-Werten:

    • SERVICE=WMS

    • VERSION=1.3.0

    • REQUEST=GetMap

    • CRS=EPSG:31468

    • BBOX=5323094.596,4458993.278,5343094.596,4478993.278

    • LAYERS=OSM-WMS

    • STYLES=

    • TRANSPARENT=TRUE

    • FORMAT=image/jpeg

    • WIDTH=1200

    • HEIGHT=1200

  • Speichern Sie die resultierende Karte ab: Rechtklick –> Speichern als…

  • Kopieren Sie einen Screenshot der Karte in das Word Dokument.

  • Beantworten Sie die folgende Frage im Word Dokument:

    • f) Welchen Parameter müssten Sie im Request verändern, wenn Sie den Kartenausschnitt verschieben wollten?

  • Lassen Sie sich nun eine Karte von München im Maßstab von 1:10.000 und in der Größe 1.000 x 1.000 Pixel vom Server zurückgeben:

    • Im Zentrum soll das Isartor erscheinen N:5333094.596 , E:4468993.278.

    • Die dpi-Anzahl (Punktdichte) können Sie dem zuvor gespeicherten Bild entnehmen: Rechtsklick –> Eigenschaften –> Reiter:Details.

** Hierzu müssen Sie mit Hilfe der unten angegebenen Formel die entsprechenden BBOX Koordinaten (um den gegebenen Mittelpunkt) berechnen. Zusätzliche Hinweise zur Durchführung dieser Teilaufgabe finden Sie im zugehörigen Übungsabschnitt auf Moodle. Dieser Teil der Übung ist freiwillig, trägt jedoch zum Verständis von WMS Anfragen (speziell BBOX) bei. Die Berechnung ist kein Pflichtteil der Abgabe, kann jedoch mit abgegeben werden**

Tipp: Die folgenden Berechnungsformeln sollen Ihnen dabei helfen, die entsprechenden Werte für die BBOX zu finden: Pixel/dpi = inch (Karte) inch * 2.54 = cm

9.4.1.3. WMS-Operation “GetFeatureInfo”

Sie arbeiten in der Funknetzplanung bei einem Mobilfunkunternehmen. Ihre Berechnungssoftware sagt Ihnen, dass am Ort mit der Koordinate GK Zone 4 N: 5268779, E: 4412231 aus Sicht der Signalausbreitung ein optimaler Standort für einen Funkmast ist.

Finden Sie durch eine “GetFeatureInfo”-Anfrage an Server A heraus, ob bzw. wenn ja welche Schutzgebiete von dem Bau des Mobilfunkmastes betroffen sind.

Mögliche Vorgehensweise:

  • Verwenden Sie alle verfügbaren Layer von Server A als QUERY_LAYERS.

  • Verwenden Sie text/html als INFO_FORMAT.

  • Definieren Sie eine sehr kleine quadratische BoundingBox mit der Koordinate des Funkmasts als Mittelpunkt.

  • Nutzen Sie als Bezugssystem den Code EPSG:31468.

  • Setzen Sie die Bildgröße auf 3x3 Pixel.

  • Verwenden Sie X=1 und Y=1 als Spalte bzw. Reihe des Bildpunkts, an dem geschaut werden soll, ob der Punkt innerhalb einer Schutzverordnungszone liegt, bzw. welche Schutzverordnung dort gilt.

    Falls sich der Punkt innerhalb einer Schutzverordnungszone befindet, liefert der WMS-Server Sachdaten, die Aufschluss darüber geben, welche Schutzgebiete betroffen sind.

  • Notieren Sie auch die Antwort zu Frage g) in Ihrem Word-Dokument

    • g) Geben Sie an, ob Schutzgebiete betroffen sind und wenn ja, welche?

9.4.2. Interoperabilität zwischen WMS-Server und WMS-Clients

Um zu einer aussagekräftigen Karte zu kommen, bietet es sich an, die Karte mit Schutzverordnungszonen von Server A mit einer Darstellung der Open-Street-Map-Daten von Server B zu kombinieren.

Da über die Adresszeile des Browsers nur immer ein Service angesprochen werden kann, ist eine Überlagerung mehrerer Bilder von verschiedenen Quellen nur durch den Einsatz weiterer Software möglich; so können z.B. durch ein in eine HTML-Seite eingebettetes Java-Applet oder einen lokal auf dem Rechner des Anwenders installierten Client (z.B. ArcGIS Pro oder Google Earth) mehrere Bilder von verschiedenen Web Map Services übereinander gelegt werden.

  • Binden Sie Server A und Server B in ArcGIS Pro ein:

    • Starten Sie ArcGIS Pro

    • Klicken Sie auf Insert tab –> Connections –> New WMS Server –> URL eingeben

Im Catalog finden Sie nun unter Servers die eingebundenen WMS. Durch aufklappen des obersten Punktes finden Sie die verfügbaren Layer. Fügen Sie diese durch drag & drop hinzu.

image1

Abbildung 2: Hinzufügen eines WMS-Servers

image2

Abbildung 3: Zusammengeführte Kartenlayer von OSM und Landesamt für Umwelt

  • Beantworten Sie die folgenden Fragen in Ihrem Word Dokument:

    • h) Welche Operation ermöglicht es dem Client, eine Liste der Karten-Layer anzuzeigen?

    • i) Welche Operation ruft er auf, wenn Sie am Client die Karte verschieben?

    • j) Welche Operation ruft der Client auf, wenn Sie bei aktiviertem Info-Button (z.B. ArcGIS Pro) mit dem Mauszeiger auf ein bestimmtes Objekt in der Karte klicken?