Querying XML: Xquery H. Schweppe und T. Schlieder - PowerPoint PPT Presentation

About This Presentation
Title:

Querying XML: Xquery H. Schweppe und T. Schlieder

Description:

Querying XML: Xquery H. Schweppe und T. Schlieder Literatur: A. Deutsch et. al. – PowerPoint PPT presentation

Number of Views:120
Avg rating:3.0/5.0
Slides: 55
Provided by: Torst2
Category:

less

Transcript and Presenter's Notes

Title: Querying XML: Xquery H. Schweppe und T. Schlieder


1
Querying XML XqueryH. Schweppe und T. Schlieder
  • Literatur
  • A. Deutsch et. al. "A Query Language for
    XML" (www.w3.org/TR/NOTE-xml-ql-19980819)
  • 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)
  • Fankhauser, P., Wadler, P. XQuery Tutorial

2
Gliederung
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
  • Motivation
  • Warum eigentlich XML-Anfragen??
  • Einsatzgebiete von XML-Anfragesprachen
  • Unterschied zu SQL/OQL
  • Anfragesprachen für XML
  • Hauptbestandteile
  • Reguläre Pfadausdrücke
  • Sortieren
  • Quantifizierung, Negation
  • Subqueries
  • Kombinieren von Quellen (Joins)
  • Bewertung

3
Warum Query Languages für 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
  • Daten-Extraktion"Liefere alle 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-Integration"Erstelle eine Sicht auf Daten,
    die zu unterschiedlichen DTDs gehören"

4
Warum nicht SQL/OQL verwenden?
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
  • Relationale/objektorientierte Daten sind
    wohlstrukturiert
  • Vorgegebenes Schema
  • Daten werden passend zu Schema importiert
  • XML-Dokumente sind oft semistrukturiert
  • Kein Schema vorhanden (Dokumente ohne DTD)
  • Wenig restriktive DTD
  • SQL Keine Unterstützung für Baumstruktur
  • Keine/unzureichende Möglichkeiten,
    Schema-Informationen anzufragen
  • Keine/unzureichende Konstruktions-Operatoren
  • Keine SQL/OQL-Konstrukte zur Integration von
    verschiedenen Quellen

5
Beispiel
  • "Erstelle eine Liste aller Abbildungen eines
    Buches"
  • ltfiglistgt
  • for f in document("book1.xml")//figure
  • return ltfiguregt
  • f/_at_
  • f/title
  • lt/figuregt
  • lt/figlistgt
  • Selektion und Transformation!

6
  • Ergebnis ein XML-Dokument, das so aussehen
    könnte
  • ltfiglistgt
  • ltfigure height"400" width"400"gt
    lttitlegtTraditional client/server
    architecture lt/titlegt
  • lt/figuregt
  • ltfigure height"200" width"500"gt
    lttitlegtGraph representations of
    structures lt/titlegt
  • lt/figuregt
  • ltfigure height"250" width "400"gt
    lttitlegtExamples of Relations
  • lt/titlegt
  • lt/figuregt
  • lt/figlistgt

7
Anfragesprachen für 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
  • Vorgestellt und verglichen werden
  • XML-QLA. Deutsch, M. Fernandez, D. Florescu, A.
    Levy, D. Suciuwww.w3.org/TR/NOTE-xml-ql-19980819
  • XQLJ. Robie (editor)metalab.unc.edu/xql/xql-prop
    osal.xml
  • XQuery
  • W3C XML Query page
  • http//www.w3.org/XML/Query.html
  • http//www.research.avayalabs.com/wadler/xml/

8
Hauptbestandteile der Sprachen
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
  • Pattern clause
  • Matchen von (verschachtelten) Elementen
  • Binden von Variablen
  • Filter clause
  • Vergleichen von Variablen mit Konstanten und
    Variablen
  • Constructor clause
  • Erzeugen von neuen XML-Dokumenten
  • Xquery, XML-QL unterstützen alle drei
    Konstrukte.
  • XQL unterstützt Patterns und Filters, sowie
    implizit auch Constructors (renaming, grouping)

