Titelblatt des Buchs
Reginald Ferber Information Retrieval
Suchmodelle und Data-Mining-Verfahren für Textsammlungen und das Web

Position im Angebot Information Retrieval -> Information Retrieval und das Web -> Explizit strukturierte Dokumente -> XML
Stichwörter dieser Seite XPath, XML Path Language, XSLT, XSL Transformations, XML Query Language, XQL, Fakten-Retrieval
Navigation Zurück ]    [ Inhalt ]    [ Stichwörter ]    [ Feedback ]    [ Home ]

4.1.3.3: XPath, XQuery

Mit SGML bzw. XML können Dokumente komplex strukturiert werden. In vielen Anwendungen, insbesondere bei der Suche nach Dokumenten oder Dokumentteilen, ist es daher nötig, auf bestimmte, genau spezifizierte Elemente bzw. Dokumentteile zuzugreifen. Dazu wurden vom W3C verschiedene Mechanismen spezifiziert.

Mit XPath (XML Path Language) können Elemente, Elementattribute und Elementinhalte innerhalb eines Dokuments aufgrund ihrer "Lage" (also aufgrund der Elemente, in denen sie enthalten sind) spezifiziert werden. Dazu wird jedes Dokument als ein Baum aufgefasst, wobei jedes Element einen Knoten des Baums bildet. Aber auch Attribute und Textinhalte der Elemente werden als Knoten dargestellt. Die Spezifikation geschieht durch einen Ausdruck, der einen Pfad beschreibt. Dazu gibt es eine ausführliche und eine abgekürzte Schreibweise. Die abgekürzte Schreibweise lehnt sich eng an die UNIX-Notation von Dateinamen in einem Verzeichnisbaum an. Entsprechend kann der Pfad relativ zum aktuellen Element, absolut von der Wurzel des Baums aus oder in einem (über das Netz erreichbaren) Dokument in einem anderen Namensraum konstruiert werden. Der Ausdruck kann Variablen und Funktionen enthalten, die im Kontext, in dem der Ausdruck aufgerufen wird, durch ihren Wert ersetzt bzw. berechnet werden.

Ein Konferenzband könnte z.B. folgendermaßen aufgebaut sein: Die Wurzel enthält drei "Top-Level-Elemente" front-matter, body und rear-matter. front-matter enthält ein Vorwort, den "call for papers" und Grußworte, body die Beiträge der Teilnehmenden als paper-Element, wobei die Beiträge eines Tages jeweils in einem day-Element zusammengefasst sind. rear-matter enthält ein Stichwortverzeichnis und eine Liste der Teilnehmenden. Die Autoren aller Beiträge stehen im Vorwort und in den Beiträgen jeweils in einem Element author.

Mit dem absoluten Pfad /front-matter/preface/author kann dann die Autorin oder der Autor des Vorworts bestimmt werden; der Pfad /body/*/paper/author spezifiziert dagegen die Autoren der Beiträge, ohne dass damit auch das author-Element im Vorwort erfasst wird. Der Ausdruck /body/day[2]/paper/author spezifiziert nur die Autoren des zweiten Veranstaltungstages, während //author alle author-Elemente im Dokument erfasst. (Der leere Eintrag zwischen "/" symbolisiert beliebig tiefe Unterelemente, während "*" genau ein beliebiges Element beschreibt.)

Wird der relative Pfad paper/author in einem day-Element aufgerufen, oder ../paper/author in einem der paper-Elemente, werden alle author-Elemente des gleichen Tages spezifiziert, die direkt in einem paper-Element auftreten. In /body spezifiziert day[1]//author alle author-Elemente, die im ersten day-Element oder beliebig tief geschachtelten Unterelementen vorkommen.

XPath wird von verschiedenen anderen XML-Methoden verwendet, z.B. von XSLT (XSL Transformations), einer Sprache, mit der Umformungen von XML-Dokumenten definiert werden können. XSLT kann benutzt werden, um Dokumente für das Layout in verschiedenen Medien umzuformen, z.B. für die Darstellung auf dem Bildschirm und den Druck auf Papier.

Auch die XML Query Language (XQL) baut auf XPath auf. Sie spezifiziert eine Anfragesprache, mit der nach Elementen in XML-Dokumenten gesucht werden kann. Die Spezifikation verlangt sowohl Such- und Vergleichsoperationen auf dem Inhalt von Elementen als auch auf den Namen von Elementen und Attributen sowie auf Attributwerten. Dabei müssen alle Datentypen aus der XML-Schema-Spezifikation und auch elementübergreifende Suchen unterstützt werden. Als Ergebnis einer XQL-Suche sollen einzelne Elemente, Teildokumente, vollständige Dokumente oder aber auch neu kombinierte Ergebnisdokumente zurückgeliefert werden.

Die Art der Such- und Vergleichsoperationen, die eine Anfragesprache implementieren muss, um der XML-Query-Language-Spezifikation zu genügen, ist in der Spezifikation nicht sonderlich genau festgelegt. Es werden vor allem elementare Operationen genannt; weiter empfiehlt die Spezifikation die Unterstützung von extern definierten Funktionen für alle Datentypen. Damit ist XQuery zunächst eher am Konzept des Fakten-Retrieval orientiert, und wesentliche Eigenschaften moderner IR-Verfahren wie die Gewichtung von Termen in Dokumenten und Anfragen oder das Ranking von Ergebnismengen werden zunächst nicht explizit erfasst. Überlegungen, solche Konzepte in erweiterte XML-Suchsysteme zu integrieren, finden sich z.B. im Vorschlag einer XML IR Query Language (XIRQL) von Fuhr und Weikum (2002) [->] .

Navigation Zurück ]    [ Inhalt ]    [ Stichwörter ]    [ Feedback ]    [ Home ]
Position im Angebot Information Retrieval -> Information Retrieval und das Web -> Explizit strukturierte Dokumente -> XML
Dieser Abschnitt und seine Unterabschnitte
Inhalt Stichwörter in der Reihenfolge ihres AuftretensStichwörter alphabetisch sortiert
4.1.3.3XPath, XQuery
XPath, XML Path Language, XSLT, XSL Transformations, XML Query Language, XQL, Fakten-Retrieval Fakten-Retrieval, XML Path Language, XML Query Language, XPath, XQL, XSL Transformations, XSLT

Diese Seiten sind urheberrechtlich geschützt. Die Verantwortung für die Inhalte und die Rechte der Online-Version liegen beim Autor Reginald Ferber, Münster (Westf). Die Rechte der gedruckten Version beim dpunkt.verlag, Heidelberg. Die Weiterverwendung von Texten oder Abbildungen - auch auszugsweise - ist ohne die schriftliche Zustimmung des Autors Reginald Ferber bzw. des dpunkt.verlags nicht gestattet.

Es wird darauf hingewiesen, dass die verwendeten Soft- und Hardware-Bezeichnungen sowie Markennamen und Produktbezeichnungen der jeweiligen Firmen im Allgemeinen warenzeichen-, marken-, oder patentrechtlichem Schutz unterliegen. Alle Angaben und Programme wurden mit großer Sorgfalt kontrolliert. Trotzdem kann keinerlei Haftung für Schäden irgendwelcher Art übernommen werden, die sich im Zusammenhang mit der Nutzung dieser Seiten ergeben.

Diese HTML-Datei wurde am 27-10-2003 erzeugt.