XML Linking Language (XLink) und XML Pointer Language (XPointer)
Die XML Linking Sprache (XLink, http://www.w3.org/XML/Linking) erlaubt es, Elemente in XML-Dokumente einzufügen sowie Verknüpfungen zwischen Ressourcen herzustellen. XLink geht damit über das Verlinken von Informationen, wie es in HTML verwendet wird, wesentlich hinaus. In SVG-Dokumenten gestattet es XLink, separat definierte Symbole, wie z. B. kartographische Signaturen, oder Rasterdaten an beliebiger Stelle zu referenzieren und in eine Karte zu integrieren.
Ein Schema-Dokument xlinks.xsd ist Teil der GML3 zugrunde liegenden Schemadefinitionen. Elemente und Datentypen können somit durch Verweise auf andere Deklarationen beschrieben werden (vgl. Beispiele in Abschnitt 3).
Unterstützt wird XLink durch XPointer (http://www.w3.org/TR/xptr-framework/) zur gezielten Adressierung von Dokumentteilen (Fragmenten). Dabei leitet das Zeichen # (wie in nachfolgenden Beispielen teilweise verwendet) den Namen des Fragments ein.
CSS2 - Cascading Stylesheets
Kaskadierende Stilangaben (Cascading Style Sheets, CSS, (http://www.w3.org/Style/CSS/) spezifizieren auf einfache Weise die Darstellung von XML-Dokumenten auf Ausgabegeräten unterschiedlicher Art (Bildschirm, Drucker, ...). Mit der Trennung von Präsentation und Inhalt wird ein wesentliches Konzept der raumbezogenen Informationsverarbeitung umgesetzt. In SVG können z. B. mittels CSS Darstellungsstile für einzelne Layer zentral definiert werden. Auch GML sieht die Möglichkeit vor, Stilvorgaben für die Visualisierung von Geo-Daten zu spezifizieren.
SVG
SVG als XML-basierte, textorientierte Auszeichnungssprache erlaubt es, zweidimensionale, skalierbare Grafiken zu beschreiben,
die Vektorelemente, Rasterdaten und Text als grafische Objekte in ein XML-Dokument integrieren.
Die Darstellung der Grafiken erfolgt durch sogenannte User Agents, d. h. Browser, Browser-Plugins oder eigenständige SVG-Viewer. Eine Übersicht - leider nicht immer aktualisiert - gibt ( http://www.w3.org/Graphics/SVG/SVG-Implementations.htm8#viewer)
Als Vektorgrafikformat hat SVG viele Vorteile gegenüber den herkömmlichen, im Web verwendeten Grafikformaten wie GIF, JPG und PNG (Watt 2001, Fibinger 2001):
- Nicht-proprietäres, offengelegtes Format,
- Hochauflösende Grafiken sind möglich, die auch bei Skalierung nicht an Qualität verlieren.
- SVG unterstützt eine hohe Farbtiefe
- Animationen sind möglich, die im Gegensatz zu animierten GIF-Grafiken nicht zu größeren Dateien führen.
- SVG-Grafiken untersützen das Document Object Model (DOM, W3C 2005). Dies ermöglicht es, SVG-Elemente per ECMAScript oder jeder anderen objektorientierten Programmiersprache zu manipulieren.
- Filtereffekte, wie z. B. Schatten, sowie Farbverläufe sind möglich.
Aufgrund dieser besonderen Eigenschaften hat SVG insbesondere im Bereich der Geoinformatik und Kartographie sehr hohe Bedeutung gewonnen. So ist SVG beispielsweise für den Web Map Service als Ausgabeformat vorgesehen (Kettemann 2005a, 2005b). Einige GI-Systeme und -Werkzeuge bieten direkte SVG-Erzeugung, für andere stehen Konvertierungswerkzeuge als Zusatz zur Verfügung (Behr 2005). Ebenfalls existieren Ansätze für die Online-Digitalisierung von Geodaten (Neumann 2004). Am Landesvermessungsamt Baden-Württemberg wird SVG für die Herstellung analoger touristischer Karten genutzt (Graf 2004).
Bezüglich GML ist die Erzeugung von SVG mittels XSL für die Visualisierung von besonderer Bedeutung
Extensible Stylesheet Language
Mit der Extensible Stylesheet Language Family (XSL, http://www.w3.org/Style/XSL/) können XML-Dokumente in andere XML-Dokumente oder in Datenströme transformiert werden können. Zur XSL-Sprachfamilie gehören XSL Formatting Objects (XSL-FO, hier nicht weiter diskutiert), XSLT und die XML Path Language (XPath).
XSL Transformations (XSLT) dienen der Überführung von Inhalt und Struktur eines XML-Dokuments in eine andere Struktur. Wichtig für den Bereich der Geoinformatik ist die Transformation von GML-Instanzen in SVG-Dokumente (Abbildung 3), ein Ansatz, der z. B. von der britischen Ordnance Survey zur Visualisierung von Katasterdaten verwendet wird (Ordnance Survey 2005). Eine praktische Umsetzung zeigt Barth (2004) mit der Überführung bayerischer DFK-Daten nach SVG mittels XSLT.
Abbildung 3: Prinzip der Visualisierung von GML mittels XSL-Transformation. GML-Daten werden durch in XSL formulierte Vorgaben nach SVG transformiert und zur Anzeige gebracht.
Mit XPath (http://www.w3.org/TR/xpath) werden bei der Transformation Teile eines XML-Dokuments adressiert (W3C 2002). Für diese Selektion wird keine XML-Syntax verwendet, sondern eine Art Pfadangabe. So wird beispielsweise aus dem tkfd:Bahnhof-Element des zuvor gezeigten XML-Beispiel mittels
<xsl:value-of select="substring-before(gml:centerOf/gml:Point/gml:pos,' ')"/>der Rechtswert selektiert.