9
XQuery die Sprache des Web
  • Beispieldaten
  • ltbibgt
  • ltbook year"1999" isbn"1-55860-622-X"gt
    lttitlegtData on the Weblt/titlegt
    ltauthorgtAbiteboullt/authorgt
    ltauthorgtBunemanlt/authorgt ltauthorgtSuciult/autho
    rgt
  • lt/bookgt
  • ltbook year"2001" isbn"1-XXXXX-YYY-Z"gt
    lttitlegtXML Querylt/titlegt ltauthorgtFernandezlt/au
    thorgt ltauthorgtSuciult/authorgt
  • lt/bookgt
  • lt/bibgt

10
Datenmodell / Syntax
  • XML Schema
  • ltxsdgroup name"Bib"gt
  • ltxsdelement name"bib"gt
  • ltxsdcomplexTypegt
  • ltxsdgroup ref"Book" minOccurs"0"
    maxOccurs"unbounded"/gt
  • lt/xsdcomplexTypegt
  • lt/xsdelementgt
  • lt/xsdgroupgt
  • ltxsdgroup name"Book"gt
  • ltxsdelement name"book"gt
  • ltxsdcomplexTypegt
  • ltxsdattribute name"year"
    type"xsdinteger"/gt ltxsdattribute
    name"isbn" type"xsdstring"/gt
    ltxsdelement name"title" type"xsdstring"/gt
    ltxsdelement name"author" type"xsdstring"
    maxOccurs"unbounded"/gt
  • lt/xsdcomplexTypegt
  • lt/xsdelementgt
  • lt/xsdgroupgt

11
XQuery Algebra Repräsentation
  • type Bib
  • bib Book0,
  • type Book book
  • _at_year Integer
  • _at_isbn String ,
  • title String ,
  • author String 1,
  • let bib0 Bib bib
  • book _at_year 1999 ,
  • _at_isbn "1-55860-622-X" ,
  • title "Data on the Web" ,
  • author "Abiteboul" ,
  • author "Buneman" ,
  • author "Suciu" ,
  • book _at_year 2001 , _at_isbn "1-XXXXX-YYY-Z"
    , title "XML Query" , author "Fernandez" ,
    author "Suciu"

12
XQuery und Schemata
  • Autoren und Bücher, die vor 2000 veröffentlich
    wurden
  • schema http//www.example.com/books
  • namespace default http//www.example.com/books
  • validate
  • ltBOOKSgt
  • for book in /BOOKS/BOOK_at_YEAR lt 2000 return
  • ltBOOKgt book/AUTHOR, book/TITLE lt/BOOKgt
  • lt/BOOKSgt

