XPointer: Wegweiser im Extensible-Dschungel

XPointer sollen im Zusammenspiel mit XLinks die präzise Identifikation und den Verweis auf XML-Fragmente ermöglichen, ähnlich wie Anker und Hyperlinks in HTML-Dokumenten.

vorlesen Druckansicht 28 Kommentare lesen
Lesezeit: 2 Min.

Nach nicht ganz drei Jahren Reifezeit hat das Worldwide Web Consortium (W3C) die von den W3C-Arbeitsgruppen XML Linking und XML Core überarbeitete XPointer Candidate Recommendation als offizielle Empfehlung freigegeben. XPointer sollen im Zusammenspiel mit XLinks die präzise Identifikation und den Verweis auf XML-Fragmente ermöglichen, ähnlich wie Anker und Hyperlinks in HTML-Dokumenten. Dabei gehen die erweiterbaren Zeiger weit über die Möglichkeiten der in der XML 1.0-Empfehlung festgelegten ID-Referenzierung hinaus: Mittels frei definierbarer Schemata darf sich ein Zeiger auch auf nicht benamte Elemente beziehen.

Das dreiteilige Empfehlungs-Opus beschreibt neben dem grundlegenden XPointer Framework auch die Schemata XPointer element() und XPointer xmlns(). Via element() erfolgt beispielsweise die Referenz auf abgezählte Elemente, à la

element(/1/2)

xmlns() hingegen sorgt für Eindeutigkeit, wenn man den Wald vor lauter Bäumen nicht mehr sieht: Die Zuordnung von Namespaces hilft, Namensmehrdeutigkeiten aufzulösen. Das Framework beschreibt letztendlich nur die Syntax, um die Wegweiser zusammenzubasteln; kurioserweise harrt das als Working Draft vorliegende xpointer()-Schema nämlich noch seiner Freigabe. Für Interoperabilität ist jedoch vorgesorgt. Auf unterschiedlichen Schemata basierende XPointer dürfen in Reihe geschaltet werden, die erste Referenz, die bei der Auswertung keinen Fehler liefert, wird dann genommen:

#xpointer(id('boy-blue')/horn[1])element(boy-blue/3)

Die XPointer-Empfehlung dürfte auch Microsoft zugute kommen: In letzter Zeit wurden vermehrt Bedenken seitens der Hersteller von Antiviren-Software geäußert, dass Office 2003 mit seinem (halb-)offenen XML-Datei-Format das Aufspüren von schädlichen Makros erschweren könnte. Diese könnten sich überall im XML-Dokument befinden, nicht nur im Header. Müsste nun ein Virenscanner große XML-Dokumente erst durchsuchen, wären aufgrund von Performance-Problemen sogar DoS-Attacken denkbar. (Tobias Engler) / (hps)