2.4 Open Geospatial ConsortiumTop2.2 Usability2.3 WebMappingInhaltsverzeichnisEnglish

2.3 WebMapping

2.3.1 Begriffe

Für die elektronische Kartendarstellung im Internet gibt es mittlerweile zahlreiche Begriffe: Internet-Karte, Web-Map, netzbasierte E-Map, Cyber-Map u. a. m.

Nach Jens Fitzke lassen sich drei verschieden Oberbegriffe für diese Karten definieren [Fitzke 1999]:
GIS online dient als Sammelbegriff für alle Arten von GIS-Anwendungen, die über ein Netzwerk verfügbar sind. Internet-GIS schränkt das Betrachtungsfeld weiter ein und beschreibt stärker die auf bestimmten Protokollen basierende Netzwerktechnik. In den meisten Fällen lässt sich der Begriff noch enger fassen, in dem ein bestimmter Client (der Webbrowser) vorausgesetzt wird. In diesem Fall spricht man von einem WebGIS.

Frank Dickmann hingegen unterteilt die elektronischen Kartendarstellungen im Internet in zwei Begriffe: WebMapping und WebGIS.
WebMapping ist von dem Begriff Web-Map abgeleitet und bezieht sich demnach stärker auf den Herstellungsprozess der Karten. WebMapping umfasst neben der Visualisierung der Karte im Internet auch einfache Ansichtsmanipulationen, wie Zoomen, Verschieben sowie das Ein- und Ausblenden einzelner Ebenen (Layer). Diese Funktionen gelten in der Regel noch nicht als »GIS adäquat« [Dickmann 2004].
In Abgrenzung dazu wird von einem WebGIS gesprochen, wenn der Nutzer über die WebMapping-Funktionalitäten hinaus Sachdaten selbständig ändern und weiterführende GIS-Operationen (wie themenbezogene Abfragen, Suchfunktionen, Flächen- und Streckenermittlungen) durchführen kann.

Eine einheitliche und klare Abgrenzung zwischen WebMapping und WebGIS existiert nicht. Beispielsweise werden vielfach grundlegende GIS-Analyse-Funktionalitäten, wie die Sachdatenabfrage, ebenfalls dem WebMapping zugeordnet [Dickmann 2004].

In dieser Arbeit wird der Begriff WebMapping im weiteren Sinne nach Frank Dickmann verwendet und schließt dabei einfache analytische GIS-Funktionalitäten mit ein.

2.3.2 Klassifizierung

WebMapping-Anwendungen lassen sich nach dem Interaktionsgrad in statische und interaktive Kartendarstellungen klassifizieren [Mitchell 2005].

Die sogenannten static maps oder view only maps sind vorgefertigte Karten, die sich unmittelbar als einzelne Grafiken in Webseiten integrieren lassen.
Mit Beginn der WebMapping-Entwicklung wurden Papierkarten gescannt und lediglich in Form von Bitmaps als statische Karten im Internet visualisiert. Es entstanden umfangreiche Online-Sammlungen von statischen Karten. Diese Art der Kartendarstellung ist noch heute sehr verbreitet [Dickmann 2004][Mitchell 2005].

Bei interaktiven Karten hat der Nutzer vielfältige Möglichkeiten den Kartenausschnitt individuell anzupassen oder weiterführende Informationen zu erhalten. Beispielsweise kann der Nutzer die Karte verschieben, hineinzoomen, weitere Kartenebenen aktivieren oder Abfragen zu einem Kartenobjekt anfordern. Der Kartenausschnitt wird dazu aktualisiert und neue Informationen werden dargestellt [Dickmann 2004].

Technisch betrachtet ist die Grenze zwischen statischen und interaktiven Kartendarstellungen nicht ganz leicht zu ziehen. Es handelt sich auch dann noch um eine statische Karte, wenn die Karte verschoben (panning) bzw. in der Zoomstufe verändert wurde (zooming) und anschließend keine neuen Informationen dargestellt werden [Dickmann 2004]. Demnach bekäme der Nutzer keinen »Mehrwert«, wenn beispielsweise beim Zoomen die Karte lediglich skaliert, weitere Details aber nicht ergänzt würden.

2.3.3 Architektur

Die Grundlage von WebMapping- und WebGIS-Anwendungen bildet das Client-Server-Modell. Als Client wird ein Webbrowser benutzt, der die Kommunikation mit dem Webserver übernimmt. Abbildung 2.3.3 veranschaulicht diesen Prozess: Der Client fordert eine Karte an, in dem er eine Anfrage formuliert und diese an den Webserver schickt. Der Webserver leitet die Kartenanfrage an den Mapserver weiter. Dieser wertet die Anfrage aus, greift auf die benötigten Geodaten zurück und generiert daraus eine entsprechende Grafik. Die fertige Karte wird nun an den Webserver gesendet, wo sie in eine HTML-Seite integriert und zurück an den Client-Browser geschickt wird [Klauer 2002][Mitchell 2005].

