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 -> Suche nach und in XML-Dokumenten
Stichwörter dieser Seite invertierte Liste, invertierte Liste
Navigation Zurück ]    [ Inhalt ]    [ Stichwörter ]    [ Feedback ]    [ Home ]

4.1.4.3: Modelle für die Suche in XML-Dokumenten

Formal kann man auch die Suche in strukturierten Dokumenten mit den Definitionen des booleschen Retrieval über Attribute (Definition 1 in Abschnitt 1.3.1.1 ; Abschnitt 1.3.1.2 ) und des Vektorraummodells mit Attributen (Definition 4 in Abschnitt 1.3.6.1 ) definieren.

Dazu kann man entweder die Attribute so definieren, dass sie die gewünschten Struktureigenschaften beschreiben, also z.B. die Angaben über die Autorenschaft eines Artikels aus der XML-Struktur extrahieren. Solche Angaben können dann wie in einer Feldindexierung oder einer IR/DB-Indexierung verwendet werden. Bei diesem Ansatz wird die Analyse zum Zeitpunkt der Indexierung vorgenommen. Dadurch kann die Suche vergleichsweise schnell sein; es können aber nur die Attribute zur Suche verwendet werden, die bereits bei der Indexierung ermittelt wurden.

Eine andere Möglichkeit besteht darin, die einzelnen XML-Elemente, die keine weiteren Unterelemente haben (also die Blattelemente des XML-Baums), zu indexieren, indem im Positionsteil der invertierten Liste zu jedem Term statt der Dokumentnummer (wie bei der einfachen Indexierung aus Abschnitt 1.3.1.3 ) jeweils der komplette Pfad zu einem Element angegeben wird. Wenn ein Element mehrere gleiche Unterelemente hat - wie die paper-Elemente in den day-Elementen im Beispiel aus dem Abschnitt über XPath (4.1.3.3 ) - , muss dabei die konkrete Instanz angegeben werden, in der XPath-Darstellung also beispielsweise paper[3]. (Eine andere Kodierung der Baumstruktur wird in Abschnitt 4.1.4.4 beschrieben.)

Um mit einem solchen Index z.B. einen Artikel mit den gemeinsamen Autorinnen Müller und Mayer zu suchen, muss in den invertierten Listen zu den Termen "Müller" und "Mayer" nachgesehen werden, ob ein Eintrag existiert, der bis zum Element /body/day/paper den gleichen Pfand besitzt, und zwar auch in Bezug auf die Nummer der konkreten Pfade aus dem Index, also beispielsweise /body/day[1]/paper[7]/author/. Dabei muss auch spezifiziert werden können, dass das Element author selbst für beide Pfade verschieden sein muss. Sonst könnte - falls die zweite Autorin nicht Mayer, sondern Peter heißt - auch ein Autor Peter Müller gefunden werden, statt die Autorinnen Müller und Peter.

Es muss auch möglich sein, in einem gesuchten Element weitere Unterelemente zu spezifizieren, z.B. /body/day/paper/author/lastname, falls im Element author die Namen mit Unterelementen wie firstname und lastname weiter untergliedert sind. Dabei muss auch festgelegt werden können, dass die konkreten Pfade bis paper gleich und ab author verschieden sein sollen. (Da es sich um eine Baumstruktur handelt, ist ab der ersten Unterscheidung der absolute Pfad verschieden. Zwei lastname-Tags beschreiben verschiedene konkrete Elemente, wenn sich ihr Pfad bereits in author unterscheidet.)

Schließlich muss auch spezifiziert werden können, dass zwei verschiedene Elemente Unterelemente eines Elements sein müssen. Das lässt sich in einer XML-ähnlichen Schreibweise so ausdrücken:


<root><body><day><author>
   <firstname>Anne</firstname>
   <lastname>Peter</lastname>
   </author></day></body></root>
Neben invertierten Listen, in denen zu jeweils einem Term die vollen Pfadnamen der Elemente gespeichert werden, können auch Listen für bestimmte Elemente angelegt werden, die nur die Terme oder Einträge der entsprechenden Elemente enthalten. Wenn nach einem Term in einem dieser Elemente gesucht wird, braucht nur in der Liste, die diesem Element und dem Term zugeordnet ist, gesucht zu werden. Welche Vorgehensweise günstiger ist, hängt von der XML-Struktur der zu indexierenden Dokumente ab.

Diese noch vergleichsweise einfachen Beispiele zeigen, dass die Spezifikation einer Anfrage sehr komplex werden kann. Die Auflösung der komplexen Anfragen muss zur Anfragezeit geschehen und erfordert einen vergleichsweise hohen Rechenaufwand bzw. einen Zugriff auf zahlreiche Indices oder Tabellen. Das bedeutet, dass solche Systeme vergleichsweise langsam arbeiten.

Neben der Anwendung zur Indexierung kann die XML-Struktur von Dokumenten auch genutzt werden, um nach Teildokumenten zu suchen. Bei "klassischen" Textdokumenten können die Suchergebnisse dadurch auf die relevanten Teile eingeschränkt werden. Bei Datensätzen können einzelne Teile extrahiert werden. Inwieweit solche Teildokumente aber ohne ihren Kontext nützlich sind, hängt von den Dokumenten und der Anwendung ab, für die sie gesucht werden.

Navigation Zurück ]    [ Inhalt ]    [ Stichwörter ]    [ Feedback ]    [ Home ]
Position im Angebot Information Retrieval -> Information Retrieval und das Web -> Explizit strukturierte Dokumente -> Suche nach und in XML-Dokumenten
Dieser Abschnitt und seine Unterabschnitte
Inhalt Stichwörter in der Reihenfolge ihres AuftretensStichwörter alphabetisch sortiert
4.1.4.3Modelle für die Suche in XML-Dokumenten
invertierte Liste, invertierte Liste invertierte Liste, invertierte Liste

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.