Additional Blogs by SAP
cancel
Showing results for 
Search instead for 
Did you mean: 
kevinliu
Product and Topic Expert
Product and Topic Expert
0 Kudos
Building web services that can easily evolve without breaking existing users is a key characteristic of a loosly coupled web services system. The issues of backward and forward compatibility and versioning strategy have been brought up now and then in various standards working groups. The discussion is still going on , and have seen some thoughtful suggestions published on the web.
To understand the current thoughts of the standard community on this issue, here are a few useful blogs and articles you don't want to miss:

[1] Extensibility, XML Vocabularies, and XML Schema, by David Orchard
URL: http://www.xml.com/lpt/a/2004/10/27/extend.html
David did a good job defining what's backward and forward compatibility. In addition, the article provides a few very good advise about how to use extensibility to accomodate compatible changes, and how to use various version identification strategies.

To complement this article, you should also read [1.1]Designing Extensible, Versionable XML Formats By Dare Obasanjo [1.2]2 XML.com articles on XML Extensibility and Versioning, David's blog explaining the common points and differences between [1] and [1.1]

[2] Loose coupling and WSDL versioning, a blog by Chris Ferris
URL: http://webpages.charter.net/chrisfer/2004/11/loose-coupling-and-wsdl-versioning.html
Does any change to a WSDL has to result in a new WSDL namespace? In this blog, Chris shows two ways to avoid that
  • Use XSD extensibility for the message to be exchanged, or
  • Use WSDL extensibility for adding new operations
[3] Versioning Service Data using WSDL Application Data Feature, a blog by David Orchard
URL: http://www.pacificspirit.com/blog/2004/12/01/versioning_service_data_using_wsdl_application_data_fea...
If you don't have a chance to design your schema as suggested by [1] and [2], you may want to check out the WSDL2.0 AD feature.
3 Comments