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]

 

Smartphone (HTC Trinity P3600) mit Client