Anfragen & Transformation

Ähnliche Dokumente
1. Einführung 2. DTD 3. XML Schema 4. XPath 5. XSLT 6. XSL-FO 7. XQuery 8. Web Services 9. XML und Datenbanken

XQuery. XML Query Language. eine Abfragesprache für XML. Ulrike Henny. IDE Autumn School 2012, Chemnitz

Projektseminar Texttechnologische Informationsmodellierung

XQuery. Jan Woschofius

Gruppe 3 / 5 / 10. Tutorübung zu Einsatz und Realisierung von Datenbanksystemen (SS 17) Michael Schwarz

Entwicklung eines Tutorials für XQuery

Mit XQuery auf eine Oracle-Datenbank

XML Datenbanken Quickstart für die Anfragesprachen XPath und XQuery

XPath & XQuery Standardisierte Abfragesprachen für XML-Dokumente. Sebastian Apel

Datenbanksysteme. XML und Datenbanken. Burkhardt Renz. Sommersemester Fachbereich MNI Technische Hochschule Mittelhessen

Mit XQuery auf eine Oracle-Datenbank

5. Programmierschnittstellen für XML

5. Programmierschnittstellen für XML

GROUP BY, HAVING und Sichten

XML-Abfragen der neuen Art: XQuery

Control Questions XML Technologies Blockwoche HS13 Felix Rohrer

7. XML-Datenbanksysteme und SQL/XML

XQuery Tutorial. Student: Anke Bremer Betreuer: Dr. Sosna

Einführung in XQuery

Wiederholung VU Datenmodellierung

Wiederholung VU Datenmodellierung

12 BG EDV Access / Inf-SQL1 Theodor-Heuss-Schule Wetzlar

MCSA: SQL 2016 Database Development

SQL für Trolle. mag.e. Dienstag, Qt-Seminar

Ein XML Dokument zeichnet sich im Wesentlichen durch seine baumartige Struktur aus:

Kommunikation und Datenhaltung. Übungsblatt D1. (Relationale Algebra & SQL)

Wege zur Anzeige. XSL die extensible Stylesheet Language. Wege zur Anzeige. Folie 1. Institut für Dokumentologie und Editorik

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #3. SQL (Teil 1)

PRÜFUNG IN SEMI-STRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

Verknüpfte Daten abfragen mit SPARQL. Thomas Tikwinski, W3C.DE/AT

7. XML-Datenbanksysteme und SQL/XML

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

Institut für Dokumentologie und Editorik. XML-Datenbanken und XQuery

Web Technologien XML, XQuery, XPath und XSLT

Datenbanksysteme. XML und Datenbanken. Burkhardt Renz. Sommersemester Fachbereich MNI Technische Hochschule Mittelhessen

Einführung in XML. Arthur Brack FHDW Hannover. 1. Oktober 2009

Vorlesung Datenbanken II SS 2006

Universität zu Köln Informationsverarbeitung WS 2009/10. Datenbanken vs. Markup Prof. Dr. M.Thaller XML als Datenbank

Transformation von XML-Dokumenten mit XSLT

Inhalt des Moduls: Grundlagen. Vorlagen. Kontrollstrukturen. Ausgabestrukturen. Parameter und Variablen. Dateibasierte Auslagerung

XSLT, XPath und XQuery Marco Skulschus Marcus Wiederstein Sarah Winterstone

Vorlesung Datenbanken II SS 2006

Wissensentdeckung in Datenbanken

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

SELECT dient dazu, aus einer vorhandenen Datenbank bestimmte Spalten und Zeilen auszugeben es handelt sich also um eine Auswahlabfrage.

Relationale Anfragesprachen

Es geht also im die SQL Data Manipulation Language.

Informationssysteme für Ingenieure

ISU 1. Ue_08/02_Datenbanken/SQL. 08 Datenbanken. Übung. SQL Einführung. Eckbert Jankowski.

SQL. strukturierte Datenbankabfragesprache eine Datenbanksprache zur. Structured Query Language:

XSLT Beispiele. Cooktop -

Ich hab da mal ne Frage...

Anwendungsentwicklung Datenbanken SQL. Stefan Goebel

Querysprachen für XML

