Title: W3C XML Schema WG Versioning and Extensibility of Schemas and Vocabularies
1W3C XML Schema WGVersioning and
ExtensibilityofSchemas and Vocabularies
- Noah Mendelsohn
- W3C XML Schema Workgroup
- June 22, 2005
2Overview
- XML should be the key to loose coupling
- Flexible document structure
- Reasonably self-describing
- Idioms for evolving languages, vocabularies and
schemas not agreed - Role of namespaces
- Extension vs. restriction
- Relationship to schema documents
- Providing better support for evolving
vocabularies is a main goal of Schema 1.1
3Some Resources
- Working Group Resources
- XML Schema Versioning Use Cases , ed. Hoylen Sue,
DSTC Pty Ltd. - Framework for discussion of versioning , ed.
Michael Sperberg-McQueen - An Approach for Evolving XML Vocabularies Using
XML Schema , Noah Mendelsohn - Recent minutes of the Versioning Task force
(Member-only link), with linked references to
earlier minutes. - External Resources
- Editorial Draft Versioning XML Languages
Proposed TAG Finding, ed. David Orchard and
Norman Walsh. - Web services or ! distributed objects?, David
Orchard, 12 January 2004. - Examining wildcards for versioning, David
Orchard, 8 January 2004. - Providing Compatible Schema Evolution, David
Orchard, 19 January 2004.
From http//www.w3.org/2005/05/xsd-versioning-res
ources.html
4Some Resources
Schema WG is collecting and analyzing Use Cases
- Working Group Resources
- XML Schema Versioning Use Cases , ed. Hoylen Sue,
DSTC Pty Ltd. - Framework for discussion of versioning , ed.
Michael Sperberg-McQueen - An Approach for Evolving XML Vocabularies Using
XML Schema , Noah Mendelsohn - Recent minutes of the Versioning Task force
(Member-only link), with linked references to
earlier minutes. - External Resources
- Editorial Draft Versioning XML Languages
Proposed TAG Finding, ed. David Orchard and
Norman Walsh. - Web services or ! distributed objects?, David
Orchard, 12 January 2004. - Examining wildcards for versioning, David
Orchard, 8 January 2004. - Providing Compatible Schema Evolution, David
Orchard, 19 January 2004.
From http//www.w3.org/2005/05/xsd-versioning-res
ources.html
5Some Resources
Collection of terminology and proposed mechanisms
- Working Group Resources
- XML Schema Versioning Use Cases , ed. Hoylen Sue,
DSTC Pty Ltd. - Framework for discussion of versioning , ed.
Michael Sperberg-McQueen - An Approach for Evolving XML Vocabularies Using
XML Schema , Noah Mendelsohn - Recent minutes of the Versioning Task force
(Member-only link), with linked references to
earlier minutes. - External Resources
- Editorial Draft Versioning XML Languages
Proposed TAG Finding, ed. David Orchard and
Norman Walsh. - Web services or ! distributed objects?, David
Orchard, 12 January 2004. - Examining wildcards for versioning, David
Orchard, 8 January 2004. - Providing Compatible Schema Evolution, David
Orchard, 19 January 2004.
From http//www.w3.org/2005/05/xsd-versioning-res
ources.html
6Some Resources
White paper by Noah includes general principles
and some mechanisms
- Working Group Resources
- XML Schema Versioning Use Cases , ed. Hoylen Sue,
DSTC Pty Ltd. - Framework for discussion of versioning , ed.
Michael Sperberg-McQueen - An Approach for Evolving XML Vocabularies Using
XML Schema , Noah Mendelsohn - Recent minutes of the Versioning Task force
(Member-only link), with linked references to
earlier minutes. - External Resources
- Editorial Draft Versioning XML Languages
Proposed TAG Finding, ed. David Orchard and
Norman Walsh. - Web services or ! distributed objects?, David
Orchard, 12 January 2004. - Examining wildcards for versioning, David
Orchard, 8 January 2004. - Providing Compatible Schema Evolution, David
Orchard, 19 January 2004.
From http//www.w3.org/2005/05/xsd-versioning-res
ources.html
7Some Resources
David Orchard is leading an analysis of XML
Versioning for the W3C Technical Architecture
Group (TAG)
- Working Group Resources
- XML Schema Versioning Use Cases , ed. Hoylen Sue,
DSTC Pty Ltd. - Framework for discussion of versioning , ed.
Michael Sperberg-McQueen - An Approach for Evolving XML Vocabularies Using
XML Schema , Noah Mendelsohn - Recent minutes of the Versioning Task force
(Member-only link), with linked references to
earlier minutes. - External Resources
- Editorial Draft Versioning XML Languages
Proposed TAG Finding, ed. David Orchard and
Norman Walsh. - Web services or ! distributed objects?, David
Orchard, 12 January 2004. - Examining wildcards for versioning, David
Orchard, 8 January 2004. - Providing Compatible Schema Evolution, David
Orchard, 19 January 2004.
From http//www.w3.org/2005/05/xsd-versioning-res
ources.html
8Some Principles
- Clean support for repeated revisions (gt20)
- Versioning SNA tied to namespaces
- Dont presume constructs in instance docs (e.g.
ltextensiongt) - Forward/backward compatibility SNA required
Breaking changes happen. - Check/enforce compatibility in tools
- Versions may or may not form sequence or tree
- Revisions SNA expressed as deltas (see I.)
SNA Sometimes Not Always
9Restriction vs. Extension
- Restriction base schema allows all future
content - Wildcards validate future content
- UPA allows apps to know which content matched WC
- Weak wildcards beat UPA problems
- New wildcard matches any elements I dont know
about in this schema - Extension
- Base schema validates only version 1 content
- New processing modes indicate to apps which
subset of received content would have validated
10Checking in Tools
- Allow tooling to check what content accepted by
S1 would be rejected by S2 - Allows tools to implement flexible policies for
users - Decouples schema versioning from schema document
packaging and namespaces (unless user wants to
couple) - Schema WG is building necessary technology for
simplified complex type restriction anyway.
More mechanisms in http//www.w3.org/XML/2004/02/
xsdv.html
11 Thank you!