The attached document describes the methodology used by Digabit for versioning its web services. The publicly available web service operations and object definitions are accessed via a WSDL from the URLs provided in the attached document.
Maintaining backwards compatibility of web services is a known issue faced by all distributed systems. There is nothing explicit in web services architecture for versioning WSDL’s. Some installations use namespaces to differentiate operation and object changes; while others attempt to work around the problem of maintaining backwards compatibility by simply creating new operations with new objects, rather than changing any old operations and their respective objects.
Digabit, however, has chosen a different approach, and will use Versioned Service Names to differentiate between old, and therefore backwards compatible, api’s versus new api’s. Versioned Service Names can be accessed by simply changing the endpoint url that a client is pointing to. Of course, client code would have to be regenerated for the updated WSDL for the new endpoint too. But existing client code that points to old endpoints, and therefore old WSDL’s, will still work.
This Versioned Service Names approach will begin with the 2013.4.0 release of Documoto, expected in December 2013 or January 2014.
Download the attached document to view the rest of this article.