5.8 Bibliotheken für PostgreSQL

Fakultät für Informatik & Wirtschaftsinformatik DB & IS II - SS noch einmal. XQuery... Andreas Schmidt Oracle XQuery 1/12

ABP Wo steckt der Fehler in der SQL-Anfrage? Semantische Prüfung von Lösungen Prof. Dr. Inga Marina Saatz

Semistrukturierte Daten

RDF und SPARQL. Kursfolien. Karin Haenelt

In diesem Abschnitt wollen wir uns mit dem Thema XML Datenbank beschäftigen. Das Ziel ist, herauszufinden, was XML Datenbank überhaupt sind und was

SQL. Ziele. Grundlagen von SQL. Beziehung zur relationalen Algebra SELECT, FROM, WHERE. Joins ORDER BY. Aggregatfunktionen. dbis.

1. Einführung 2. DTD 3. XML Schema 4. XPath 5. XSLT 6. XSL-FO 7. XQuery 8. Web Services 9. XML und Datenbanken

Microsoft Access 2010 SQL nutzen

XML & Intelligente Systeme. - XQuery Teil 2 - Datamining auf XML Dokumenten

Übersicht der wichtigsten MySQL-Befehle

Übung 6. Tutorübung zu Grundlagen: Datenbanken (Gruppen Do-T24 / Do-T31 WS 2016/2017)

Antwort auf QB ist Menge von Tupeln, i-e. selbst wieder Relation (wie bei rel. Algebra) in QB "Zugriff" auf Tupel mit Tupel-Variablen

Grundlagen von Datenbanken

7.3 XML-Anfragesprache XQuery

SQL. DDL (Data Definition Language) Befehle und DML(Data Manipulation Language)

Aggregatfunktionen in SQL

XML-Archivierung betriebswirtschaftlicher Datenbank-Objekte*

WS 2010/11 Datenbanksysteme Fr 15:15 16:45 R Vorlesung #5. SQL (Teil 3)

Aufgaben zu XPath und XQuery

Seminar: XML und intelligente Systeme

Michael Seemann. Native XML-Datenbanken im Praxiseinsatz

XML-Datenaustausch in der Praxis Projekt TOMIS bei der ThyssenKrupp Stahl AG

Schlüssel. Definition: Ein Schlüssel (key) einer Relation r(r) ist eine Til Teilmenge K von R, so dass für je zwei verschiedene Tupeln t 1

Übung 1: SQL. Übungen finden bei Bedarf anstelle der Vorlesungen statt Fragen? Vorlesung Datenbankeinsatz WS 04/05 IPD

Inhaltsverzeichnis. Lothar Piepmeyer. Grundkurs Datenbanksysteme. Von den Konzepten bis zur Anwendungsentwicklung ISBN:

SQL: Abfragen für einzelne Tabellen

Datenbanksysteme Kapitel 5: SQL - Grundlagen

Datenbanksysteme Kapitel 5: SQL Grundlagen Teil 1

IT-Zertifikat: Daten- und Metadatenstandards. Transformation von XML-Dokumenten mit XSLT (und XPATH) XSLT kurz und knackig. XSLT und die Praxis

PRÜFUNG IN SEMI-STRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Alfons Kemper, Ph.D.

LindenSoft - Die Datenbankexperten

Typologie. XPath unterscheidet zwischen sieben verschiedenen Knoten- Typen.

insert, update, delete Definition des Datenbankschemas select, from, where Rechteverwaltung, Transaktionskontrolle

7. XML-Datenbanksysteme und SQL/XML

Semistrukturierte Daten

4.5 Anfragen mit Mengenoperatoren

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

Inhaltsverzeichnis. Bernd Müller, Harald Wehr. Java Persistence API 2. Hibernate, EclipseLink, OpenJPA und Erweiterungen ISBN:

Semantic Technologies

Gruppe A PRÜFUNG AUS SEMISTRUKTURIERTE DATEN Kennnr. Matrikelnr. Familienname Vorname

XML, QPATH, XQUERY: NEUE KONZEPTE FÜR DATENBANKEN. Prüfungsvorbereitung

Daniel Warner SQL. Das Praxisbuch. Mit 119 Abbildungen. Franzis

