Clearly Doug hasn’t been following along on the home game version of “Tech Curmudgeon”! 8-) He writes;

Mark Baker has thrown up his hands in frustration over the work of WS-Arch. “The sun will set on Web services, as it has on every other attempt to deploy object-specific interfaces on the Internet.” Object-specific, Mark?

Right, object-specific, in contrast to object-generic. That is, rather than each identifiable thing in the system (service/object/resource/whatever) having an interface specific to its offered functionality, all things have the same interface. I talk a lot about REST’s uniform interface here; that’s one example of an object-generic interface. JavaSpaces is another one.

Or perhaps I didn’t understand his question.

I’ve always considered WS-Routing to be one of the few shining stars of the WS-* spec family. Conversely, I’ve said before that I consider WS-Addressing to be perhaps the biggest waste of time yet developed. So imagine my surprise when Edwin notes this passage from Microsoft’s WSE 2.0;

One of the changes between WSE 1.0 and WSE 2.0 is the support for WS-Addressing. WS-Addressing largely replaces the capabilities of the WS-Routing specification that was supported in WSE 1.0. Instead of focusing on routing paths, WS-Addressing functionally provides a mechanism for adding To and From headers to a SOAP envelope.

WS-Routing uses URIs for endpoint and intermediary identification, whereas WS-Addressing exists because apparently URIs were considered deficient as identifiers. If you buy WS-Addressing’s premise (I don’t, surprise), this makes sense, sort of. But then you’re missing the value-add of WS-Routing and its support for SOAP intermediaries. The WSE 2.0 use of WS-Addressing defines a much less general routing infrastructure, premised upon only ever using gateways (where messages must terminate) rather than both gateways and proxies as WS-Routing supports.