| |
2 Anfragesprachen
2.1 Einleitung
Mit der zunehmenden Akzeptanz und Verbreitung von XML stieg die Menge der in ihr abgelegten
Daten stetig. Nun möchte man aber natürlich nicht nur Daten speichern, sondern sie auch schnell
wiederfinden können. Dies bedeutet das man z.B. Operationen wie Selektion und Aggregation von
Elementen und Attributen oder Transformation von Dokumenten effizient bearbeiten können muß.
Dies sind bekannte und eingehend untersuchte Probleme aus dem Bereich der Datenbanken. Jedoch
sind bekannte Lösungen wie SQL/OQL nicht anwendbar, da relationale/objektorientierte Daten wohl
strukturiert sind. XML hingegen ist wie in Kapitel 1 erläutert semistrukturiert. Da auch die bisher für
XML entwickelten Zugriffsmechanismen (XPath bzw. XSLT) nicht ausreichend sind wurden neue
Konzepte und entsprechende Anfragesprachen für XML-Daten notwendig, die im folgenden Kapitel
dargestellt werden sollen.
2.2 Entwicklungen der W3C XML Query Working Group
Eine der wichtigsten Organisationen, die sich mit der Spezifikation einer Anfragesprache für XML
beschäftigt ist sicherlich das World Wide Web Consortium (kurz W3C). In ihr entstand dafür im Juli
1999 die XML Query working group [W3C], die z.Z. 41 Mitglieder aus den unterschiedlichsten
Organisationen und Einrichtungen zählt.
Diese Arbeitsgruppe hat es sich zum Ziel gesetzt ein Datenmodell für XML Dokumente zu schaffen
und eine Menge notwendiger Operationen für dieses Modell in einer Query Algebra zu entwickeln.
Darüber hinaus hat sie bereits eine Anfragesprache (die XML Query Language) entworfen, deren
Semantik auf dem Datenmodell und der Algebra basiert.
Die aktuelle Arbeit der working group soll in den folgenden Abschnitten genauer dargestellt werden.
Hierbei muß jedoch erwähnt werden, daß große Teile der Spezifikationen noch in der Entwicklung
stehen und dadurch viele offene Fragen bisher unbeantwortet sind.
2.2.1 allgemeine Anforderungen
Um Anforderungen festlegen zu können, hat sich die working group zunächst Szenerien überlegt, bei
denen XML-Daten abgefragt werden könnten, und diese in einem Working Draft [CFMR01a]
zusammengefasst. Auf dessen Basis wurden dann allgemeine Anforderungen, sowie Anforderungen
für das Datenmodell und zur Funktionalität einer Anfragesprache in [CFMR01b] spezifiziert.
Zu den allgemeinen Forderungen gehören hauptsächlich Vorgaben zu den XML-Datenquellen:
human-readable documents: Es sollte möglich sein Anfragen über einem oder mehreren strukturierten
Dokumenten, wie z.B. Technischen Handbüchern, zu stellen, um gezielt nach Informationen zu
suchen oder z.B. Inhaltsverzeichnisse zu generieren
data-oriented documents: Ferner sollte es möglich sein, Anfragen über Daten einer Datenbank, die im
XML Format vorliegen, zu formulieren. Dabei soll angenommen werden, dass diese Daten physisch
vorliegen oder auch virtuell repräsentiert sind, d.h. bei Bedarf nach XML konvertierbar sind.
mixed-model documents: Weiterhin sollten sowohl textorientierte als auch datenorientierte
Anfragen an Dokumenten möglich sein, in denen Daten dieser beiden Formen vorliegen. Einige
solcher Beispiele könnten Kataloge, Patientenkarteien oder Geschäftsberichte sein.
Weitere mögliche Datenquellen, die unterstützt werden sollen, sind z.B. DOM-Strukturen oder XML-
Ströme.
2.2.2 Das XML Query Data Model
Seit der Veröffentlichung des XML-Standards wurden bereits mehrere Datenmodelle für XML
entwickelt. Da jedoch keines umfassend genug ist, um als Basis für eine Algebra zu dienen hat die
XML Query Arbeitsgruppe mit dem XML Query Data Model eine eigene Spezifikation, die z.Z. noch
7
|  |
|
| |
|
|