subbu.org

Some More Thoughts on Schema Versioning

without comments

Having spoken to a few folks at work on this topic, I would like to make a few more comments on versioning. See this and this for some background.


Versioning is not just about publishing versioned schema documents some place, or using versioned identifiers, or storing versioned schemas in some repository/database. All these may help, but do not solve real problems. The real problems are (a) dealing with compatibility, and (b) writing software that can process versioned documents. These are much harder to solve.

Secondly, we can use a variety of approaches to transform documents conforming to previous versions of the schema to the latest version of the schema. However, there is a danger of making incompatible changes in the schemas, and using transformations to deal with those incompatible changes. It is technically possible to do this, but may turn out to be risky if the changes are complex. Moreover, such transformations will have to done by all parties using the schema. So, the more widely used the schema is, the harder it becomes to deal with incompatible changes. So, I consider making incompatible changes a strict no.

Thirdly, web service APIs and toolkits don’t seem to address the versioning problem. The latest JAX-RPC 2.0 public draft does mention versioning as one of the goals, but does not yet say how it intends to facilitate versioning. None of the SOAP toolkits that I’m familiar with allow any kind of transformation at message parsing time.

  • Digg
  • del.icio.us
  • Google

March 31st, 2005 at 10:59 am

Tagged with

RSS feed

Comments »

No comments yet.

Name (required)
E-mail (required - never shown publicly)
URI
Your Comment (smaller size | larger size)
You may use <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> in your comment.

Trackback responses to this post