Transkript:

Anfragen & Transformation mit XQuery XML Proseminar Le Huan Stefan Tran I 21.06.2010

Reales Beispiel Alle Weltmeister und ihre Finalgegner worldchampions.xml <worldchampions> <wc> <year>2006</year> <winner>italy</winner> <finalist>france<finalist> </wc> <wc> <year>1930</year> <winner>uruguay</winner> <finalist>argentina<finalist> </wc> <worldchampions>» Wer ist 2006 Weltmeister geworden?» In welchen Jahren hat ein WM Land den Titel gewonnen? Seite 2I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

XQuery 1.0 Statusblatt 01 Abfragesprache für XML Datenbanken» Name XML Query Language» Aktuelle Version 1.0 vom 23.01.2007» Standard World Wide Web Consortium (W3C) http://www.w3.org/tr/xquery/ p// /» Theorie stark typisiert, Turing vollständig Seite 3I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

XQuery 1.0 Statusblatt 02 Anwendung» Zugriff auf einzelne, spezielle Informationen» Auch für große XML Datensammlungen» Abgrenzung XSLT XPath Transformation ganzer XML Dokumente Kenntnis der XML Struktur als Voraussetzung Keine Aggregation von Werten Keine Transformation von Daten Seite 4I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

Positionierung Syntax XSLT SQL C Datenmodell XPath XML Schema Vorgänger XQL Quilt XQuery Untermenge XPath Seite 5I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

Anfragen & Transformation mit XQuery Statusblatt Positionierung Ausdrücke und Anfragen Ab Arbeitspferd dflwor Transformation Weiterführende Konzepte Ausblick Seite 6I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

Anfragen & Transformation mit XQuery Statusblatt Positionierung Ausdrücke und Anfragen Ab Arbeitspferd dflwor Transformation Weiterführende Konzepte Ausblick Seite 7I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

Ausdrücke und Anfragen Alles ist ein Ausdruck» Analogie zu SQL» Verwendung in Anfragen Beispiele für Ausdrücke» Literale Zhl Zahlen, Zeichenketten, Zih ktt Wahrheitswerte Whhit t» Pfade Adressierung von Knoten in XML Dokumenten / Eine Ebene tiefer // Beliebig viele Ebene tiefer» Konstruktoren Zur Erzeugung von Anfragen In geschweiften Klammern { } Seite 8I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