Client-Server-Architektur (nach [Mitchell 2005])

Client-Technik

Für die Nutzung einer WebMapping-Anwendung wird auf der Clientseite lediglich ein Webbrowser vorausgesetzt. Dieser bietet standardmäßig die Möglichkeit Rasterdaten in den Formaten GIF, JPG und PNG darzustellen.
Vektordaten werden noch nicht von allen Browsern unterstützt. Mozilla Firefox2 unterstützt beispielsweise in Version 2.0 nativ die SVG 1.1 Spezifikation3. Dieser noch nicht einheitlich durchgesetzte SVG-Standard in Browsern ist ein Grund, warum Vektordaten in WebMapping-Anwendungen derzeit noch eine eher untergeordnete Rolle spielen. Die Thematik WebMapping in Verbindung mit Vektordaten soll an dieser Stelle nicht weiter vertieft werden, da es für die vorliegende Arbeit nicht von Bedeutung ist. Es sei aber auf weiterführende Literatur [Kunze 2006][Langfeld 2006] verwiesen.

Server-Technik

Auf der Serverseite wird neben einem Webserver (z. B. Apache4) ein spezieller Mapserver benötigt, der, ebenso wie die Geodaten(bank), nicht zwingend auf dem gleichen Rechner installiert sein muss [Klauer 2002]. Ein Freier und sehr verbreiteter Mapserver ist der UMN MapServer5. Dieser kommuniziert über ein Common Gateway Interface (CGI) mit dem Webserver. Viele WebMapping-Anwendungen basieren auf dem UMN MapServer (vgl. Kapitel 3.1). Geoserver6 und deegree7 sind zwei weitere bedeutende Freie Mapserver.

2.3.4 Eigenschaften

Was zeichnet eine WebMapping-Anwendung aus? Die wichtigsten Komponenten und Interaktionsmöglichkeiten einer WebMapping-Anwendung werden an dieser Stelle vorgestellt. Dabei werden die Eigenschaften allgemein betrachtet. Eine spezielle Analyse ausgewählter WebMapping-Anwendungen wird in Abschnitt 3.1 durchgeführt.

Komponenten

Die Benutzeroberfläche von WebMapping-Anwendungen besteht in der Regel aus nachfolgenden Komponenten (Abbildung 2.3.4 zeigt einige von ihnen am Beispiel von OpenLayers):

Komponenten der WebMapping-Anwendung OpenLayers

Interaktionsmöglichkeiten

Interaktivität ist mit der wachsenden Beliebtheit von WebMapping-Anwendungen und der rasanten Entwicklung des Internets in den 90er Jahren heute zu einem fundamentalen Bestandteil in der Entwicklung und Gebrauchstauglichkeit von Kartenanwendungen geworden [Ebinger u. Skupin 2007].

Eine entscheidene Rolle spielt dabei die Navigation der Karte. Der Nutzer hat die Möglichkeit die Karte über die Maus per Drag&Drop stufenlos zu verschieben. In vordefinierten Schritten bewegt sich die Karte beim Drücken der Panning-Steuerkreuz-Buttons.
Das Verändern der Karten-Zoomstufe ist in der Regel durch folgende Interaktionen möglich: Klicken auf einen + bzw. - Button, Doppelklicken auf die Karte, Aufziehen einer Zoombox mit der Maus, Bewegen des Zoomsliders oder Benutzen des Mausrades.
Einige WebMapping-Anwendungen bieten zusätzlich eine Panning- und Zooming-Navigation über die Tastatur an (vgl. Kapitel 3.1).

Die Übersichtskarte bietet dem Nutzer oftmals die Möglichkeit, per Klick oder Drag&Drop, deren markierten Bereich - und damit die gesamte Hauptkarte - zu verschieben. Umgekehrt aktualisiert sich auch die Übersichtskarte sobald der Nutzer in der Hauptkarte navigiert.

Das Ein- und Ausblenden von Ebenen anhand von Checkboxen oder Radiobuttons sowie das Zusammenklappen von Unterebenen zu einer Hauptebene sind Interaktionsmöglichkeiten in der Ebenenübersicht.

Die Funktionen innerhalb der Werkzeugleiste stellen verschiedene Grade an Interaktivität bereit: Beispielsweise die erwähnten Pan/Zoom-Möglichkeiten sowie Funktionen zum Drucken, zur Sachdatenabfrage, Objektselektion, Entfernungsmessung oder Routenberechnung.

