Er is een enorme stap gemaakt in de ontwikkeling van documentdefinitie in XML-systemen. XML is de basistaal die het World Wide Web Consortium (W3C) heeft gedefinieerd voor de opmaak van documenten. In tegenstelling tot Html zijn XML-documenten gestructureerd en flexibel; de ’tags’ zijn niet voorgedefinieerd, maar worden afzonderlijk gedefinieerd in overeenstemming met een specifiek documenttype. Omdat XML is afgeleid van Sgml is de Sgml-methode voor documentdefinitie geadopteerd. Dit wordt Document Type Declaration (DTD) genoemd.
In het geval van Sgml was de specifiek op documenten gerichte DTD-benadering zeer acceptabel. Een aantal documentmakers heeft aanzienlijk in DTD-bibliotheken geïnvesteerd. W3C veronderstelde dat deze bibliotheken verder zouden worden ontwikkeld naarmate XML verder evolueerde.
Door de huidige vraag naar e-handel is de aandacht echter meer gericht op het uitwisselen van gegevens tussen incompatibele systemen. De ervaring met edi laat zien dat, ondanks de succesvolle toepassing, de rigide formaten een struikelblok vormen voor de verdere ontwikkeling ervan. De snelle beschikbaarheid van XML bleek het antwoord. Gegevens worden daarbij in de vorm van karakterstrings weergegeven, waardoor bestaande technieken kunnen worden toegepast. In de context van XML worden gegevens dus weergegeven als een gestructureerd en opgemaakt document; hiermee krijg je de flexibiliteit die nodig is voor e-handel, met name in het ‘business-to-business’-segment.
Tegenwoordig ligt de nadruk bij XML meer op het formatteren van gegevens dan van documenten. Uiteindelijk zullen gestructureerde XML-documenten de huidige mail- en tekstverwerkingssystemen vervangen, maar dat zal nog wel even duren.
Het feit dat de nadruk bij het gebruik van XML zo sterk op gegevens ligt, roept vraagtekens op bij het gebruik van DTD’s. Het idee was dat DTD’s zich tot Schema’s zouden ontwikkelen. DTD’s geven immers alleen betekenis aan de tags, maar voegen geen regels toe. Een Schema voegt verwerkingsregels toe aan een DTD. Voorbeeld: een DTD kan een tag definiëren om een entiteit als ‘hoeveelheid’ te beschrijven, terwijl een Schema daaraan zou kunnen toevoegen ‘met een waarde tussen 10 en 50’ of ‘voer X uit indien meer dan 10, Y indien minder’. Een Schema is zelf ook een XML-document en is daarom ondanks de extra functionaliteit eenvoudig aan te maken (met een XML-editor, zoals Stilo WebWriter) zonder dat je de ingewikkelde DTD-syntaxis hoeft te begrijpen.
Het dilemma dat de keuze tussen DTD, standaard of de facto Schema met zich meebrengt, werd goed zichtbaar toen Microsoft Biz Talk introduceerde. Dit is een op XML gebaseerd raamwerk voor het ontwikkelen van diensten waarmee gegevens van de ene set applicaties naar de andere gestuurd kunnen worden. Microsoft beet het spits af, sloeg de DTD’s over en koos direct voor Schema’s. Deze aanpak is wel aangemerkt als een typisch Microsoft-initiatief om een standaard te vernietigen, in dit geval XML. Dat is niet terecht. Microsoft ondersteunt de standaard XML en biedt ondersteuning voor het ontwikkelen van Schema’s op basis van Biz Talk. Wel wordt gesuggereerd dat Microsoft alle rechten inzake intellectuele eigendom op ontwikkelde Schema’s wil behouden.
W3C is er nog niet van overtuigd dat de ontwikkeling van Schema’s versneld moet worden. En zo is het intrigerend, maar ook aangenaam dat Tim Berners-Lee, een van de leiders van W3C en uitvinder van het Web, een directief heeft uitgevaardigd waarin staat dat gebruik moet worden gemaakt van Schema’s in plaats van DTD’s. Nu rijst de vraag welke standaarden er voor Schema’s zijn. Daarvoor bestaat een aantal alternatieven. Microsoft bewandelt met Biz Talk het XDR-pad (XML Data Reduced). SOX is een andere kandidaat. In standaardisatiekringen wordt veel gesproken over Document Content Definition (DCD), een standaard die veel steun in de academische wereld geniet. Al deze standaarden zijn het onderwerp van W3C-notities, die uiteindelijk tot overeenstemming zullen leiden – en tot een standaard die past bij XML. Microsoft heeft gezegd elke W3C-standaard te zullen ondersteunen zodra deze beschikbaar is.
Ook de houding van IBM, Sun en Oracle is interessant. Zijn ze compatibel met Biz Talk, met elkaar, met DCD? Gaan ze hun eigen weg of wachten ze op een W3C-standaard? Intrigerende vragen, want het gaat om een hoop geld. Zie hoe succesvol IBM is met zijn MQ serie – een voor de hand liggend vehikel voor het implementeren van b2b-systemen met ondersteuning van XML/Schema. IBM’s beslissing is dan ook van groot belang.
Een belangrijke verandering die de ontwikkelingen op Schema-gebied hebben bewerkstelligd is dat er XML-tools nodig zijn om zowel Schema als DTD te ondersteunen. W3C moet niet te lang wachten met een nieuwe standaard, anders is het te laat voor de industrie.