Beispielanfrage query01.query (: Kommentar: Weltmeister 2006 :) <results> { (: Alle XPath 1.0-Ausdrücke gelten auch in XQuery :) doc("worldchampions.xml")//wc[year=2006]/winner } </results> Ausgabe <results> <winner>italy</winner> </results> Seite 9I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

FLWOR Das Arbeitspferd von XQuery Fakten» Aussprache flower» Analogie zu SQL select from having where» Flexible Anfrage von komplexen Informationen FLWOR Konzept» F for Schleife» L let Variablenzuweisungeis ng» W where Bedingung» O order by Sortieren» R return Ausgabe Seite 10 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

FLWOR for, return for return Schleife mit Laufvariable Blibi Beliebige Anzahl von for Ausgabe des spezifizierten Ergebnisses query02a.query (: Ausgabe aller Weltmeister :) <results> { (: Variablendeklaration: $ Variablenname :) for $wc in doc("worldchampions.xml")//wc return (: Geschweifte Klammern für Anfragen-Konstruktor :) (: Verwendung der Laufvariable im FLWOR-Kontext :) } </results> <wc> { $wc/winner } </wc> Seite 11 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

FLWOR let let Variablenzuweisung pro Schleifendurchlauf Blibi Beliebige Anzahl von lt let Optional Übersichtlichkeit und Komfort query02b.query <results> { for $wc in doc("worldchampions.xml")//wc (: Verwendung von let :) (: Zuweisungs-Operator := :) let $winner := $wc/winner return <wc>{ $winner }</wc> } </results> Seite 12 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

FLWOR Ausgabe Ausgabe <results> <wc> <winner>italy</winner> </wc> <wc> <winner>none</winner> </wc> <wc> <winner>uruguay</winner> </wc> </results> Keine Weltmeisterschaft in den Jahren 1942 und 1946 Seite 13 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

FLWOR where, order by where order by Filterung von Ergebnissen Optional Höchstens ein where Sortierung der Ergebnisse Optional Mehrere Kriterien möglich query02c.query <results> { for $wc in doc("worldchampions.xml")//wc let $winner := $wc/winner (: Nur tatsächliche Weltmeister ausgeben :) where $winner!= "none" (: Weltmeister alphabetisch sortieren :) order by $winner ascending return <wc> { $winner } </wc> } </results> Seite 14 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

FLWOR Ausgabe Ausgabe <results> <wc> <winner> Argentina</winner> </wc> <wc> <winner>uruguay</winner> </wc> </results> Seite 15 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

Anfragen & Transformation mit XQuery Statusblatt Positionierung Ausdrücke und Anfragen Ab Arbeitspferd dflwor Transformation Weiterführende Konzepte Ausblick Seite 16 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

Transformation mit XQuery Start Chronologie aller Weltmeister Ziel Alle Weltmeistertitel Jahre pro Weltmeister Seite 17 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

Erinnerung: Reales Beispiel Alle Weltmeister und ihre Finalgegner worldchampions.xml <worldchampions> <wc> <year>2006</year> <winner>italy</winner> <finalist>france<finalist> </wc> <wc> <year>1930</year> <winner>uruguay</winner> <finalist>argentina<finalist> </wc> <worldchampions> Seite 18 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

Transformation mit XQuery query03.query <wctitles> { let $wcpath := doc("worldchampions.xml")//wc (: Eliminierung duplizierter Einträge mit distinct-values() :) for $winner in distinct-values($wcpath/winner) order by $winner return <winner> <country>{ $winner }</country> <titles> { (: Ausgabe aller Titel eines Weltmeisters :) for $wc in $wcpath where $wc/winner = $winner order by $wc/year return $wc/year } </titles> </winner> } </wctitles> t Seite 19 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

Transformation Ausgabe Ausgabe <wctitles> <winner> <country>argentina</country> <titles> t </titles> </winner>... <winner> <year>1978</year> <year>1986</year> <country>germany</country> y y <titles> <year>1954</year> <year>1974</year> </titles> </winner>... </wctitles> <year>1990</year> > Seite 20 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

Anfragen & Transformation mit XQuery Statusblatt Positionierung Ausdrücke und Anfragen Ab Arbeitspferd dflwor Transformation Weiterführende Konzepte Ausblick Seite 21 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

Weiterführende Konzepte Fortgeschrittene Techniken mit XQuery» Verwendung von Funktionen Eingebaute Funktion count, max Eigene Funktionen Auslagern von Funktionalität, Rekursion» Sicherstellen der Typsicherheit Unterstützung von XML Schema» Join mehrerer XML Dokumenten Verwendung mehrerer for Schleifen in einem FLWOR Ausdruck Seite 22 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

XQuery in 20 Minuten XQuery» Vom W3C spezifizierte Abfragesprache für XML Datenbanken» Für Zugriff auf einzelne, elne, spezielle Informationen großer XML Datensammlungen Funktionen» FLWOR Konzept zur flexiblen Abfrage spezieller Daten» Transformationen von komplexen Daten» Typsicherheit durch XML Schema Seite 23 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

Ausblick Datenbank Tranformationen» XML nach DB Relationen: XML Shredding» DB Relationen nach XML: XML Publishing Sprachen Transformationen» XQuery nach SQL: SilkRoute» SQL nach XQuery: SQXML der Uni Hamburg Unzulänglichkeiten» Keine Funktionzum Daten Aktualisieren» Kein SQL distinct oder group by» Scheinbar keine größere Weiterentwicklung Seite 24 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

Follow up Nachfolge Präsentationen» XSLT Gegensatz zu XQuery Transformation XML Dateien» XML Schema Datenmodell von XQuery Seite 25 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010

Anfragen & Transformation mit XQuery XML Proseminar Vielen Dank für Ihre Aufmerksamkeit.

Diskussionsrunde Über XQuery Fragen Anmerkungen Feedback Seite 27 I XML Proseminar Anfragen & Transformation mit XQuery 21.06.2010