Konzepte Content-Repräsentation & Markup-Sprachen

8.3 Verarbeitungsprozeß

Wie bereits in Lerneinheit 6 dargelegt, erfordern logische Auszeichnungssprachen aufgrund ihres hohen Abstraktionsgrads typischerweise einen zweistufigen Verarbeitungsprozeß: In der ersten Stufe wird die systemabhängige Repräsentation eines Dokuments in eine abstraktere Form umgewandelt, in der Markup-Bestandteile und Inhaltsdaten unterschieden werden. Für die weitere Verarbeitung wird schließlich nur noch diese abstrakte Repräsentation herangezogen. Abbildung 7 zeigt eine schematische Darstellung dieses zweistufigen Vorgehens am Beispiel von XML:

Abbildung 7. Zweistufige Dokumentverarbeitung: Schematische Darstellung

Gut zu erkennen ist hier, wie sich die Zweiteilung üblicherweise in der Architektur von Anwendungsprogrammen widerspiegelt. XML-Quelldokumente werden von einem XML-Prozessor — ggf. unter Berücksichtigung weiterer Parameter — in eine abstrakte interne Darstellung überführt. Diese bildet schließlich die Grundlage für die weitere Verarbeitung, wobei auch hier weitere externe Informationen herangezogen werden können. Das Ergebnis des Gesamtprozesses ist anwendungsabhängig und ist an dieser Stelle vorerst nicht von Interesse.

Eine Folge der oben gezeigten Aufgabenteilung zwischen den Programmkomponenten ist die Eigenständigkeit des XML-Prozessors. Zu Beginn dieser Lerneinheit wurde gezeigt, daß XML-Dokumente vollständig selbstbeschreibend sind. Das bedeutet, daß ein Parser alle Informationen, die er zur Umsetzung in die abstrakte Repräsentation benötigt, entweder direkt aus dem Dokument entnehmen kann oder zumindest eine auflösbare Referenz — etwa einen URL für den externen Teil der DTD — im Dokument findet. Diese Eigenschaft macht es möglich, XML-Prozessoren als anwendungsunabhängige Module zu implementieren, die in beliebige Anwendungsprogramme integriert werden können (vgl. Abbildung 8).

Abbildung 8. XML-Prozessor als Programm-Modul

Damit Programm-Module gegeneinander austauschbar sind, müssen allerdings einige Rahmenbedingungen erfüllt sein. Neben vielen Abhängigkeiten von Programmiersprachen, Aufbau des Objektcode usw. muß auch die Schnittstelle zwischen dem XML-Prozessor und der Anwendung eindeutig definiert sein. Dazu gehört zum einen die interne Darstellung der Strukturkomponenten und Inhaltsdaten eines XML-Dokuments, zum anderen aber auch die funktionale Schnittstelle, die zur Steuerung des Verarbeitungsprozesses dient.

Hier haben sich mit der Zeit viele unterschiedliche Ansätze herausgebildet, die jedoch bestimmte Gemeinsamkeiten auf der konzeptionellen Seite aufweisen. So wird insbesondere zwischen der Dokumentdarstellung als hierarchische Struktur (oftmals ein Baum im Sinne der Graphentheorie) und als Ereignisstrom unterschieden. Im folgenden sollen diese beiden grundlegenden Konzepte kurz beleuchtet und die daraus resultierenden internationalen Standards bzw. De-facto-Standards im SGML-/XML-Umfeld vorgestellt werden.

Kommentare (0)

Ihr Kommentar

Name