Umsetzungsschritte

Für eine erfolgreiche Projektbearbeitung wurden einzelne Arbeitsschritte definiert. Diese Projektschritte setzen sich zusammen aus:

  • Erstellung einer Website, die die Metadaten präsentiert
  • Erstellung von Templates zur Verarbeitung von XML-Inputdaten
  • Einbinden von Zusatzinformationen aus Datenbanktabellen
  • Testen der Metadatenverarbeitung mit Originaldaten
  • Fehleranalyse
  • Ergebnispräsentation

Das XHTML-Gerüst

Für ein XSL-Transformationsergebnis, das gültigen XHTML-Code erzeugt, wurde im Vorfeld eine Website-Konzeption erstellt. Darin wurden sowohl gestalterische Aspekte wie die Strukturierung des Inhaltes, die Navigationserstellung als auch die farbliche Gestaltung betrachtet.

Die Gestaltung wurde in zwei CSS Dateien gespeichert. Eine Datei entstand dabei für Screen und eine weitere für Print.

Ausschnitt eines XML-Inputdokumentes und das Ergebnis nach der Transformation als Ausschnitt eines XHTML-Dokumentes

Die Transformationstemplates

Insgesamt wurden 54 XSLT-Templates geschrieben, die die Verarbeitung des Eingabedokumentes steuern. Da in diesen Ausgangsdaten zu wenig Informationen enthalten waren, um eine nutzerfreundliche XHTML-Website erstellen zu können, mussten drei weitere XML-Dokumente (Zusatzdokumente) während der XSL-Verarbeitung in den Datenworkflow eingebunden werden.

Einige der Verarbeitungsanweisungen sind in dem unteren Bild dargstellt.

Aufgaben einzelner XSLT-Templates

Der Daten- und Transformationsworkflow

Für die XSL-Transformation wurde ein open-source XSLT-Prozessor verwendet. Dies ist Saxon 8. Er unterstützt die XSLT2.0 Spezifikation und kann damit umfangreiche Datenmanipulationen umsetzen. Für die Erzeugung des Ergebnisdokumentes muss der XSLT-Prozessor verschiedenste Daten gleichzeitig verarbeiten. Dies sind:

  • die Transformationstemplates, die in mehreren XSL-Dateien gespeichert sind (sie steuern den Ablauf des Transformations- prozesses)
  • das vom Catalog-Service erzeugte XML-Dokument, welches die Metadaten enthält
  • insgesamt drei weitere XML-Dokumente, um einerseits das Ergebnis mehrsprachig erzeugen zu können und weiterhin Texte (wie Hilfetexte für Tooltips) in das Ergebnisdokument einfügen zu können

Die CSS-Dateien werden am gleichen Ort (Webserver) abgelegt, an dem auch das erzeugte XSLT-Ergebnis abgelegt wird.

Grundsätzlich kann der XSLT-Prozessor XML-Metadaten transformieren, die der Norm ISO 19139 entsprechen. Allerdings läuft der Transformationsprozess ohne Validierung ab, sodass auch bei Schemaungültigkeit eine Transformation erfolgt. Dabei muss die Ausgangsdatei einige Mindestanforderungen erfüllen. Diese werden ausführlich im Textteil der Diplomarbeit erläutert.

Transformationsworkflow für eine Metadatenpräsentation

 

Testdaten

öffnet einen XML-Testdatensatz

Da lediglich ein XML-Metadatensatz (unvollständig) zur Projektbearbeitung vorlag, wurde ein eigener Testdatensatz mit bestimmten XML-Strukturen und Datentypen angelegt. Die Transformation dieses Datensatzes von XML nach XHTML diente dem Zweck, die erstellten XSLT-Templates auf ihre Robustheit und korrekte Arbeitsweise hinreichend zu testen.

 
 

AdV-Schema

Die AdV (Arbeitsgemeinschaft der Vermessungsverwaltungen der Länder) hat zusätzlich zu den in der Metadaten-Norm (ISO 19115) festgelegten Metadatenelementen einige Erweiterungselemente festgelegt (AdV-Profil). Um die Gültigkeit eines XML-Dokumentes gegenüber dem AdV-Profil prüfen zu können, wurde außerdem eine Schemaerweiterung erstellt. Dieses neue XML-Schema (AdV-Schema) enthält das komplette ISO Schema (ISO 19139) und erweitert dieses um die von der AdV festgelegten Metadatenelemente.

Ein XML-Metadatensatz kann gegen das AdV-Schema validiert werden. Die Validierung kann dabei mit Hilfe von Validierungstools (wie mit der Software XMLSpy) vorgenommen werden.

 
 

Problematik Sonderzeichen

Da in XML-Dokumenten auch innerhalb des gespeicherten Textes Sonderzeichen wie <BR> oder <B> auftreten können, so müssen diese vor dem XSLT-Prozessor maskiert werden. Denn andernfalls würden Fehler im Transformationsprozess auftreten. Sind die vom Catalog-Service erzeugten XML-Metadatendokumente URL-codiert, so ist die angesprochene Maskierung der Sonderzeichen bereits erfolgt.

URL-codierte Texte müssen nach der Transformation wieder decodiert werden, da sie in codierter Form nicht lesbar sind. Bsp. %3Cb%3EEbenen%3C%2Fb%3E