Information Retrieval in XML-Dokumenten Norbert Fuhr Universität Dortmund fuhr@cs.uni-dortmund.de
Inhalt Einführung IR-Konzepte für XML XIRQL HyREX-Retrievalengine Zusammenfassung und Ausblick
I. Einführung Daten- vs. Dokument-orientierte Sicht auf XML XQuery Information Retrieval IR = Unsicherheit und Vagheit
Daten-orientierte Sicht auf XML <?xml version="1.0"?> <rdf:RDF xmlns:rdf = "http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:vCard = "http://www.w3.org/2001/vcard-rdf/3.0#"> <rdf:Description rdf:about = "http://ls6-www.cs.uni-dortmund/~fuhr" > <vCard:FN> Norbert Fuhr </vCard:FN> <vCard:N rdf:parseType="Resource"> <vCard:Family> Fuhr </vCard:Family> <vCard:Given> Norbert </vCard:Given> </vCard:N> <vCard:TITLE> University Professor </vCard:TITLE> <vCard:TEL rdf:parseType="Resource"> <rdf:value> +49 231 755 2045 </rdf:value> </vCard:TEL> <vCard:EMAIL rdf:parseType="Resource"> <rdf:value> fuhr@cs.uni-dortmund.de </rdf:value> </vCard:EMAIL> </rdf:Description> </rdf:RDF>
Dokument-orientierte Sicht auf XML <book class="H.3.3"> <author>John Smith</author> <title>XML Retrieval</title> <chapter> <heading>Introduction</heading> This text explains all about XML and IR. </chapter> <chapter> <heading> XML Query Language XQL </heading> <section> <heading>Examples</heading> </section> <heading>Syntax</heading> Now we describe the XQL syntax. </book>
Daten- vs. Dokument-orientierte Sicht Daten-orientierte Sicht XML als Austauschformat für strukturierte Daten Dokumenten-orientierte Sicht XML als Format zur Repräsentation der logischen Struktur von Dokumenten
XQuery FOR/LET PathExpression WHERE AdditionalSelectionCriteria RETURN ResultConstruction
XQuery Pfadbedingung: Eltern-/Kindknoten chapter/heading document class="H.3.3" chapter chapter author title heading section section John Smith heading This. . . XML Query heading heading We describe Language XQL XML Retrieval Introduction syntax of XQL Examples Syntax Pfadbedingung: Eltern-/Kindknoten chapter/heading
XQuery Pfadbedingung: Vorfahr-Nachfahr chapter//heading document class="H.3.3" chapter chapter author title heading section section John Smith heading This. . . XML Query heading heading We describe Language XQL XML Retrieval Introduction syntax of XQL Examples Syntax Pfadbedingung: Vorfahr-Nachfahr chapter//heading
XQuery Filter bzgl. Struktur: //chapter[heading] document class="H.3.3" chapter chapter author title heading section section John Smith heading This. . . XML Query heading heading We describe Language XQL XML Retrieval Introduction syntax of XQL Examples Syntax Filter bzgl. Struktur: //chapter[heading]
XQuery Filter bzgl. Inhalt: document class="H.3.3" chapter chapter author title John Smith heading section section heading This. . . XML Query heading heading We describe Language XQL XML Retrieval Introduction syntax of XQL Examples Syntax Filter bzgl. Inhalt: /document[@class="H.3.3" Ù author="John Smith"]
Information Retrieval Beispiel: Internet-Suchmaschinen
IR = Unsicherheit und Vagheit Unsichere Repräsentation des Inhalts von Dokumenten Vage Beschreibungen des eigentlichen Informationswunsches Gewichtung von Dokumenten bzgl . Anfragebedingungen Rangordnung von Dokumenten als Antwort
IR-Konzepte in XQuery Nur boolesches Retrieval keine Gewichtung keine Rangordnungen Bislang nur Funktionen zur Suche nach einzelnen Wörtern
II. IR-Konzepte für XML Gewichtung und Ranking Relevanz-orientierte Suche Datentypen mit vagen Prädikaten Struktureller Relativismus
Gewichtung und Ranking Problem: Gewichtung unterschiedlicher Vorkommensformen von Termen /document[.//heading ' "XML" Ú .//section//* ' "XML"] document chapter chapter heading section section heading This. . . XML Query heading heading We describe Language XQL syntax of XQL Introduction Examples Syntax
Indexknoten als Einheiten zur Termgewichtung 1 2 3 4 5 document class="H.3.3" author John Smith title XML Retrieval Introduction chapter heading This. . . Syntax Examples section XML Query Lang. XQL We describe syntax of XQL Anwendung bekannter Indexierungsfunktionen (z.B. tf*idf)
Indexknoten als Einheiten zur Termgewichtung /document[.//heading ' "XML" Ú .//section//* ' "XML"] document class="H.3.3" author title chapter heading This. . . 0.4 XML section 0.6 XML 0.6 XML Ú 0.4 XML 0.4+0.6-0.4*0.6 = 0.86 0.6 XML Ú 0.4 XML
Relevanz-orientierte Suche für Anfragen unabhängig von der Dokumentstruktur (z.B.: “Suche Dokument(teil)e über XML-Anfragesprachen”) Einschränkung der möglichen Antworten (nicht alle Elemente sind geeignet) Retrievalstrategie: liefere spezifischsten Teilbaum, der die Anfrage beantwortet aber: Verrechnung mit gewichteter Indexierung? Lösung: Indexknoten als Wurzeln von möglichen Antworten Augmentierung als Konzept zur Verrechnung des Tradeoff zwischen Indexierungsgewichten und Spezifität von Antworten
Indexknoten für Relevanz-orientierte Suche document class="H.3.3" chapter chapter author title heading section section John Smith heading This. . . XML Query heading heading We describe Lang. XQL syntax of XQL XML Retrieval Introduction 1 2 3 Examples Syntax 4 5
Augmentierung Beispielanfrage: syntax & example 0.126 chapter 0.64 0.3 XQL 0.126 0.30 example 0.42 syntax 0.6 section1 section2 0.5 example 0.8 XQL 0.7 syntax Beispielanfrage: syntax & example
Augmentierung Beispielanfrage: XQL 0.64 0.8 chapter 0.64 0.3 XQL 0.30 example 0.42 syntax 0.6 section1 section2 0.5 example 0.8 XQL 0.7 syntax Beispielanfrage: XQL
Datentypen mit vagen Prädikaten XML-Markup ermöglicht detaillierte Auszeichnung von Textelementen Ausnutzung des Markups für präzisere Suchen gleichzeitig Berücksichtigung von Unsicherheit und Vagheit beim Retrieval Datentypen mit vagen Prädikaten ``Suche Informationen über das Werk eines Künstlers namens Ulbrich, der um 1900 im Rhein-Main-Gebiet tätig war'' Ernst Olbrich, Darmstadt, 1899 (Erweiterbare) Datentypen für Dokumenten-zentrierte Sicht (Personennamen, Datumsangaben, geogr. Bezeichnungen, Klassifikationen / Bilder, Audio, Video,...)
Erweiterbare Typhierarchie Erweiterbare Typhierarchie mit vagen Prädikaten für jeden Datentyp text: substring-Match westliche Sprache: Wortsuche, Trunkierung, Wortabstandssuche deutscher Text: Grund- und Stammformsuche, Komponenten von Komposita Datentypen der XML-Elemente werden in XML- Schema definiert
Struktureller Relativismus Unterscheidung Element/Attribut fallenlassen: ~author="Smith" Suche in allen Elementen eines bestimmten Datentyps: #date=2001
III. XIRQL XML IR Query Language Erweiterung der Path Expressions von XQuery: probabilistisches Retrieval mit gewichteter Dokumentindexierung Relevanz-orientierte Suche Datentypen mit vagen Prädikaten Struktureller Relativismus
XIRQL-Path-Expressions Vage Prädikate text $c-word$ “compute” author $soundslike$ “meier” Gewichtete Fragebedingungen 0.7 . $c-word$ “retrieval” + 0.3 . $c-word$ “XML” Relevanz-orientierte Anfragen inode()[… $c-phrase$ “XML retrieval”] Struktureller Relativismus: //#person $soundslike$ “meier”
XIRQL vs. XQuery XIRQL prozessiert Teilmenge von XQuery- Anfragen: FOR $X=PathExpression RETURN $X Keine Restrukturierung von Antworten Keine Werte-basierten Joins zwischen verschiedenen Dokumenten Erweiterte Path Expressions für IR
IV. HyREX Hypermedia Retrieval Engine for XML Open-Source-Software für Information Retrieval in XML-Dokumenten Gefördert vom BMBF im Rahmen des GlobalInfo-Projektes CARMEN
HyREX-Architektur HyGate: Web- Gateway XIRQL: Anfragesprache auf der logischen Ebene HyPath: Zugriffspfade (physische Ebene)
HyREX-Datentypen
Query by Example: Werte-orientiert
Query by Example: Struktur-orientiert
Ergebnis-Visualisierung: Textbars
Ergebnis-Visualisierung: Treemaps
V. Zusammenfassung und Ausblick Dokument-orientierte XML-Anwendungen erfordern Information-Retrieval-Funktionen IR muss Unsicherheit und Vagheit berücksichtigen W3C-Vorschlag XQuery nicht ausreichend für IR
Zusammenfassung IR-Konzepte für XML: Gewichtung und Ranking Datentypen und vage Prädikate Relevanz-orientierte Suche Struktureller Relativismus XIRQL als IR-Erweiterung einer XQuery-Teilmenge HyREX: Open-Source-Retrievalengine für XML: ls6-www.cs.uni-dortmund.de/hyrex (BMBF-Projekt CARMEN)
Ausblick Entwicklung von Verfahren für effizientes Best-Match-Retrieval für XIRQL Kombination von XIRQL und XQuery: probabilistische Variante von XQuery (DFG-Projekt CLASSIX, zusammen mit Gerhard Weikum, Univ. Saarbrücken, ab 1.2.02)