* XSLT und XQuery:
- XSL Transformations (XSLT) Version 2.0
- XSLT 2.0 and XQuery 1.0 Serialization
- XML Syntax for XQuery 1.0 (XQueryX)
* XQuery und XPath:
- XQuery 1.0: An XML Query Language
- XML Path Language (XPath) 2.0
- XQuery 1.0 and XPath 2.0 Data Model (XDM)
- XQuery 1.0 and XPath 2.0 Functions and Operators
- XQuery 1.0 and XPath 2.0 Formal Semantics
"Diese Spezifikationen haben der XML-Welt einen neuen Reifegrad beschert", sagt Liam Quin, Leiter der W3C XML-Aktivitäten. "Wir sehen heute schon Leute, die buchstäblich Millionen Zeilen XML-Transformationen produktiv einsetzen. Die Arbeitsgruppen haben den Anwendern zugehört, Menschen mit großen Dokumentsammlungen, Datenbankspezialisten, Aktienhändlern und Nachrichtenagenturen, und wir haben einen integrierten Satz an Spezifikationen produziert, der im Unternehmenseinsatz ebenso stark ist wie für den Privatanwender."
Erfahrung und Erfolg von XSLT 1.0 stecken in der Version 2.0
XSLT 2.0 ist eine größere Überarbeitung der sehr erfolgreichen XSL-Transformations-Sprache. XSLT transformiert XML-Inhalte in andere Formate, einschließlich XML. Zum Beispiel könnte man XSLT verwenden, um den XML-Output aus einer Datenbank in eine XHTML-Webseite oder ein druckfertiges XSL-FO-Dokument zu verwandeln. XSLT 2.0 standardisiert viele Möglichkeiten, die zuvor nur als Erweiterungen verfügbar waren, wie die Möglichkeit, mehrere Ausgabedokumente zu erzeugen oder benutzerdefinierte XPath-Funktionen anzulegen. Mit stärkerer Unterstützung für Internationalisierung und umfangreicheren Werkzeugen für den Programmierer ist XSLT 2.0 noch besser für den umfassenden, unternehmenskritischen Einsatz geeignet, für den XSLT 1.0 heute schon genutzt wird.
Zusätzlich zu neuer Funktionalität führt XML Strong Typing ein und unterstützt den optionalen Gebrauch von XML Schema. Strong Typing ist eine Eigenart von professionellen Programmiersprachen wie Java, C++ und C# und ist darauf ausgelegt, Fehler in Programmen und dadurch auch die Kosten der Entwicklung und Pflege großer Systeme zu reduzieren.
XML Query erweitert XML um Datenbank-Funktionen
Während XSLT primär auf Transformationen abzielt, fügt XML Query die Möglichkeitden von Datenbank-Suche und -Auswahl zu XML hinzu. Query nutzt ebenfalls XML Schema um eine stark typisierte Programmier- oder Skriptsprache anzubieten und setzt auf XPath 2.0 als Auswahl-Vokabular auf. Mit XML Query kann man hersteller- und datenbankübergreifende Joins zwischen verschiedenen Datenformen realisieren, einschließlich XML-Dokumenten, nativen XML-Speichern, relationalen Datenbank-Tabellen und anderen.
Mit der Standardisierung beginnt ein neues Zeitalter für Middleware
XSLT 2.0 und XML Query 1.0 bieten einen Standard für Datenbank-Integration. Der Java Community-Prozess hat erste Arbeiten zu XQJ freigegeben, der XQuery API für Java, und die International Organization for Standardization (ISO) hat XML Query bereits in den Teil 14 von ISO SQL (SQL/XML) integriert. Verbindungen zwischen großen Applikationen, Datenbanken, Betriebssystemen, Web-Services und Webservern haben von jeher Middlewaregenutzt, das heisst Software, die bei Bedarf Daten zwischen den Formaten der verschiedenen Applikationen konvertiert und manipuliert. Mit einem standardisierten Weg zur Integration von Tools, einem Standard-Satz von Datenformaten und Standardprozeduren, um diese Datenformate abzufragen und zu manipulieren, werden die Nutzer von Middleware in der Lage sein, sich auf ihre high-level Business-Logik zu konzentrieren und können neue Datenquellen viel schneller einbinden. Viele Hersteller haben dies frühzeitig erkannt und unterstützen bereits die XQuery 1.0 und XPath 2 Datenmodelle (XDM), die ihren Kunden Kostenersparnis und neue Funktionen bringen.
Implementierung vorhanden, weitere Erfahrung gesucht
XQuery profitiert bereits von signifikanter Implementierungserfahrung. Die Implementierer der frühen Drafts von XML Query sind unter anderem IBM, Microsoft, Oracle, Apple, BEA und viele andere; daneben gibt es eine Anzahl von Open-Source-Implementierungen. In den ersten neun Monaten von 2005 wurde eine Open-Source-Implementierung von XSLT 2 und XQuery (Saxon von Michael Kay, dem Verfasser von XSLT 2.0) über 33.000 mal heruntergeladen. Die große Zahl derImplementierungen von XQuery ist auf der öffentlichen XML Query Webseite verfügbar.
Die XSL Working Group und die XML Query Working Group, die diesen Satz an Dokumenten in enger Zusammenarbeit mit der XML Schema Working Group erarbeitet haben, bitten nun die Implementierer, die entsprechenden Test-Suiten zu durchlaufen und dabei zu helfen, zu zeigen, dass die Spezifikationen hinreichend präzise sind, um interoperable implementiert zu werden.