XML Schema 1.1 and the versioning of XML vocabularies

Talks

XML Schema 1.1 and the versioning of XML vocabularies

Add to calendar

Event details

Date:
Coordinated Universal Time
Location:
Seattle, Washington, USA
Speakers:
Michael Sperberg-McQueen

XML offers several advantages over competing formats for data interchange. XML vocabularies can be defined formally, using schema languages (DTDs, XSDL, Relax NG, ...), which in turn makes it possible to find large classes of errors by purely mechanical means. Software to consume valid XML data can be simpler and cheaper to write and maintain, because defensive programming is less necessary.

And XML's explicit start- and end-tags make it much easier to detect and ignore material not needed by a particular process. As new processes are added, new information can be added to an XML message format without disturbing existing software.

At least, that's the theory. In practice, combining validation and easy versioning of your XML vocabularies has proven hard.

This talk outlines some basic problems involved in versioning XML vocabularies and talks about ways to address them. Particular attention will be paid to several features of XML Schema 1.1 which make it easier to define XML vocabularies which can in fact be revised while preserving backwards and forwards compatibility: weakened wildcards, open content, not-in-schema wildcards, multiple substitution-group heads, extension of all-groups, default attribute groups, and conditional inclusion of elements in schema documents.