Trex: James Clark schießt quer

14.05.2001

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.

Trex vs. Schemasprache: 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.

XML-Gemeinde unterstützt OASIS: 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 - freier Wettbewerb: 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.