Inhalt:
Seit der Standardisierung im Jahre 1998 wurde XML schnell zu einem
Standard der Dokument- und Daten-Repräsentation im Internet.
Fast alle größeren Softwarepakete haben zumindest Schnittstellen
für den Import und Export in XML.
Mit dieser weiten Verbreitung von XML stellt sich aber auch zunehmend das
Problem große Mengen an XML effizient und sicher zu verwalten.
Dieses Problem fällt offensichtlich in den Datenbankbereich.
In der Vorlesung werden als Basis zunächst verschiedene Standards rund um XML vorgestellt.
Wir starten mit XML inklusive namespaces.
Dann folgen XML Schema, XSL, XPath und XQuery.
Ersteres dient der Beschreibung von XML Dokumenten analog zu einem
Schema für relationale Datenbanken.
XPath und XQuery sind Anfragesprachen. XPath beschränkt sich dabei
auf Pfadausdrücke, die dann elementarer Bestandteil von
XSL und XQuery sind. XQuery ist eine komplexe Anfragesprache analog zu SQL.
Mittels XSL können Transformationen von XML-Dokumenten zu anderen
XML-Dokumenten spezifiziert werden. Eine Menge solcher
Transformationen wird als Stylesheet gehandelt.
XSL kann aber auch als (nicht-deklarative) Anfragesprache verwendet werden.
Als letztes werden verschiedene API's (DOM, SAX) kennenlernen, die es
einem Programmierer erlauben mittels standardisierter Schnittstelle auf
Dokumenten zu arbeiten.
Nach diesen Grundlagen wenden wir uns den Datenhaltungsproblemen zu.
Da relationale Datenbanksysteme eine ausgereifte Technologie darstellen,
liegt es zunächst einmal Nahe, diese für die Speicherung von XML
zu benutzen. Wir werden verschiedene Möglichkeiten aufzeigen, dies zu tun.
Wie wir allerdings werden feststellen müssen, ist dies nicht immer optimal.
Daher geht der neueste Trend hin zu Datenbanksystemen, die speziell
für XML entwickelt wurden.
Wir werden einige Systeme näher kennenlernen.
Im letzten Abschnitt der Vorlesung geht es dann um ausgewählte Probleme.
Spezielle Indexstrukturen für die indizierung von XML stellen einen
großen Bereich dar. Es folgen dann Anfragebearbeitung und Transaktionsverwaltung
in XML Datenbanksystemen.
XML-Spezifikation