- From: Pete Cordell <petexmldev@codalogic.com>
- Date: Fri, 11 Jul 2008 16:23:12 +0100
- To: "Dragon Fly" <dragon-fly999@hotmail.com>, <xmlschema-dev@w3.org>
You can design your XSD schema so that it accommodates versioning. This is
mainly done using xs:any, but, especially in XSD 1.0, there are gotchas
involved in this. There's a good article on this at:
http://www.xml.com/pub/a/2004/10/27/extend.html
The story for XSD 1.1 should hopefully be a lot better.
One thing such versioning strategies miss is the ability to declare that
certain version 2 concepts are required to be understood by a parser,
otherwise the message should be rejected in some way. This procedure has to
be defined when version 1 is specified. The method I like best is using an
attribute called something like "Requires" in the top level element which
contains a number of tokens that the receiving parser must understand in
order to fully understand the message. This to me keeps all the
compatibility assessment in one place and allows for an easy go/no go
decision quite early.
Just as an example, it might look like:
<MySchema Requires="foo bar">...
That's said, your versioning strategy does depend on things like whether you
have one way or two way communication, or there's an archival aspect to it
etc.
HTH,
Pete Cordell
Codalogic
For XML C++ data binding visit http://www.codalogic.com/lmx/
----- Original Message -----
From: "Dragon Fly" <dragon-fly999@hotmail.com>
To: <xmlschema-dev@w3.org>
Sent: Friday, July 11, 2008 3:24 PM
Subject: XSD versioning ...
What is the best way to handle XSD versioning? Let's say I have the
following scenario ...
- Version 1 of the XSD is given to a customer.
- The customer writes a parsing program (that performs validation against
V1).
3 months later ...
- A new element is added to version 2 of the XSD.
- The new XML files sent to the customer have the new element.
- The new XML files fail validations because version 1 of the XSD does not
have the new element.
Is there anything that I can do to plan for this? Thank you.
_________________________________________________________________
It’s a talkathon – but it’s not just talk.
http://www.imtalkathon.com/?source=EML_WLH_Talkathon_JustTalk
Received on Friday, 11 July 2008 15:24:01 UTC