Konzepte Content-Repräsentation & Markup-Sprachen

11.1 Einleitung: Robuste Knotenadressierung

Bereits ín den 1960er Jahren wurde das Auffinden zusammengehöriger, strukturierter Informationseinheiten als ein wesentlicher Bestandteil leistungsfähiger Informationssysteme angesehen. Wie in der geschichtlichen Betrachtung in Lerneinheit 6 bereits gezeigt, war es gerade diese Anforderung, die zur Entwicklung der logischen Dokumentauszeichnung in der heute bekannten Form führte. Zahlreiche auch heute noch gebräuchliche Anwendungen zeigen, daß bei der Knotenadressierung vorwiegend ID-basierte Mechanismen verwendet wurden, die auf der Existenz eindeutiger Bezeichner für die gewünschten Knoten beruhen.

Die Erkenntnis, daß diese Art der Adressierung sehr fehleranfällig ist, und die Notwendigkeit, Knoten in Dokumenten zu adressieren, für die kein Schreibzugriff möglich ist, führten zur Definition flexibler Adressierungssprachen wie HyTime und den Zeigerelementen in TEI. Parallel dazu entstanden zahlreiche Programme mit proprietären Mechanismen für die Identifikation von Knoten zur weiteren Verarbeitung. Zu unterscheiden sind hier insbesondere prozedurale Mechanismen, in denen beschrieben wird, wie die gewünschten Knoten gefunden werden können, sowie deskriptive Mechanismen, in denen beschrieben wird, welche Eigenschaften die gesuchten Knoten besitzen.

Für die erstgenannte Form werden häufig Navigationsmechanismen eingesetzt, die unmittelbar auf den Datenstrukturen des zugrundeliegenden Dokumentmodells operieren. Ein Beispiel für derartige Funktionen stellt das in Lerneinheit 8 vorgestellte Kernmodul des DOM zur Verfügung. Der Algorithmus zum Auffinden von Knoten ist dabei im Code des Anwendungsprogramms integriert und läßt sich im allgemeinen nur mit entsprechenden Programmierkenntnissen nachvollziehen. Dies wirkt sich vor allem bei der Wartung der Software nachteilig aus und erhöht somit die Gesamtkosten des Systems.

Die konsequente Folge dieser Beobachtung ist eine Erhöhung des Abstraktionsgrads der zur Knotenadressierung eingesetzten Sprachmittel, insbesondere durch Verwendung beschreibender Techniken. In Lerneinheit 10 wurden mit HyTime und TEI bereits einige deskriptive Ansätze aufgezeigt, die die Entwicklung im XML-Umfeld nachhaltig beeinflußt haben. In Abhängigkeit des jeweiligen Anwendungsfelds ergaben sich dabei unterschiedliche Ausprägungen deskriptiver Sprachen zur Beschreibung von Knoten innerhalb einer hierarchischen Struktur. Die meisten unter ihnen verfolgen jedoch die gleiche Grundidee, die in dieser Lerneinheit am Beispiel der XML Path Langauge (XPath) erläutert werden soll.

In Lerneinheit 10 wurde mit XPointer bereits eine Anwendung vorgestellt, die von XPath Gebrauch macht. Ein weiteres typisches Anwendungsgebiet für Knotenadressierungssprachen ist die Transformation strukturierter Dokumente, die oftmals zur Aufbereitung der Daten für einen nachfolgenden Formatierungs- bzw. Darstellungsprozeß herangezogen wird. XPath ist speziell für diese Aufgaben entwickelt worden und in diesem Zusammenhang auf eine einfache Spezifikation von Dokumentstrukturen ausgerichtet. Demgegenüber existieren zahlreiche vergleichbare Sprachen aus dem Datenbank-Kontext, die im Hinblick auf eine effiziente Suche von Zeichenketten in strukturierten Dokumenten optimiert sind. Zu nennen ist hier in erster Linie die nicht-standardisierte XML Query Language (XQL), für die sich in den letzten Jahren langsam ein einheitlicher Kern herausgebildet hat.

Kommentare (0)

Ihr Kommentar

Name