« Web services = or != distributed objects? | Main | Japan and Korea Pictures »

Providing Compatible Schema Evolution

I've finally published the opus on what can and could be done to provide compatible evolution of Schemas. It lists all the ways people can do extensibility and versioning now, such as wildcards (##other, ##any, ##targetnamespace), Extension Elements, and Type Extension. And then it goes into a number of things, including potential changes to Schema, that could be done to better meet the requirements for loosely coupled Web components. I argue in Web Service = or != Distributed Objects that Schema authors tend to make tightly coupled Web services because they can't fully version or evolve them. I proposed one simple schema design with related rules in Versioning XML Languages, but I didn't have time to do justice to all the current and possible techniques. That deficiency I consider rectified.

I've also made a collection of links to mine and others (notably David Bau) writings on extensibility and compatibility in my compatibility index page. You can see the relationship amongst the writings on the importance of loose coupling, how extensibility and versioning enable it, what you can and can't do with XML schema today.

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)

About

This page contains a single entry from the blog posted on January 19, 2004 5:48 PM.

The previous post in this blog was Web services = or != distributed objects?.

The next post in this blog is Japan and Korea Pictures.

Many more can be found on the main index page or by looking through the archives.

Powered by
Movable Type 3.34