Entscheidung
Die Entscheidung, welcher WMS-Client verwendet wird, basiert auf zwei Diplomarbeiten. In Zusammenarbeit mit Mandy Fleischhauer, die in ihrer Diplomarbeit: „Entwurf und Implementierung eines AJAX-basierenden WMS-Clients“, einen Desktop WMS-Client präsentiert, haben sich die folgenden Auswahlkriterien ergeben: OGC-Konformität, AJAX-Technologie, browserbasierender Client-Server-Mix, leichte Erweiterbarkeit und eine performante Arbeitsweise, um eine schnelle Präsentation der angeforderten Daten zu ermöglichen. Nach gemeinsamer Abstimmung mit unserem Betreuer Herrn Prof. Dr.-Ing. Schwarzbach und Frau Fleischhauer wurde das Produkt: „Mapbuilder“ von „OSGeo“ ausgewählt. Das Open Source Produkt Mapbuilder ist unter der GNU LGPL-Lizenz zu erhalten und erfüllt alle definierten Kriterien. Die Mapbuilder Community umfasst aktuell 47 aktive Entwickler (Stand: 20.06.2007) und bietet neben zahlreichen Beispielen, einem Tutorial und einer Mailing-Liste auch eine umfangreiche Dokumentation. Durch die Integration von OpenLayers profitiert Mapbuilder stark. Das effiziente dynamische Nachladen der Kacheln ist nun bzw. in naher Zukunft auch in Mapbuilder zu finden und verschont den Nutzer mit langen Ladezeiten. Die neueste Alpha-Version (Alpha 2) wurde am 14.08.2007 veröffentlicht.
Browser-basierender Client
Mapbuilder-Anwendungen sollen möglichst einfach für den Benutzer auszuführen sein, ohne dass sie neue Software installieren oder herunterladen müssen, abgesehen von den schon angesprochenen System-Voraussetzungen die bei der PDA-Anwendung gegeben sind.
Minimale serverseitige Anforderungen
- Der Client sollten, wenn möglich, gar keine serverseitigen Skripte benötigen.
- Momentan werden durch die Server-Umgebung PHP und J2EE/JSP als serverseitige
Skriptsprachen unterstützt.
Einfache Integration von Bibliotheken in eine Webseite
Mapbuilder-Widgets sind in HTML-Webseiten einfach zu integrieren, damit auch Anwender mit Basis-HTML- und -JavaScript-Wissen Mapbuilder in eine Seite einbauen können.
Der Datendurchsatz ist möglichst gering zu halten
Die ganze Client-Funktionalität und der Darstellungsinhalt werden heruntergeladen, deshalb muss der Client möglichst schmal gehalten werden. Die herunterzuladenden Daten sollten statisch sein, damit sie vom Browser lokal gecached werden können.
Verwendet wird JavaScript / XML / XSL / DHTML
Mapbuilder speichert die Daten intern in XML-Dateien. Die XML-Dateien werden mittels XSL in HTML konvertiert, da XSL den Vorteil besitzt vom Client und vom Server verwendet werden zu können. DHTML und JavaScript Technologien sollten zum Manipulieren von Mapbuilder-Objekten im Browser verwendet werden.
Modulares Design
Der modulare Entwurf hat viele Vorteile:
1. Ein Client benötigt nur die Module die er auch verwendet. Dies reduziert
die Größe des Clients.
2. Das modulare Design ist einfacher zu verstehen, zu pflegen und
weiterzuentwickeln.
3. Zusätzliche Funktionen können einfach hinzugefügt und entfernt
werden.
Open Source
Mapbuilder ist wie schon erwähnt Open Source-Software. Open Source wurde
aus folgenden Gründen gewählt:
- Entwickler erweitern Open Source-Software vermutlich eher als
Closed Source-Software.
- Keine Bibliothek, die in Mapbuilder verwendet oder entwickelt wird,
sollte an eine unverträgliche oder geschlossene Lizenz gebunden
sein.
Browser
Bei der Verwendung auf mobilen Endgeräten besitzt bisher nur ein Browser die notwendige JavaScript- und AJAX-Unterstützung. Dieser Browser ist ein Ableger von Mozilla, der Minimo. Die aktuelle Version ist der Minimo 0.2. In unserem Projekt verwenden wir jedoch eine Nightly Build-Version vom Minimo
Standards
Das Verwenden von Standards erhöht in sehr großem Maße die Flexibilität und
die Wiederverwendbarkeit der Bestandteile von Mapbuilder. Die Mainstream-
Web Standards (HTML, CSS, XML, XSL, usw.) werden durchweg verwendet.
Mittels Web Service-Standards wird auf den Inhalt der Anwendung
zugegriffen. Dabei werden vornehmlich die durch das Open Geospatial
Consortium (OGC) entwickelten Open GIS-Standards verwendet.
Diese schließen ein:
• Web Map Service (WMS) – der geographische Informationen in ein
Rasterbild rendert
• Web Feature Service (WFS) – mit dem der Zugriff auf
geographische Daten als Vektordaten möglich ist
• WebMapContext (WMC) – XML-Datei um die aktuell
angezeigten Karten zu speichern und später wieder zu laden
• Styled Layer Descriptor (SLD) – „Beschreibung von Karteninhalt der seit
WMS 1.1.1 als ergänzende Format-Spezifikation zum Web Map Service
zur Steuerung der grafischen Ausgestaltung von Webkarten anhand
inhaltlicher Kriterien dient, Version 1.0.0“ [URL 14]