Knoten
In den vorhergehenden Abschnitten haben wir gesehen, wie XQuery die einfachen Datentypen von XML Schema integriert und einerseits in der Verwendung einschränkt (weil Listen- und Vereinigungstypen ausgeschlossen werden), aber andererseits auch um eigene Typen erweitert, um die fehlende totale Ordnung auf xs:duration auszugleichen und um Dokumente mit fehlender Typinformation zu behandeln.
Das so entstehende Typsystem reicht aber für die Zwecke von XQuery noch nicht aus. In einem XML-Dokument gibt es Anteile, die von XML Schema nicht beschrieben werden können, wie z. B. Kommentare oder Verarbeitungsanweisungen oder auch das Dokument als eigene Einheit. Außerdem lässt sich mit XML Schema nur die mögliche Struktur, nicht aber die tatsächliche Struktur eines XML-Dokumentes beschreiben.
Zur Beschreibung dieser tatsächlichen Struktur gibt es Datenmodelle wie XML Information Set, das DOM Structure Model oder das XPath 1.0-Datenmodell. Da XQuery eine möglichst große Kompatibilität zu XPath 1.0 herstellen möchte, baut es auf dessen Datenmodell zur Darstellung der aktuellen Dokumentstruktur auf. XPath 1.0 kennt sieben Arten von Knoten: Elementknoten, Dokumentknoten, Attributknoten, Namensraumknoten, Knoten für Verarbeitungsanweisungen, Kommentarknoten und Textknoten. XQuery übernimmt diese Knotenarten, lässt aber eine genauere Bestimmung der Knoten zu, wie wir sehen werden.
Jeder Knoten hat einen textuellen Wert und einen getypten Wert. Damit kommen wieder die atomaren Typen ins Spiel, die wir in den vorigen Abschnitten behandelt hatten.
Quelle: "XQuery – Grundlagen und fortgeschrittene Methoden", dpunkt-Verlag, Heidelberg (2004)
<< zurück | vor >> |