Eine aktuelle Cursor-Positionsangabe oder das individuelle Anpassen der Kartengröße sind zwei weitere interaktive Features in WebMapping-Anwendungen. Manche Map-Applikationen bieten dem Nutzer zusätzlich eine Suche über georeferenzierte Objekte oder weiterführende Sachdaten an. Die Kombination von Suchabfragen und der Umgang mit den Suchergebnissen ermöglicht dem Nutzer auch hier ein hohes Maß an Interaktivität.

Alle genannten Features tragen zum Interaktionsangebot einer WebMapping-Anwendung bei. Durch den zunehmenden Trend von Web 2.0 und AJAX sind auch im WebMapping-Bereich deutliche Verbesserungen in der Interaktivität spürbar. Einer der wohl größten Vorteile dabei ist die asynchrone Datenübertragung durch das XMLHttpRequest-Objekt, wodurch Webseiten im Hintergrund aktualisiert werden können und somit nicht für jede Änderung neu geladen werden müssen. Diese Technik ermöglicht es WebMapping-Anwendungen nach einer o. g. Benutzerinteraktion die gewünschte Funktion in einer vergleichsweise kurzen Wartezeit im Hintergrund durchzuführen. Dadurch entwickelt sich die Usability von interaktiven WebMapping-Anwendungen in die Richtung von klassischen Desktop(GIS-)Anwendungen [Dickmann 2001][Kunze 2006].

2.3.5 Kachelung

Die Kachelung (engl. tiling) ist ein recht junges Verfahren in der WebMapping-Entwicklung, um Karten in kleinere Kacheln zu unterteilen und damit die Usability von WebMapping-Anwendungen spürbar zu verbessern.

Im Folgenden wird anhand von Abbildung 2.3.5 das WebMapping-Tiling-Verfahren allgemein erläutert [Langfeld 2006][Kunze 2006]:

Um die WebMapping-Anwendung nur mit den wirklich notwendigen Daten zu belasten, werden zunächst alle Karten in Kacheln (engl. tiles) unterteilt (a). Jede Kachel ist für sich betrachtet eine eigene kleine Karte, die sich in Kombination mit den anderen zu einer Gesamtkarte fügt und optisch nicht mehr als einzelne Grafik wahrgenommen wird. Wird vom Anwender nun eine Region ausgewählt (b), müssen alle Kacheln geladen werden, die ganz oder teilweise in dieser Region sichtbar sind (c). Zusätzlich werden noch alle nicht sichtbaren Kacheln, die an diese Region angrenzen, geladen (d). Verschiebt der Anwender nun die Karte, werden die unter (d) bereits vorgeladenen Kacheln ohne Verzögerung angezeigt. Gleichzeitig werden alle neu angrenzenden Kacheln im Hintergrund geladen und alle nicht mehr angrenzenden Kacheln auf der anderen Seite entfernt.

Bestimmen der zu ladenden Kacheln (vgl. [Langfeld 2006][Kunze 2006])

Tiling lässt sich in zwei Varianten realisieren: clientseitig und serverseitig. Beim clientseitigen Tiling definiert der WebMapping-Client die Kachelgrenzen und stellt für jede einzelne Kachel eine Anfrage an den Mapserver. Beim serverseitigen Tiling unterteilt ein Server die komplette Karte in mehrere kleinere Kacheln und leitet sie an den Webbrowser zur Darstellung weiter.

Alle geladenen Kacheln werden in der Regel von der WebMapping-Anwendung clientseitig verwaltet und in dem DOM-Baum, der die aktuelle HTML-Webseite repräsentiert, vorgehalten. Sobald sich der Kartenausschnitt ändert, wird die Kachelordnung im Programm neu berechnet, wonach überflüssige Kacheln aus den DOM-Baum entfernt und neue Kacheln in den DOM-Baum hinzugefügt werden.

Durch diesen dynamischen »Tile-Preloading-Prozess« entsteht zwar ein erhöhter Datentransfer, die Anwendung - und damit speziell das Navigieren in der Karte (das Map Browsing) - wird dadurch aber maßgeblich beschleunigt.

Für jede Zoomstufe existiert ein eigenes »Kachelgitter«. Die definierte Kachelgröße (in der Regel 256 Pixel) ist in allen Zoomstufen identisch. Zoomt der Anwender um eine Zoomstufe in die Karte hinein, verdoppeln sich die Breite und Höhe jeder Kachel. D. h. jede Kachel wird in vier neue Kacheln zerlegt, die dann detailliertere Informationen enthalten. Beim Herauszoomen ist es analog: aus vier Kacheln wird eine.


© 1. Juni 2007, Emanuel Schütze, some rights reserved.
Diese Arbeit ist unter der Creative Commons Lizenz Namensnennung-Weitergabe unter gleichen Bedingungen 2.0 Deutschland lizensiert.

2.4 Open Geospatial ConsortiumTop2.2 Usability2.3 WebMappingInhaltsverzeichnisEnglish