XPath

Einführung

Dieser Abschnitt beschäftigt sich mit XPath und den Stärken dieses Standards beim Einsatz in 3B2. Die Grundlagen und die Entwicklung von XPath sowie seine Integration für die Template-Entwicklung in 3B2 werden beschrieben.

Was ist XPath?

XPath wurde als Hilfsmittel für XSLT, der Transformationssprache von XSL und für XPointer entwickelt. Beide Standards benötigten ein Tool, mit dem sie auf Elemente oder Gruppen von Elementen in einem wohlgeformten XML-Dokument zugreifen können.

Aufgrund dieser Fähigkeit wird in 3B2 XPath als Grundlage verwendet und es werden eigens dafür entwickelte Erweiterungen zur Formatierung von XML-Dokumenten eingesetzt.

Grundsätze von XPath

Der Schlüssel für die Adressierung von Teilen eines XML-Dokumentes ist der Lokalisierungspfad, der beschreibt, wie etwas gefunden werden kann. Ein Lokalisierungspfad gibt an, wie ein bestimmter Absatz in einem Dokument gefunden wird, z.B. 'der zweite Absatz im dritten Kapitel'.

XPath sieht ein XML-Dokument als Baumstruktur und verwendet Begriffe, die zur Definition von Stammbäumen üblich sind, zur Beschreibung der Ebenen. In der Baumstruktur gibt es sieben Knotentypen, die jeweils einem Teil des XML-Dokumentes entsprechen: element (Element), attribute (Attribut), text (Text), processing instruction (Processing Instruction), comment (Kommentar), namespace (Namespace) und root (Wurzel). Diese Knoten sind die addressierbaren Teile des Dokumentes. Der Wurzel-Knoten ist die Wurzel des Dokumentes (jedes XML-Dokument besitzt einen Wurzel-Knoten, den man sich als Behälter des gesamten Dokumentes vorstellen kann).

XPath beschäftigt sich nicht nur mit der Lokalisierung, sondern es werden damit auch bestimmte Funktionen und Expressions auf den vom Lokalisierungspfad ausgewählten Knoten ausgeführt, wie etwa Kontext-Abfragen, die Auswahl von Knoteninhalten und das Zählen der vom Lokalisierungspfad ausgewählten Knoten. Nachfolgend sehen Sie eine Baumstruktur, die fünf Knotentypen beinhaltet. Die Knoten Doc, Chap und Para sind Elemente.

Warum XPath in 3B2?

Die XPath-Syntax kann zur schnellen Addressierung von Teilen eines XML-Dokumentes verwendet werden, d.h. für umfangreiche Kontext-Abfragen, die zuvor mehrere Formate benötigten. XPath kann in Verbindung mit 3B2 für Aufgaben eingesetzt werden, für die der Standard allein nicht ausgerichtet ist. 3B2 wurde mit weiteren Funktionen ausgestattet, damit XPath in der Lage ist, 3B2-spezifische Befehle auszuführen, wie Showstring ähnliche Funktionen, das Sammeln von Inhalten und Markup und das Finden der Anfangs- und Endpositionen von Knoten. XPath kann außerdem direkt im Text verwendet werden, um die Ergebnisse einer Expression darzustellen und sie Variablen und Tags unter Verwendung normaler Syntax zu übergeben.

Vorteile

Die Integration von XPath in 3B2 verspricht eine weitere Verbesserung der Template-Entwicklung in 3B2, die vereinfacht und beschleunigt wird. Die Verwendung von XPath minimiert den Bedarf an Zählern, Ausschneiden/Kopieren-Routinen und anderen Showstring-Expressions, da jede Abfrage oder Manipulation ausgeführt werden kann, wann und wo es notwendig ist.

Weitere Informationen

Weitere Informationen zu XML und XPath finden Sie auf der Website des W3C unter:

www.w3c.org/tr/xpath

Auf der XML-Website finden Sie außerdem News, Schulungsinformationen und Informationen zu XML in Industrie und Handel:

www.xml.com


Siehe auch