Ken Brubaker

The ClavèCoder

<October 2008>
SuMoTuWeThFrSa
2829301234
567891011
12131415161718
19202122232425
2627282930311
2345678


Navigation

Subscriptions

News

Kenneth Brubaker
Senior Application Architect

Locations of visitors to this page

Post Categories



XML Schema Design: Desiging extensible, versionable XML vocabularies

Dare shares gudelines on how to design extensible, versionable XML vocabularies.

The outline is:

Message Transfer Negotiation vs. Versioning Message Payloads

Version Numbers vs. Namespace Names

The Difference Between Versioning and Extensibility

Guidelines for Designing Extensible XML Formats

  • XML formats should be designed to be extensible.
  • Extensions must not use the namespace of the XML format.
  • All XML elements in the format should allow any extension attributes, and elements with complex content should allow for extension elements as children.
  • Formats that support extensibility must specify a processing model for dealing with extensions.

Why XML Formats Should Be Designed to Be Extensible

Why Extensions Mustn't Use the Namespace of the XML Format

Using XML Schema to Design an Extensible XML Format

Guidelines for Designing Versionable XML Formats

  • If the next version of a format is backward compatible with previous versions, then the old namespace name must be used in conjunction with XML's extensibility model.
  • A new namespace name must be used when backward compatibility is not permitted. That is, software must break if it does not understand the new language components.
  • Formats should specify a mustUnderstand model for dealing with backward incompatible changes to the format that don't change the namespace name.

Using XML Schema to Design a Versionable XML Format

posted on Friday, July 30, 2004 8:49 AM by kenbrubaker





Powered by Dot Net Junkies, by Telligent Systems