DPWS v1.1 update

It's been a while since I last provided an update on the standardization of DPWS, WS-Discovery, and SOAP-over-UDP.  I'm pleased to say that the standardization committee has produced Committee Specification versions of these three specs--that doesn't mean that they're standards, but the committee has finished with these versions and has sent them to the greater OASIS community for an approval vote.  The TC has a more detailed announcement.

Even though these aren't approved standards, we can still compare the technical details of DPWS v1.0 (the version originally supported in Vista) to the latest revision of DPWS v1.1 to see what has changed.

  • Namspaces:   First and foremost, DPWS v1.1 (and WS-Discovery v1.1) have new namespaces.  This means that the two protocols are not inherently compatible--instead, individual implementers may choose whether they will support v1.0, v1.1, or both.  In my opinion, the lack of backward compatibility built into the specification is actually a good thing: it keeps the specs isolated and individually very simple, and does not burden future specs written on DPWS v1.1 with a requirement to support the pre-standard versions of the specs.
  • References: The v1.1 revisions now reference the latest available standards, particularly WS-Policy v1.5 and WS-Addressing v1.0.  Note that references to WS-Transfer, WS-MetadataExchange, and WS-Eventing have not yet been updated as those specifications are still being standardized in the W3C WS-RA WG.
  • Security:   DPWS v1.1 features a heavily reorganized security section which is simpler, easier to understand from an implementation perspective, and better organized.  I'm personally very pleased with this change, as it makes DPWS security even more accessible.
  • Numerous smaller changes: I can't really do justice to the many other meaningful changes made to improved the quality of the specifications.  Across all three specs, we resolved 141 issues ranging from a few editorial updates to dramatic improvements in specific parts of the text.

I also want to call out one big change to WS-Discovery:

  • WS-Discovery Managed Mode:   WS-Discovery v1.1 now clearly separates two functional modes: ad-hoc, where discovery occurs among peers; and managed, where discovery occurs by means of a discovery proxy.  WS-Discovery v1.0 hinted at how this would work but v1.1 is much clearer about how clients and services can contact a proxy.

Now, there are many changes I'm lumping into that category of "numerous smaller changes" which could each be broken out into their own articles--but the items I've listed above are the ones I'm most excited about.  In the future I expect to dive into these (particularly security) in much greater detail.

Stay tuned for additional updates as the OASIS member vote on these specs gets underway.