database supported xml
News
[09.07.2004]
Montagstermin
Der Termin am kommenden Montag, 12. Juli, findet als
Poolpräsenz im großen Pool statt.
[29.04.2004]
Exam Dates
Exams for this course will be on July 28, 2004, 10-12h in
G 300 and on October 13, 2004, 10-12h in G 300.
[27.04.2004]
Room Change
For the practical part of the course every other Monday, I've now
found another room. From now on we will meet in D 247.
Schedule
- lecture: Wednesday, 12:00 to 14:00 (Jens Teubner, D 247)
- tutorial: Monday, 12:00 to 14:00 (Jens Teubner, D 247)
Material
Lecture Slides
| Chap. | Title | Date | File |
|---|---|---|---|
| 1 | Introduction / XML Primer | 21.04.2004 | |
| 2 | Query Languages for XML | 28.04.2004 | |
| 3 | Storing Trees in Relational DBMSs | 11.05.2004 | |
| 4 | Query Evaluation | 19.05.2004 | |
| 5 | Index Structures for XML | 17.06.2004 | |
| Add-on: XQuery on Relational Databases | 30.06.2004 | ||
| 6 | Native XML Databases | 07.07.2004 | |
| 7 | XML Query Rewriting | 14.07.2004 |
Tutorial Slides
| Chap. | Title | Date | File |
|---|---|---|---|
| 1 | Parsing XML: SAX | 26.04.2004 | pdf, other |
| 2 | Memory Management in C | 10.05.2004 | |
| 3 | Code examples from the tutorial | 28.06.2004 | tgz |
Assignments
| No. | Title | Handout | Due | File |
|---|---|---|---|---|
| 1 | Data Modeling The assignment you should turn in until the end of the semester. | 07.06.2004 | 23.07.2004 |
Other Material
- XPath Online Evaluator
With this online tool you can experiment with XPath queries on our Dilbert example.
html - The Annotated XML Specification
An annotated version of the official XML specification.
html - XPath
Sample chapter on XPath from O'Reilly's “XML in a Nutshell”. (The document is available as PDF.)
html - XQuery: A Guided Tour
The authors of “XQuery from the Experts” published this excerpt from their book. An excellent introduction to the XQuery standards. (The document is available as PDF.)
html - Accelerating XPath Location Steps
These are the original articles describing the XPath accelerator technique. The first link is the original publication, second one an extended follow-up work.
pdf, pdf - Relational Databases for Querying XML Documents: Limitations
and Opportunities
This is the schema-based approach that we discussed in the lecture.
pdf - Storing Semistructured Data with STORED
This technique by Deutsch et al. uses data-mining to map XML document onto relational tables.
pdf - Staircase Join
These two articles describe the staircase join operator. The first one has been presented on the VLDB 2003 conference, the second is a chapter from the book “Intelligent Search on XML Data.”
pdf, pdf - Holistic Twig Joins: Optimal XML Pattern Matching
The paper presents two XPath evaluation algorithms: PathStack for path queries (which you have to implement for the practical part), and the more generic TwigStack algorithm for twig pattern queries. (Second link is the slightly extended Technical Report version.)
pdf, pdf - Holistic Twig Joins on Indexed XML Documents
Despite the inclusion of effective index techniques for processing, this article repeats the PathStack idea from a slightly different view.
pdf - Index Fabric: A Fast Index for Semistructured Data
The Technical Report (first link, ask me for a copy if the link doesn't work) describes the Index Fabric idea quite detailed. The second link is the paper presented at VLDB 2001 that applies the Index Fabric to path expressions and XML.
pdf, pdf - Natix: Efficient Storage of XML Data
The Technical Report describes the storage structure implemented in the Natix system, a native XML database system developed at the University of Mannheim.
pdf - XPath: Looking Forward
The paper presents the rewrite technique to transform XPath queries into equivalents with forward axes only.
pdf - xmlgen — An XML Data Generation Tool
This tool is part of the XMark benchmarking toolset and allows you generate artificial XML documents of any size for testing. Simply download the binary from the website, but don't forget to read the Data Generation FAQ on the same site. (Warning! If you use this tool the wrong way, it will generate huge XML documents!)
html
Course Description
Adressaten:
- Studierende im Vertiefungsstudium im Bachelor-Studiengang Information Engineering
- Studierende im Master-Studiengang Information Engineering
- Empfohlen zu Projekt- oder Individualpraktikum Datenbanken und Informationssysteme (“Pathfinder”)
Inhalt:
Relationale Datenbanken können sehr effizient mit riesigen Datenmengen umgehen. Für einige Anwendungsbereiche ist ihr Datenmodell jedoch zu streng, sie suchen nach flexibleren Möglichkeiten zur Datenspeicherung.
Das aktuelle Schlagwort hierzu heißt “XML”. Sein baumartiges Datenmodell erlaubt es, Informationen mit unterschiedlichem Grad an Strukturiertheit elegant darzustellen; man spricht von semi-strukturierten Daten.
Während XML als Dateiformat diese Daten zwar elegant beschreiben kann, ist es für die Speicherung insbesondere von großen Datenmengen offensichtlich ungeeignet. Aktuelle Forschungsarbeiten aus der Datenbank-Technologie bieten jedoch zahlreiche Ansätze, mit denen auch große Mengen an XML-Daten effizient verarbeitet werden können.
Die Teilnehmer dieser Vorlesung werden einige dieser Techniken kennenlernen und teilweise auch an Übungsaufgaben ausprobieren. Schwerpunkte werden u. a. sein:
- Codierungsverfahren, um XML-Daten in relationalen Datenbanken abzulegen.
- Anfrageauswertung auf XML-Dokumenten.
- Indizierung von XML-Daten.
- “native” XML-Datenbanken, die unmittelbar auf XML-Daten arbeiten
Vertiefungsrichtung:
Grundlagen der Informatik / Informatik der Systeme
Literatur:
Die Veranstaltung orientiert sich an aktuellen Arbeiten aus der Forschung, zu denen typischerweise noch keine Lehrbücher existieren. Auf der Webseite zum Kurs werden daher regelmäßig Originalarbeiten zum Thema zum Download bereitgestellt.
Contacts
- Jens Teubner (lecturer), office: E 218
- Sabine Mayer (assistant), office: E 220


