1 Teil 2 Querying XML Literatur: A. Deutsch et. al. "A Query Language for XML" (www.w3.org/TR/NOTE-xml-ql-19980819) A. Deutsch et. al. "A Query Language.

Slides:



Advertisements
Ähnliche Präsentationen
Information Retrieval in XML-Dokumenten
Advertisements

Anzahl der ausgefüllten und eingesandten Fragebögen: 211
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil3.
Einführung in die Informatik: Programmierung und Software-Entwicklung
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Transaction Synchronization for XML Data in Client Server Web Applications Stefan Böttcher & Adelhard Türling Universität Paderborn.
Vorteile der Online-Produkte
Telefonnummer.
CPCP Institute of Clinical Pharmacology AGAH Annual Meeting, 29. Februar 2004, Berlin, Praktischer Umgang mit den Genehmigungsanträgen gemäß 12. AMG Novelle.
Anmerkungen zu XML Im September 2000 Entwicklung/Anspruch von XML
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
1 Querying XML: Xquery H. Schweppe und T. Schlieder Literatur: A. Deutsch et. al. "A Query Language for XML" ( A. Deutsch.
Workshop zur Medienarbeit der katholischen Kirche Aspekte des Religionsmonitors Berlin, 02. April 2008.
HyREX: Eine Hypermedia- Retrievalengine für XML- Dokumente Norbert Fuhr Universität Dortmund
Design by Contract with JML - Teil 2
1 JIM-Studie 2010 Jugend, Information, (Multi-)Media Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
= = = = 47 = 47 = 48 = =
-17 Konjunkturerwartung Europa September 2013 Indikator > +20 Indikator 0 a +20 Indikator 0 a -20 Indikator < -20 Europäische Union gesamt: +6 Indikator.
Scratch Der Einstieg in das Programmieren. Scatch: Entwicklungsumgebung Prof. Dr. Haftendorn, Leuphana Universität Lüneburg,
IMS Universität Stuttgart 1 Einführung in XML Hannah Kermes HS: Elektronische Wörterbücher Do,
DOM (Document Object Model)
WS Algorithmentheorie 02 - Polynomprodukt und Fast Fourier Transformation Prof. Dr. Th. Ottmann.
Welcome DTD. Document Type Definition Graphic Services/Everything you already know about presentations Was ist eine DTD? DTD ist eine Schemasprache.
© 2006 W. Oberschelp, G. Vossen Rechneraufbau & Rechnerstrukturen, Folie 2.1.
Grundkurs Theoretische Informatik, Folie 2.1 © 2006 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 2 Gottfried Vossen Kurt-Ulrich Witt.
Internet facts 2008-II Graphiken zu dem Berichtsband AGOF e.V. September 2008.
PL/SQL - Programmierung von Programmeinheiten. © Prof. T. Kudraß, HTWK Leipzig Gespeicherte Prozeduren – Eine Prozedur ist ein benannter PL/SQL Block,
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil2.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
Betreuerin: Kathleen Jerchel
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 Model View Controller Pattern.
Schieferdeckarten Dach.ppt
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
WWW-Anfragesprachen Seminar Datenbanken Vortrag von Jörg Sorg.
1. 2 Schreibprojekt Zeitung 3 Überblick 1. Vorstellung ComputerLernWerkstatt 2. Schreibprojekt: Zeitung 2.1 Konzeption des Kurses 2.2 Projektverlauf.
1 XQuery Informationssysteme, Vortragender: Michael Schmidt.
Quilt: Eine XML Anfragesprache für heterogene Datenquellen
Bild 1.1 Copyright © Alfred Mertins | Signaltheorie, 2. Auflage Vieweg+Teubner PLUS Zusatzmaterialien Vieweg+Teubner Verlag | Wiesbaden.
20:00.
SK / , , in Hochkössen und der Wildschönau flow Ski- und Snowboardschule Intersport Menzel.
Eine Einführung in die CD-ROM
The free XML Editor for Windows COOKTOP Semistrukturierte Daten 1 Vortrag Semistrukturierte Daten 1 COOKTOP The free XML-Editor for Windows
Das 19. Jahrhundert: John Ruskin ( ) und die Kunsterziehungsbewegung in England.
XML-Query. Übersicht Was ist XML-Query? Vergleich RDB XML-Dokument Syntaktisches und Use-Cases Kritik und Diskussion.
NEU! 1 2. Wo kommt diese Art von Rezeptor im Körper vor?
Analyse von Ablaufdiagrammen
HORIZONT 1 XINFO ® Das IT - Informationssystem PL/1 Scanner HORIZONT Software für Rechenzentren Garmischer Str. 8 D München Tel ++49(0)89 / 540.
Template v5 October 12, Copyright © Infor. All Rights Reserved.
PROCAM Score Alter (Jahre)
Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms II
Symmetrische Blockchiffren DES – der Data Encryption Standard
Graph Pattern Semantik Michael Schmidt,
1 (C)2006, Hermann Knoll, HTW Chur, FHO Quadratische Reste Definitionen: Quadratischer Rest Quadratwurzel Anwendungen.
Analyseprodukte numerischer Modelle
Pigmentierte Läsionen der Haut
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
Vortrag von Rechtsanwältin Verena Nedden, Fachanwältin für Steuerrecht zur Veranstaltung Wege zum bedingungslosen Grundeinkommen der Piratenpartei Rhein-Hessen.
1 Mathematical Programming Nichtlineare Programmierung.
Technische Frage Technische Frage Bitte löse die folgende Gleichung:
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
SiLeBAT Sicherstellung der Futter- und Lebensmittelwarenkette bei bio- und agro-terroristischen (BAT)-Schadenslagen.
Bildergalerie PRESEASON CAMP Juni 2014 Romanshorn Get ready for the Season!
Es war einmal ein Haus
Kompetenztraining Jura Martin Zwickel / Eva Julia Lohse / Matthias Schmid ISBN: © 2014 Walter de Gruyter GmbH, Berlin/Boston Abbildungsübersicht.
1 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt Wie.
Das IT - Informationssystem
Qualitative Interviews Sabina Misoch ISBN: © 2015 Walter de Gruyter GmbH, Berlin/Mu ̈ nchen/Boston Abbildungsübersicht / List of Figures.
1 Medienpädagogischer Forschungsverbund Südwest KIM-Studie 2014 Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
Monatsbericht Ausgleichsenergiemarkt Gas – Oktober
 Präsentation transkript:

1 Teil 2 Querying XML Literatur: A. Deutsch et. al. "A Query Language for XML" ( A. Deutsch et. al. "A Query Language for XML" ( Jonathan Robie (ed.) "XQL (XML Query Language)" (metalab.unc.edu/xql/xql-proposal.xml) Jonathan Robie (ed.) "XQL (XML Query Language)" (metalab.unc.edu/xql/xql-proposal.xml) A. Bonifati, S. Ceri: "Comparative Analysis of Five XML Query Languages" (SIGMOD Record, März 2000) A. Bonifati, S. Ceri: "Comparative Analysis of Five XML Query Languages" (SIGMOD Record, März 2000)

2 Gliederung MotivationMotivation –Einsatzgebiete von XML-Anfragesprachen –Unterschied zu SQL/OQL Anfragesprachen für XMLAnfragesprachen für XML –Hauptbestandteile –Reguläre Pfadausdrücke –Sortieren –Quantifizierung, Negation –Subqueries –Kombinieren von Quellen (Joins) –Bewertung Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

3 Warum Query Languages für XML? Daten-Extraktion "Liefere alle Autoren aller Bücher"Daten-Extraktion "Liefere alle Autoren aller Bücher" Daten-Transformation "Erstelle ein neues Dokument mit den Autoren aller Bücher"Daten-Transformation "Erstelle ein neues Dokument mit den Autoren aller Bücher" Daten-Konversion " Restrukturiere ein XML-Dokument exportiert von einem RDBMS in ein Dokument zum Import in ein OODBMS"Daten-Konversion " Restrukturiere ein XML-Dokument exportiert von einem RDBMS in ein Dokument zum Import in ein OODBMS" Daten-Integration " Erstelle eine Sicht auf Daten, die zu unterschiedlichen DTDs gehören"Daten-Integration " Erstelle eine Sicht auf Daten, die zu unterschiedlichen DTDs gehören" Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

4 Warum nicht SQL/OQL verwenden? Relationale/objektorientierte Daten sind wohlstrukturiert:Relationale/objektorientierte Daten sind wohlstrukturiert: –Vorgegebenes Schema –Daten werden passend zu Schema importiert XML-Dokumente sind oft semistrukturiert:XML-Dokumente sind oft semistrukturiert: –Kein Schema vorhanden (Dokumente ohne DTD) –Wenig restriktive DTD SQL: Keine Unterstützung für BaumstrukturSQL: Keine Unterstützung für Baumstruktur Keine/unzureichende Möglichkeiten, Schema- Informationen anzufragenKeine/unzureichende Möglichkeiten, Schema- Informationen anzufragen Keine/unzureichende Konstruktions-OperatorenKeine/unzureichende Konstruktions-Operatoren Keine SQL/OQL-Konstrukte zur Integration von verschiedenen QuellenKeine SQL/OQL-Konstrukte zur Integration von verschiedenen Quellen Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

5 Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein DTD mit strukturellen Alternativen <!ATTLISTzutat nummerID#REQUIRED mische-mit IDREF#IMPLIED nötig(ja|nein) "ja"> Zutaten werden entweder durch einen Text beschrieben oder einzeln aufgelistet. Optionale Anleitung

6 Anfragesprachen für XML Vorgestellt und verglichen werden XML-QL A. Deutsch, M. Fernandez, D. Florescu, A. Levy, D. Suciu A. Deutsch, M. Fernandez, D. Florescu, A. Levy, D. Suciu XQL J. Robie (editor) metalab.unc.edu/xql/xql-proposal.xmlXQL J. Robie (editor) metalab.unc.edu/xql/xql-proposal.xml Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

7 Hauptbestandteile der Sprachen Pattern clausePattern clause –Matchen von (verschachtelten) Elementen –Binden von Variablen Filter clauseFilter clause –Vergleichen von Variablen mit Konstanten und Variablen Constructor clauseConstructor clause –Erzeugen von neuen XML-Dokumenten XML-QL unterstützt alle drei Konstrukte. XQL unterstützt Patterns und Filters, sowie implizit auch Constructors (renaming, grouping) Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

8PatternPattern FilterFilter Constructor Gebe Subtrees mit Wurzel zutat zurück XML-QL WHERE $z WHERE $z IN " IN " $m >= 100 $m >= 100CONSTRUCT $z $z XQL document(" /rezepte/rezept/zutaten/zutat > 100] Beispiel Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

9 name Pfadausdrücke Pfade spezifizieren Position von Objekten über mehrere Knoten hinweg.... rezept anleitungzutaten zutat Salz rezepte TorteXML-QL Torte Torte</></></>oder XQL /rezepte/rezept/name="Torte" Pfad Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

10 Reguläre Pfadausdrücke Zweck: Überspringen von Knoten (Elementen)Überspringen von Knoten (Elementen) Alternative Pfade zu einem ZielknotenAlternative Pfade zu einem ZielknotenOperatoren Überspringe einen Knoten XQL: a/*/bXML-QL: a.$.bÜberspringe einen Knoten XQL: a/*/bXML-QL: a.$.b Überspringe beliebig viele Knoten XQL: a//bXML-QL: a.$*.bÜberspringe beliebig viele Knoten XQL: a//bXML-QL: a.$*.b Alternative Knoten XQL: a | bXML-QL: a | bAlternative Knoten XQL: a | bXML-QL: a | b Optionaler Knoten (nicht vorh. in XQL, XML-QL)Optionaler Knoten (nicht vorh. in XQL, XML-QL) Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

11 Beispiel "Selektiere alle Rezepte, die 'Olive' entweder als Zutat verwenden, oder in der Anleitung erwähnen." XML-QL WHERE '*Olive*' ELEMENT_AS $r IN " CONSTRUCT $r XQL /rezepte/rezept/((zutaten/zutat) | anleitung) [text() contains 'Olive'] Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

12 Sortieren "Liste alle Zutaten geordnet nach Masse auf" XQL (noch) nicht möglich XML-QL WHERE $z IN " ORDERED-BY $m ORDERED-BY $mCONSTRUCT $z $z Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

13 Quantoren, Negation Existenzquantor in XML-QL und XQL vorhandenExistenzquantor in XML-QL und XQL vorhanden Allquantor und Negation nur in XQL " Liefere Rezepte, bei denen jede Zutat mindestens 10 Gramm hat." /rezepte/rezept[zutaten[$all$ >= 10]]Allquantor und Negation nur in XQL " Liefere Rezepte, bei denen jede Zutat mindestens 10 Gramm hat." /rezepte/rezept[zutaten[$all$ >= 10]] "Liefere Rezepte, bei denen die Zutat 'Butter' nicht vorkommt." /rezepte/rezept[$not$ zutaten[zutat = 'Butter']] Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

14 Subqueries "Liste alle Zutaten auf, und für jede Zutat die Namen aller Rezepte, in denen sie verwendet wird." CONSTRUCT { WHERE $z IN " CONSTRUCT $z { WHERE $n $z IN " CONSTRUCT $n } } CONSTRUCT { WHERE $z IN " CONSTRUCT $z { WHERE $n $z IN " CONSTRUCT $n } } Join über Variable $z Schachtelung von Queries Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

15 Subqueries mit Skolem-Funktionen "Liste alle verschiedenen Zutaten auf, und für jede Zutat die Namen aller Rezepte, in denen sie verwendet wird." CONSTRUCT { WHERE $n $z IN " CONSTRUCT $z $n } CONSTRUCT { WHERE $n $z IN " CONSTRUCT $z $n } Skolem-Funktion: Erzeugt für jedes unterschiedliche Argument-Tupel einen neuen Wert Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

16 Kombinieren von Quellen Join-Operationen erst in neuer Version von XQL möglich. Annahme im folgenden: Es gibt ein XML-Dokument über Bücher mit Rezepten:Join-Operationen erst in neuer Version von XQL möglich. Annahme im folgenden: Es gibt ein XML-Dokument über Bücher mit Rezepten: Das Kochbuch Das Kochbuch... Quarkstrudel Quarkstrudel Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

17 "Liste alle Rezeptnamen auf, die in einem Kochbuch im Index vorkommen." XML-QL CONSTRUCT { WHERE $r IN " $r IN " CONSTRUCT $r } CONSTRUCT { WHERE $r IN " $r IN " CONSTRUCT $r } Kombinieren von Quellen (XML-QL) Join über Variable $r Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

18 "Liste alle Rezeptnamen auf, die in einem Kochbuch im Index vorkommen." XQL document(" /rezepte/rezept/name[$r :=.] [ document(" /bücher/buch/index[rezept = $r] ] Kombinieren von Quellen (XQL) Join über Variable $r Variable Binding Filter Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

19 Bewertung von XML-QL und XQL XML-QL Sehr mächtig ("relational vollständig")Sehr mächtig ("relational vollständig") Konstruktion neuer DokumenteKonstruktion neuer Dokumente Relativ komplizierte SyntaxRelativ komplizierte Syntax Queries nicht in XML-FormatQueries nicht in XML-FormatXQL Entwickelt als einfache SelektionspracheEntwickelt als einfache Selektionsprache Stark erweiterte Funktionalität in zweiter VersionStark erweiterte Funktionalität in zweiter Version –Syntax der Erweiterungen schwer verständlich In URLs einbettbarIn URLs einbettbar Keine KonstruktorenKeine Konstruktoren –In 2. Version lediglich Umbenennung von Elementen sowie Auswahl der ins Ergebnis übernommenen Elemente. Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

20 Teil 3 XML und Information Retrieval

21 Gliederung Einbeziehung der Dokument-StrukturEinbeziehung der Dokument-Struktur XML-Anfragesprachen und IRXML-Anfragesprachen und IR –Probleme –Lösungsansatz mit Regular Path Expressions –Lösungsansatz mit User Interface Der ApproXQL-AnsatzDer ApproXQL-Ansatz –Datenmodell –Anfragesprache –Ähnliche Strukturen –Vages Enthaltensein Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

22 Grundprinzip des IR Grundprinzip des IR:Grundprinzip des IR: –Es gibt ein Informationsbedürfnis –Gesucht sind Dokumente, die Informationsbedürfnis befiedigen MerkmaleMerkmale –vage Dokumentrepräsentation (Vergabe von Deskriptoren) –vage Queryformulierung (Abbildung Informationsbedürfnis auf Keywords) –vage Abbildung von Query auf Dokument- Repräsentation Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

23 Was ändert sich durch Struktur? StrukturStruktur –in den Dokumenten –in den Anfragen kann helfen, die Präzision der Anfragen zu erhöhen. Interpretation der StrukturInterpretation der Struktur –vage in Dokumenten, Query und Abbildung –streng in Dokumenten, Query und Abbildung –streng in Dokumenten, vage in Query und Abbildung -> unrealistisch, da Struktur in Dokumenten vorgegeben -> XML-Anfragesprachen, IR-Systeme für strukt. Dok. -> Relevanz-Ranking schwierig (?) Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

24 Vage Struktur-Interpretation Probleme mit dem Begriff "Relevance Ranking"Probleme mit dem Begriff "Relevance Ranking" –Dokument-Struktur vorgegeben (nicht vage) –Dokument-Struktur muß (teilweise) bekannt sein, um Anfrage zu formulieren KompromißKompromiß –Relevanzbewertung für den 'Inhaltsteil' von Anfragen und Dokumenten –Ähnlichkeitsmaß für Struktur Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

25 XML-Anfragesprachen und IR Mächtigkeit von XML-Anfragesprachen höher als für IR nötigMächtigkeit von XML-Anfragesprachen höher als für IR nötig –Formulieren von Anfrage schwierig und aufwendig –Kann durch Nutzer-Interfaces kompensiert werden Nutzer muß Dokumenten-Struktur kennenNutzer muß Dokumenten-Struktur kennen Restriktive Interpretation von Struktur und DatenRestriktive Interpretation von Struktur und Daten Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

26 Regular Path Expressions Regular Path Expressions wurden eingeführt umRegular Path Expressions wurden eingeführt um mit struktureller Heterogenität umzugehenmit struktureller Heterogenität umzugehen Anfragen mit partieller Kenntnis der Struktur zu erlaubenAnfragen mit partieller Kenntnis der Struktur zu erlauben Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

27 Regular Path Expressions "Ich möchte alle Bücher, die von Smith geschrieben worden sind." Smith Smith Smith Smith Smith Smith Smith Smith Query 1 /book/author="Smith" /book/author="Smith" Query 2 /book/(author | editor) [. ="Smith"] /book/(author | editor) [. ="Smith"] Query 3 /book//(author | editor) [. ="Smith"] /book//(author | editor) [. ="Smith"] Query 4 /book//[.="Smith"] /book//[.="Smith"] Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

28 Probleme: Regular Path Expressions erfordernRegular Path Expressions erfordern –umfangreiche Kenntnis von Struktur und Inhalt der Dokumente –Vertrautheit mit der Sprache (->Gelegenheitsnutzer) Alle Ergebnisse einer Query (mit Regular Path Expressions) werden gleich bewertet (mit 'true')Alle Ergebnisse einer Query (mit Regular Path Expressions) werden gleich bewertet (mit 'true') Regular Path Expressions Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

29 User Interfaces machen den Nutzer mit der Dokumentenstruktur bekanntUser Interfaces machen den Nutzer mit der Dokumentenstruktur bekannt Probleme:Probleme: –Anzeige der gesamten Struktur führt zu "Information Overload" Verringerung der Nutzerakzeptanz –Top-Down-Navigation führt evtl. zu Verlust von relevanten Ergebnissen. XML-Anfragesprachen und User Interfaces book author author name name editor editor chapter chapter+ + Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

30 Lösungsansatz Vereinfachtes DatenmodellVereinfachtes Datenmodell Einfache strukturierte AnfragenEinfache strukturierte Anfragen Unterstützung durch User InterfaceUnterstützung durch User Interface Klassische IR-Methoden für Dokument-InhaltKlassische IR-Methoden für Dokument-Inhalt Ähnlichkeitsbewertung der StrukturÄhnlichkeitsbewertung der Struktur Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

31 Datenmodell John Bradley John Bradley Smith Smith XML XML book chapter section title XML author name John Bradley author Smit h { year = "1999" } PCDATA

32 Normalisierung book chapter section title XML author name John Bradley author Smit h { year = "1999" } PCDATA Entferne Links Entferne Links Normalisiere Attribute Normalisiere Attribute Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

33 Normalisierung book chapter section title XML author name John Bradley author Smit h PCDATA year 1999 Normalisiere PCDATA Normalisiere PCDATA Entferne Links Entferne Links Normalisiere Attribute Normalisiere Attribute Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

34 Normalisierung book chapter section title author nameauthor year 1999 XML Smit h BradleyJohn Füge neue Wurzel hinzu Füge neue Wurzel hinzu Normalisiere PCDATA Normalisiere PCDATA Entferne Links Entferne Links Normalisiere Attribute Normalisiere Attribute Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

35 Normalisierung book chapter section title author nameauthor year 1999 XML Smit h BradleyJohn book root Füge neue Wurzel hinzu Füge neue Wurzel hinzu Normalisiere PCDATA Normalisiere PCDATA Entferne Links Entferne Links Normalisiere Attribute Normalisiere Attribute Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

36 "Database" Anfragesprache (graph. Interpretation) Eine Query ist ein gelabelter BaumEine Query ist ein gelabelter Baum Kinder eines Knotens werden durch log. Ausdruck verbundenKinder eines Knotens werden durch log. Ausdruck verbunden book authorchapter "Smith " title "XML" logischer Ausdruck z.B. - Boolesche Logik - Gewichtete Summe Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

37 Was sind ähnliche Strukturen? article author book editor ähnlich?bookauthorbookchapter ähnlich? author QueryDokumentbookchapterbookähnlich? author author Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

38 Was sind ähnliche Strukturen? book author book author ähnlich?authorbookbookauthor ähnlich? QueryDokument title AND book author book ähnlich? x y authorLink Verwandschaft zur Bio-Informatik (Tree Edit Distance, Tree Alignment) Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

39 Sinnvolle Ähnlichkeitsoperatoren article author book editor QueryDokument 1. Umbenennen von Knotennamen (Element-, Attributnamen) mit Hilfe von Kostenfunktion Ähnlichkeit der Namen von Administrator festgelegt (DTD-Analyse) von Administrator festgelegt (DTD-Analyse) gelernt (z.B. via Data-Mining) gelernt (z.B. via Data-Mining) Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

40 Sinnvolle Ähnlichkeitsoperatoren book author book chapter QueryDokument 2. Überspringen von Datenknoten mit Hilfe von Kostenfunktion Kosten der Knoten von Administrator festgelegt (DTD-Analyse) von Administrator festgelegt (DTD-Analyse) gelernt (z.B. via Data-Mining) gelernt (z.B. via Data-Mining) author Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

41 Sinnvolle Ähnlichkeitsoperatoren book author book QueryDokument 3. Löschen von Query-Knoten in semantisch sinnvoller weise. vages Enthaltensein vages Enthaltensein authorchapter Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

42 "Smith" author book chaptertitle "XML" "Database"DokumentEnthaltensein "Database" book authorchapter "Smith " title "XML" Query logischer Ausdruck 1 logischer Ausdruck 2 logischer Ausdruck 1 Annahme 1: Vater-Kind-Knoten modellieren Enthaltensein Vater-Kind-Knoten modellieren Enthaltensein Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

43 Vages Enthaltensein author "Smith" book chapter title "XML" "Database" Dokument Annahme 2: Nutzer bevorzugt bestimmten Kontext Nutzer bevorzugt bestimmten Kontext Score :=f(book["Smith","XML",Database"]) f(book/author["Smith"]) f(book/author["Smith"]) f(book/chapter["XML",Database"]) f(book/chapter["XML",Database"]) f(book/chapter/titel["XML"]) f(book/chapter/titel["XML"]) gleicheschapter gleichesbookConstraints: logischer Ausdruck 2 logischer Ausdruck 1 Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

44 Zusammenfassung Teil 3 Dokumentstruktur erlaubt präzisere AnfragenDokumentstruktur erlaubt präzisere Anfragen Nutzer muß Struktur partiell kennenNutzer muß Struktur partiell kennen Dokumentstruktur sollte vage interpretiert werden (best matches first)Dokumentstruktur sollte vage interpretiert werden (best matches first) Nicht alle strukturellen Ähnlichkeitsmaße sinnvollNicht alle strukturellen Ähnlichkeitsmaße sinnvoll –Semantik –Berechnungskomplexität Querying XML Motivation Einsatzgebiete SQL/OQL Anfragesprachen Hauptbestandteile Pfadausdrücke Sortieren Quantoren Subqueries QuellenKomb. Bewertung XML und IR Struktur IR und QL für XML Path Expressions User Interfaces ApproXQL-Ansatz Datenmodell Anfragesprache Ähnlichkeit Enthaltensein

45book author author name name editor editor chapter chapter+ + Diplomarbeit: User Interface Probleme existierender UI:Probleme existierender UI: –Anzeige der gesamten Struktur führt zu "Information Overload" Verringerung der Nutzerakzeptanz –Top-Down-Navigation führt evtl. zu Verlust von Ergebnissen. Ziel der ArbeitZiel der Arbeit –Vergleich existierender UI –(Weiter-) Entwicklung eines geeigneten UI für nutzerorientierte Suche –Implementierung als Java-Applet

46 Diplomarbeit: User Interface (2) article book chapter section(more) book authorchaptersectiontitle(more) author Smith title XML chapter sectiontitle(more) AND Beispiel:

47 Diplomarbeit: Realisierung des vagen Enthaltenseins ProblemProblem –Test auf vages Enthaltensein einer Query erfordert: Auffinden der Elemente mit übereinstimmendem NamenAuffinden der Elemente mit übereinstimmendem Namen Test auf Vorgänger-Nachfolger BeziehungTest auf Vorgänger-Nachfolger Beziehung Erfülltsein der logischen Ausdrücke der Knoten-KinderErfülltsein der logischen Ausdrücke der Knoten-Kinder –Bekannte Realisierungen unterstützen nur exaktes Enthaltensein Ziel der ArbeitZiel der Arbeit –Vergleich von Implementierungstechniken für strukturiertes Retrieval –Anpassung/Entwicklung eines Verfahrens für das vage Enthaltensein –Implementierung auf der Basis der Berkeley Database –Performance-Tests