My buddy Joshua Allen has a blog post entitled Was WS-* a Failure? where he writes
Dare excerpts Yaron Goland, explaining how MSN uses POX instead of WS-* in many cases. It is very good to see MSFT employees no longer afraid to say that WS-* is sometimes not the right choice.
On the other hand, it's reasonable to say that WS-* met most of its objectives; and IMO has been a great success. Read this post from Miguel.
Miguel makes the point that Java is still vendor-proprietary, in
contrast to the way that .NET is ISO. IMO, one of the most important
goals of WS-* was to break the stranglehold that J2EE had on the
middleware/appserver market. Today, reading about Scott McNealy
stepping down amid Sun financial troubles, it is hard to remember how
dominant Sun used to be. But Sun is still very powerful in the
enterprise, and I imagine it would be game over by now (with Sun/Oracle
alliance being the clear winners) if Microsoft had not pushed WS-*.
WS-* leveled the playing field, and gave both Microsoft and IBM ability
to go head-to-head with Sun in app servers. Today, an Oracle/Microsoft
alliance seems more realistic than Oracle/Sun.
So perhaps WS-* was the critical factor that liberated the
Internet from a dark future of Sun/Java control, and enabled the new
era of POX/HTTP to flourish.
That's an interesting perspective which I think is worth sharing. I also want to correct what seems like a misconception about Yaron's post. I'm not aware of many teams at MSN Windows Live that have eschewed using the WS-* family of technologies (SOAP/WSDL/XSD/etc) for Plain Old XML over HTTP (POX). On my team, the distributed computing protocols we use are either SOAP or WebDAV. Most of the Windows Live teams whose back ends I'm familiar with also tend to use SOAP. The only upcoming change I can see for our team we have been flirting with the idea of using binary infosets instead of textual XML but still sticking with SOAP. I'm not sure whether we'll do it or not but that would be a compelling reason for taking the Windows Communications Foundation (aka Indigo) out for a spin. I see more dinners with Doug and Mike in my future.
On the other hand, the front end teams that actually build the web sites [as opposed to platform teams like mine] who use AJAX techniques seem to lean towards using JSON as opposed to XML. I guess that would make those services POJ not POX. :)
When I think about POX or RESTful Web services in the context of my day job, it is usually focused on the work we are doing for the Windows Live developer platform. I ask myself questions like "If we were to expose something equivalent to the Flickr API for MSN Spaces, what would be the best choice for developers?". For such questions, RESTful APIs seem like a no-brainer.