Best practices for Web services versioning

Best practices for Web services versioning.

Keep your Web services current with WSDL and UDDI

The correct handling of API versioning has been one of the most difficult issues faced by developers of distributed systems. Various schemes have been proposed, ranging from the laissez faire approach taken by CORBA to the stricter schemes used in DCOM. With the advent of Web services, there are some new features that you can take advantage of that can help alleviate the problem, but the brutal fact of the matter is that versioning has not been built into the Web services architecture. Current products from IBM and other vendors do not directly address the versioning issue, requiring developers to solve the problem through the application of patterns and best practices.

Understanding the Web services API versioning problem is easy. Imagine that we have a simple WSDL document that contains a WSDL operation defined using the fragment in Listing 1. (This operation is derived from an example in the WSDL specification — see Resources.)



Figure 1. Associating WSDL with a service
Associating WSDL with a service