Web

Bei XML-Schemasprachen ist kein Standard in Sicht

29.03.2001
Das W3-Consortium beförderte letzte Woche seine Spezifikation "XML Schema" zum Status der "Proposed Recommendation". Gleichzeitig verstärkte sich die Kritik an der Komplexität des geplanten Standards.

Von CW-Redakteur Wolfgang Sommergut

MÜNCHEN (COMPUTERWOCHE) - Das W3-Consortium beförderte letzte Woche seine Spezifikation "XML Schema" zum Status der "Proposed Recommendation". Gleichzeitig verstärkte sich die Kritik an der Komplexität des geplanten Standards. Diese Haltung kommt auch durch rivalisierende Initiativen zum Ausdruck, hinter denen andere Gremien stehen.

Noch bevor das W3C die Spezifikation für XML Schema endgültig verabschiedet hat, erweist sie sich als der am meisten umstrittene XML-Co-Standard. Das liegt sicher an der Beschaffenheit dieses Vorschlags selbst, aber auch an der Bedeutung, die ihm in der Familie der XML-Spezifikationen zukommt. Zur Debatte steht immerhin das Verfahren, mit dem zukünftig XML-Vokabulare definiert und validiert werden sollen.

Relax - die japanische Alternative?

Schon zu einem Zeitpunkt, als die W3C-Spezifikation XML Schema noch als Entwurf vorlag und sich deren enormer Umfang (mittlerweile über 250 Druckseiten) abzeichnete, setzte ihr ein japanisches Team um Murata Makoto eine Alternative entgegen. Die Regular Language Description for XML (Relax) gilt im Vergleich zu XML Schema als eleganter und leichtgewichtiger. Zudem verfolgt sie im Gegensatz zu seinem W3C-Rivalen ein stärker modulares Konzept. Relax wurde mittlerweile bei der International Organization for Standardization (ISO) eingereicht.

Trex: James Clark schießt quer

Die Auseinandersetzungen um die W3C-Schemasprache erreichten nun einen neuen Höhepunkt, als die Organization for the Advancement of Structured Information Standards (OASIS) im Februar das "Trex technical committee" für die Entwicklung einer XML-Validierungssprache einrichtete. Hinter diesem Vorstoß steht James Clark, einer der prominentesten und einflussreichsten Vertreter der XML-Gemeinde. Er war nicht nur federführend bei der Ausarbeitung des XML-Kernstandards und der W3C-Empfehlungen Xpath sowie XSL Transformations (XSLT) beteiligt, sondern ist auch Autor der weithin bekannten Tools "Expat" (Parser) oder "XT" (XSLT-Prozessor). Zwar arbeitet Clark auch bei XML Schema mit, die von OASIS genannten Vorzüge seiner Tree Regular Expressions for XML (Trex) liest sich aber wie eine Kritik an der W3C-Spezifikation. Hervorgehoben wird dort, dass Trex einfach und schnell zu lernen sei, das XML-Infoset durch die Validierung nicht verändere, Elemente und Attribute so weit wie möglich einheitlich behandle, ungeordneten und gemischten Inhalt uneingeschränkt unterstütze, auf einem soliden theoretischen Fundament stehe und mit externen Datentypendefinitionen kombiniert werden könne.

Gerade die beiden letzten Aspekte erweisen sich als besonders aufschlussreich. Bei externen Datentypensprachen, die sich einbeziehen lassen, wird ausdrücklich der dritte Teil der XML-Schema-Spezifikation genannt. Nachdem der erste Abschnitt eine Einführung in die Materie ist, sieht sich Trex als Ersatz für die in Teil zwei vorgeschlagene eigentliche Schemasprache des W3C. Die Betonung des theoretischen Fundaments erfolgt auch nicht ohne Seitenhieb auf den W3C-Ansatz: Dort bemühen sich nun mehrere Mitglieder der Arbeitsgruppe, nachträglich für XML Schema ein mathematisches Modell in Form der Model Schema Language zu entwerfen.

Die Bedeutung der OASIS-Initiative unterstreicht nicht nur die Teilnahme klingender Namen im technischen Komitee, sondern auch die Unterstützung in der XML-Gemeinde. Nachdem James Clark eine Trex-Beispielimplementierung in Java vorgelegt hatte, zog nun der bekannte Gründer des Open-Source-Projekts "FOP", James Tauber, mit einer Python-Ausführung nach.

ISO vs. W3C vs. OASIS - Wettbewerb wie in der freien Wirtschaft

Angesicht der Frontstellung zwischen den drei maßgeblichen XML-Organisationen scheint ein einheitlicher Standard für Schemasprachen zunehmend unwahrscheinlich, jede von ihnen verfolgt einen eigenen Vorschlag: ISO setzt auf Relax, das W3C auf XML Schema und OASIS auf Trex. Auch wenn damit Konfusion um eine XML-Kerntechnologie entsteht, kann man dieser Rivalität auch positive Seiten abgewinnen. Das W3C, das in den Augen vieler Entwickler XML durch zahlreiche Zusatzstandards und Erweiterungen von der ursprüngliche Idee entfernte, erhält nun veritable Konkurrenz. Immerhin ging es den XML-Erfindern vor allem darum, durch Reduktion von SGML-Komplexität (Standard Generalized Markup Language) ein einfacheres Markup-System zu schaffen, das für eine größere Anwenderschaft interessant sein sollte.

Im Wettstreit untereinander verhalten sich Standardorganisationen, die gerne "non profit" in ihrem Titel führen, häufig nicht anders als konkurrierende Hersteller. Besonders das W3C versucht, weitgehend anerkannte Empfehlungen aus dem eigenen Haus auszunutzen, um darauf ein übergreifendes Regelwerk für XML zu aufzubauen. Die Verstrickung der Spezifikationen untereinander sorgt nicht nur für Unübersichtlichkeit, sondern kann einem W3C-Vorschlag zur Durchsetzung verhelfen, auch wenn ihm mangels Zustimmung durch Anwender und Entwickler die nötige Legitimität fehlt. Im Fall von XML Schema sieht es so aus, als wollte die Organisation von Tim Berners-Lee andere Spezifikationen nach und nach darauf aufbauen: Das wird beispielsweise bereits für den Entwurf von XSLT 2.0 sichtbar.

Die Entwicklung einer Schemasprache beim W3C wurde vor allem zur Überwindung bestehender XML-Defizite in Gang gebracht. Aufgrund seiner SGML-Abkunft ist XML auf die Nutzung in dokumentenorientierten Umgebungen ausgelegt und eignet sich nur beschränkt als Format für den Datenaustausch oder die Transaktionsverarbeitung. Als größter Mangel der bisher genutzten Document Type Definition (DTD) wird empfunden, dass keine strenge Typisierung der Daten möglich ist.

Zwar behebt XML Schema dieses Defizit, schießt nach Ansicht vieler Beobachter dabei aber weit über das Ziel hinaus. Die unüberschaubare Zahl an Features kommt zum Missmut der dokumentorientierten Anwender vor allem der datenzentrierten Nutzung entgegen. Dies gilt vielen als Beleg dafür, dass sich innerhalb der W3C-Arbeitsgruppe die großen Hersteller aus der Datenbank- und B2B-Szene durchgesetzt haben.