2.3 WebMapping | Inhaltsverzeichnis |
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.
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.
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].
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.
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.
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.
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):
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].
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.
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.
2.3 WebMapping | Inhaltsverzeichnis |