Definition of forward/backward compatibility (was: XML Schema Versioning Use Cases)

Bill,

Thank you for your comments.

The "XML Schema Versioning Use Cases document"
http://www.w3.org/XML/2005/xsd-versioning-use-cases/2006-01-31.html#p57
says:
>>"The term "backward compatiable[sic]" will mean that an
>>instance document defined by an old schema can be processed
>>by an application that handles the new schema."

Bill Wade says:
> What we need is a definition of compatibility that is expressed solely
> in terms of the instance documents and the schema themselves. How about
> these definitions?
>
> "A given version of a schema is backward compatible with a prior version
> of the same schema if any document created under the prior version of
> the schema is still valid under the later version, assuming all nodes in
> the instance document not present in the later version of the schema are
> ignored."

Two comments on this definition:

Firstly, validation is not the only purpose of XML Schemas.
This is why the definition does not rely on validity, but on
the mouthful "can be processed by an application that
handles the new schema".

Secondly, "assuming all nodes in the instance document
not present in the later version of the schema are ignored"
is defining a mechanism to achieve backward compatibility
rather than a definition of it.


However, I do like the suggestion that we claify what
exactly is classified as being "backward compatible" -- in
this case it is the schemas.  This is because in the XSD use
case, there will be schema processors, schemas, and instances.

The current definitions refers to "old schema" and "new
schema" -- characterizations which do not apply to some of
the versioning use cases.

Hoylen
-- 
____________________________________________________________
hoylen@hoylen.com                     http://www.hoylen.com/

Received on Saturday, 4 March 2006 08:13:07 UTC