13
XQuery
  • Grundstruktur
  • For Binden von Variablen an Mengen
  • For t in document(http//...)
  • Let Binden eines Wertes an Variable
  • For t document(http//...)
  • Where Prädikat, wird je gebundenem Wert
    evaluiert
  • where t/book/_at_price "20"
  • Return Ergebniskonstruktor (manchmal do)
  • return t/book/title SORTBY
    (t/book/_at_price)

14
Projektion
  • Finde alle Autoren aller Bücher
  • /bib0/book/author
  • gt author "Abiteboul" ,
  • author "Buneman" ,
  • author "Suciu" ,
  • author "Fernandez" ,
  • author "Suciu"
  • author String 0,

    type of result
  • Äquivalent zu entsprechendem XML-Dokument

15
Atomare Daten
  • Alle Autoren, aber als Werte
  • book0/author/data()
  • gt "Abiteboul",
  • "Buneman",
  • "Suciu"
  • String 1,
  • book0/_at_year/data()
  • gt 1999 Integer

Auch Benutzerdefinierte Funktionen erlaubt!
16
Iteration
  • for b in bib0/book return
  • book b/author, b/title
  • gt book
  • author "Abiteboul" ,
  • author "Buneman" ,
  • author "Suciu" ,
  • title "Data on the Web" ,
  • book
  • author "Fernandez" ,
  • author "Suciu" ,
  • title "XML Query"
  • book author String 1, , title
    String 0,

Semantisch wie "list comprehension" (siehe
Haskell)(b.a,b.t) b lt- book where
book...
17
Typableitung
  • bib0/book Book0,
  • b Book
  • b/author author String 1,
  • b/title title String
  • Type inference gt
  • book author String 1, , title String
    0,

18
Filter
  • filter selektiert Teile des Arguments (eines
    xml-Baums)

Beispiel Inhaltsverzeichnis lttocgt
filter(document ("cookbook.xml") //
(section section/title section/title/text()))
lt/tocgt
19
Selektion
  • Bücher mit allen Elementen, die vor 2000
    publiziert wurden
  • for b in bib0/book
  • where b/_at_year/data() lt 2000 return
  • b
  • gt book
  • _at_year 1999 ,
  • _at_isbn "1-55860-622-X" ,
  • title "Data on the Web" ,
  • author "Abiteboul" , author "Buneman" ,
    author "Suciu"
  • Book0,

20
Quantifizierung
  • Bücher, bei denen ein Autor "B..." heißt.
  • for b in bib0/book return
  • for a in distinct(b/author/data())
  • where a "Buneman" return
  • b
  • gt book
  • _at_year 1999 ,
  • _at_isbn "1-55860-622-X" ,
  • title "Data on the Web" ,
  • author "Abiteboul" ,
  • author "Buneman" , author "Suciu"
  • Book0,

21
Negierter Existenzquntor
  • Bücher, von denen "B..." kein Autor ist.
  • for b in bib0/book return
  • where empty (for a in b/author
  • where a/data() "Buneman" return
  • a)
  • return b
  • gt book
  • _at_year 2001 ,
  • _at_isbn "1-XXXXX-YYY-Z" ,
  • title "XML Query" ,
  • author "Fernandez" , author "Suciu"
  • Book0,

22
...Quantifizierung
  • Alle Bücher, bei denen nur "B..." Autor ist.

for b in bib0/book return where empty (for a in
b/author where a/data() ltgt "Buneman" return
a) return b gt () Book0,
23
Binden von Werten (let)
  • Äquivalente Formulierung
  • for b in bib0/book
  • let nonbunemans
  • (for a in b/author
  • where a/data() ltgt "Buneman"
    return a)
  • where empty(nonbunemans) return
  • b

24
Verbund
  • Erweitertes Schema
  • type Reviews
  • reviews
  • book
  • title String ,
  • review String
  • 0,
  • let review0 Reviews
  • reviews book title "XML Query" ,
  • review "A darn fine book." ,
  • book title "Data on the Web" ,
  • review "This is great!"

25
Verbund (inner join)
  • Titel, Autor und Review für jedes Buch
  • for b in bib0/book return
  • for r in review0/book
  • where b/title/data() r/title/data()
    return
  • book b/title, b/author, r/review
  • Wie "nested loop-join", Semantik nicht
    notwendig Ausführung

26
Restrukturierung und Gruppierung
  • Buchtitel gruppiert nach Autor.
  • for a in distinct(bib0/book/author/data())
  • biblio
  • authora,
  • for b in bib0/book return
  • for a2 in b/author/data()
  • where a a2 return
  • b/title

27
XPath und XQuery
  • Return all authors of all books
  • /BOOKS/BOOK/AUTHOR
  • for dot1 in root/BOOKS return
  • for dot2 in dot1/BOOK return
  • dot2/AUTHOR

28
Umformungsregeln
  • Associativität in XPath
  • BOOKS/(BOOK/AUTHOR)
  • (BOOKS/BOOK)/AUTHOR
  • Associativität in XQuery
  • for dot1 in root/BOOKS return
  • for dot2 in dot1/BOOK return
  • dot2/AUTHOR
  • for dot2 in (
  • for dot1 in root/BOOKS return
  • dot1/BOOK
  • ) return dot2/AUTHOR

29
Xquery "Core language"
  • /BOOKS/BOOK_at_YEAR lt 2000/TITLE
  • for book in /BOOKS/BOOK return
  • if (not(empty(
  • for year in book/_at_YEAR returns
  • if year lt 2000 then year else ()
  • ))
  • ) then
  • book/TITLE
  • else
  • ()

Abbildung von Oberflächensyntax auf "core
language"
30
Teil 3 XML und Information RetrievalT. Schlieder

31
Gliederung
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
  • Einbeziehung der Dokument-Struktur
  • XML-Anfragesprachen und IR
  • Probleme
  • Lösungsansatz mit Regular Path Expressions
  • Lösungsansatz mit User Interface
  • Der ApproXQL-Ansatz
  • Datenmodell
  • Anfragesprache
  • Ähnliche Strukturen
  • Vages Enthaltensein

32
Grundprinzip des IR
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
  • Grundprinzip des IR
  • Es gibt ein Informationsbedürfnis
  • Gesucht sind Dokumente, die Informationsbedürfnis
    befiedigen
  • Merkmale
  • vage Dokumentrepräsentation (Vergabe von
    Deskriptoren)
  • vage Queryformulierung (Abbildung
    Informationsbedürfnis auf Keywords)
  • vage Abbildung von Query auf Dokument-Repräsentati
    on

33
Was ändert sich durch 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
  • Struktur
  • in den Dokumenten
  • in den Anfragen
  • kann helfen, die Präzision der Anfragen zu
    erhöhen.
  • Interpretation der Struktur
  • vage in Dokumenten, Query und Abbildung
  • streng in Dokumenten, Query und Abbildung
  • streng in Dokumenten, vage in Query und Abbildung

-gt unrealistisch, da Struktur in Dokumenten
vorgegeben
-gt XML-Anfragesprachen, IR-Systeme für strukt.
Dok.
-gt Relevanz-Ranking schwierig (?)
34
Vage Struktur-Interpretation
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
  • Probleme mit dem Begriff "Relevance Ranking"
  • Dokument-Struktur vorgegeben (nicht vage)
  • Dokument-Struktur muß (teilweise) bekannt sein,
    um Anfrage zu formulieren
  • Kompromiß
  • Relevanzbewertung für den 'Inhaltsteil' von
    Anfragen und Dokumenten
  • Ähnlichkeitsmaß für Struktur

35
XML-Anfragesprachen und IR
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
  • Mä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 kennen
  • Restriktive Interpretation von Struktur und Daten

36
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
  • Regular Path Expressions wurden eingeführt um
  • mit struktureller Heterogenität umzugehen
  • Anfragen mit partieller Kenntnis der Struktur zu
    erlauben

37
Regular Path Expressions
ltbookgt ltauthorgtSmithlt/authorgt ... lt/bookgt
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
  • "Ich möchte alle Bücher, die von Smith
    geschrieben worden sind."

ltbookgt lteditorgtSmithlt/editorgt ... lt/bookgt
Query 1 /book/author"Smith"
ltbookgt ltchaptergt ltauthorgtSmithlt/authorgt
... lt/chaptergt lt/bookgt
Query 2 /book/(author editor) .
"Smith"
Query 3 /book//(author editor) .
"Smith"
ltbookgt ltchaptergt lttextgt ... Smith ...
lt/textgt lt/chaptergt ... lt/bookgt
Query 4 /book//."Smith"
38
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
  • Probleme
  • Regular Path Expressions erfordern
  • umfangreiche Kenntnis von Struktur und Inhalt der
    Dokumente
  • Vertrautheit mit der Sprache (-gtGelegenheitsnutzer
    )
  • Alle Ergebnisse einer Query (mit Regular Path
    Expressions) werden gleich bewertet (mit 'true')

39
XML-Anfragesprachen und User Interfaces
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
  • User Interfaces machen den Nutzer mit der
    Dokumentenstruktur bekannt
  • Probleme
  • Anzeige der gesamten Struktur führt zu
    "Information Overload" ? Verringerung der
    Nutzerakzeptanz
  • Top-Down-Navigation führt evtl. zu Verlust von
    relevanten Ergebnissen.

40
Lösungsansatz
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
  • Vereinfachtes Datenmodell
  • Einfache strukturierte Anfragen
  • Unterstützung durch User Interface
  • Klassische IR-Methoden für Dokument-Inhalt
  • Ähnlichkeitsbewertung der Struktur

41
Datenmodell
ltbook year"1999"gt ltauthor id"a1"gt
ltnamegtJohn Bradleylt/namegt lt/authorgt ...
ltchapter ref"a1"gt ltauthorgtSmithlt/authorgt
ltsectiongt lttitlegtXMLlt/titlegt
... lt/sectiongt ...
lt/chaptergt ... lt/bookgt
42
Normalisierung
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
  • Normalisiere Attribute

book
year "1999"
chapter
author
section
name
author
title
PCDATA
PCDATA
John Bradley
Smith
PCDATA
XML
43
Normalisierung
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
  • Entferne Links
  • Normalisiere Attribute
  • Normalisiere PCDATA

book
chapter
author
section
name
author
title
PCDATA
PCDATA
John Bradley
Smith
PCDATA
XML
44
Normalisierung
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
  • Entferne Links
  • Normalisiere Attribute
  • Normalisiere PCDATA
  • Füge neue Wurzel hinzu

book
chapter
author
section
name
author
title
Smith
Bradley
John
XML
45
Normalisierung
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
  • Entferne Links
  • Normalisiere Attribute

root
  • Normalisiere PCDATA
  • Füge neue Wurzel hinzu

book
book
chapter
author
section
name
author
title
Smith
Bradley
John
XML
46
Anfragesprache (graph. Interpretation)
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
  • Eine Query ist ein gelabelter Baum
  • Kinder eines Knotens werden durch log. Ausdruck
    verbunden

z.B. - Boolesche Logik - Gewichtete Summe
book
logischer Ausdruck
author
chapter
logischer Ausdruck
title
"Database"
"Smith"
"XML"
47
Was sind ähnliche Strukturen?
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
Query
Dokument
article
book
ähnlich?
author
editor
48
Was sind ähnliche Strukturen?
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
Query
Dokument
book
book
ähnlich?
AND
author
author
title
Verwandschaft zur Bio-Informatik (Tree Edit
Distance, Tree Alignment)
49
Sinnvolle Ähnlichkeitsoperatoren
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
1. Umbenennen von Knotennamen (Element-,
Attributnamen) mit Hilfe von Kostenfunktion
Query
Dokument
article
book
author
editor
  • Ähnlichkeit der Namen
  • von Administrator festgelegt (DTD-Analyse)
  • gelernt (z.B. via Data-Mining)

50
Sinnvolle Ähnlichkeitsoperatoren
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
2. Überspringen von Datenknoten mit Hilfe von
Kostenfunktion
Query
Dokument
book
book
author
chapter
author
  • Kosten der Knoten
  • von Administrator festgelegt (DTD-Analyse)
  • gelernt (z.B. via Data-Mining)

51
Sinnvolle Ähnlichkeitsoperatoren
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. Löschen von Query-Knoten in semantisch
sinnvoller weise.
Query
Dokument
book
book
author
chapter
author
? vages Enthaltensein
52
Enthaltensein
book
Query
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
  • Annahme 1
  • Vater-Kind-Knoten modellieren Enthaltensein

logischer Ausdruck 1
author
chapter
logischer Ausdruck 2
title
"Database"
"Smith"
"XML"
logischer Ausdruck 2
logischer Ausdruck 1
53
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
  • Annahme 2
  • Nutzer bevorzugt bestimmten Kontext

Dokument
book
"XML"
logischer Ausdruck 2
logischer Ausdruck 1
"Smith"
"Database"
54
Zusammenfassung Teil 3
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
  • Dokumentstruktur erlaubt präzisere Anfragen
  • Nutzer muß Struktur partiell kennen
  • Dokumentstruktur sollte vage interpretiert werden
    (best matches first)
  • Nicht alle strukturellen Ähnlichkeitsmaße
    sinnvoll
  • Semantik
  • Berechnungskomplexität
Write a Comment
User Comments (0)
About PowerShow.com