
Kicking out the Cuckoo
by Edd DumbillApril 24, 2002
The genesis of web services technology began with Microsoft and, to a lesser extent, IBM; and the leadership of this movement lies still very much with these organizations. When SOAP first emerged, developers were distinctly wary of a Microsoft technology that seemed to want to own the Web. Microsoft, for its part, would clearly benefit from widespread acceptance of SOAP. Hence the move to the only other party in town at the time, the W3C, made enormous sense: Microsoft gets the stamp of "open standard" on its technology, and other companies get a forum in which to ensure they can have their turn steering the bandwagon.
Cut to the present. SOAP, as specified by Microsoft and IBM, is deployed widely, to the point where its proponents refer to the fact that it is part of "mission critical" systems. SOAP as per the W3C is still struggling. One and a half years on, the troubled and oversized XML Protocol Working Group is gearing up to release Last Call Working Drafts that stand a significant chance of being rejected by W3C members, thus facing delay.
Meanwhile, things start getting out of hand in the world of consortia. Encouraged no doubt by the success of UDDI -- not in producing useful technology, but in press-ganging companies into its membership -- the WS-I organization sprang into being. Spearheaded by Microsoft, IBM and BEA, the Web Services Interoperability Organization is in the business of promoting the interoperability of web services by "blessing" collections of specifications into profiles. At launch the WS-I avoided direct confrontation with the W3C by stressing a commitment to interoperability testing and creation of profiles. Of course, this makes complete sense. With over 100 member companies, the WS-I could not practically design new, competing, technology.
|
| |
The real effect of the WS-I is to remove the W3C's imprimatur of authority over web services. The necessarily slow process of achieving consensus in a W3C Working Group does not suit the business plans of Microsoft and the other WS-I corporations. We should not be surprised then that the model IBM and Microsoft pursued with SOAP is resurgent, and this time it won't have an open organization like the W3C to slow it down. Take a look at web service related specifications published by MS and IBM over the last six months: WS-Security, WS-Routing, WS-Inspection and WS-Referral. It doesn't take too much imagination to see the sympathetically-named WS-I blessing these specifications.
It is hard to see how the W3C can compete when the business case for Microsoft and IBM is so urgent that creating alternative consortia is easier than pursuing development through a working group. The burdens of the W3C are just too many: the W3C has a responsibility for relating its technologies to the entire web architecture, and a strong dislike among the majority of the membership for imposing royalties on patented technology. WS-I has neither of these constrictions.
Slippery SOAP
Let's establish why developers at large should care about the machinations of corporations and consortia over web services. Happily, the Internet is still largely a free place, technologically speaking, and we are free to use whichever new technique we want. But we must also be aware of the consequences.
Extrapolating from the emergence of the WS-* specifications, it would seem that SOAP is the thin end of a wedge, the fat end of which will turn Internet programming into a proprietary platform. As Paul Prescod demonstrates elsewhere in XML.com this week, SOAP adds nothing to what can already be done with existing, openly available, and unencumbered, web technology, but it does add more restrictions.
The restriction explains the popularity -- SOAP toolkits are undeniably easy to use and avoid the tricky issue of having to consider the whole Web when creating an Internet-distributed service. It is well-worn wisdom that removing features makes a technology more accessible: XML itself is an example.
Also in <taglines/> |
However, once steps have been taken down the SOAP road and commitments made, developers and vendors cut themselves off from existing benefits of the Web. For example, security and caching mechanisms must be reinvented. The solutions for many of these problems will come from the specifications being created by Microsoft and IBM, likely to be approved by the WS-I organization. It is not at all clear that these specifications will have the same degree of scrutiny that those developed at W3C or IETF endure, or that their creators will have the same attitude to intellectual property that allowed Web technology to blossom in the first place.
The ultimate end is that, for the majority of developers, programming over the Web will have become a matter of using Microsoft and IBM's platform, similar to the "Wintel" hegemony over personal computing. The leaders of the web services movement will then be free to add or remove features and break compatibility with the rest of the Web at will, as developers will then be beholden to the platform, and not have the liberty of the Web.
This is why the decision to pursue or reject the SOAP route is so critical, and why developers should be very careful. The choice is between open and established technology on which the Web is built, and the direction proposed by large corporations, whose existence depends on making money from their strategies.
The Cuckoo
It has become painfully obvious that accommodating the development of web services technology at the W3C makes little sense. Not only has SOAP's development been a distraction of attention and resources from developing parts of the Web and XML infrastructure, it thumbs its nose at the W3C's other work.
SOAP as commonly practiced offers nothing in the way of
compatibility with HTML, XSLT, RDF, XLink, or SVG. In addition, it is
responsible for the promotion of non-standard URNs
(e.g. urn:GoogleSearch), collapses all the resources of
an endpoint behind one URI, and uses HTTP in a way that most experts
think is highly inappropriate. The "web" in "web services" is
contemptible.
The W3C's attempts in January 2002 to respond to the larger need of web services by creating a Web Service Architecture group now look futile and redundant in the face of the WS-I, established one month later, which will essentially define web service architecture by blessing its component specifications.
There can be no doubt that the web service movement is the cuckoo in the W3C's nest. Sooner or later, one of the two will kick the other out.
Paranoid or justified? Does the Web really need web services? Share your opinions in our forum.
(* You must be a member of XML.com to use this feature.)
Comment on this Article
| Titles Only | Titles Only | Newest First |
- core issues
2002-05-13 17:13:39 bob woodley [Reply]
All these conspiracy theories about whether the WS-I is some dark entity out of Redmond are really tiresome.
However, the core architectural issues are interesting and deserve consideration when making technology plans. SOAP has forced us to think about how to architect web services and just what a web service is. I'm not sure we would have understood REST so well if SOAP had not come into existence.
But ultimately SOAP is a pragmatic solution, though it may be flawed from a purist point of view.
The fact is, SOAP is very convenient for those cases where you want to attach an object-oriented API to an existing web site. Which is just what Google was doing, n'est-ce pas?
SOAP is a useful tool for real-world problems encountered every day. Though it is certainly not as elegant or simple as the REST model, it is useful and well-supported.
Bob Woodley
- Corporation vs. Unions, Israel vs. Palestine, WS-I vs. W3C
2002-05-10 03:45:02 Pierre Johnson [Reply]
The WS-I vs. W3C war resembles any given war between a corporation and a union leadership, between two countries of questionable sovereignty, or between two standards bodies. Any given entity within such wars make claims using righteous indignation rhetoric as to their preeminent authority of existence and their appropriateness of methods employed that ensure their existence.
When a third party entity elects to ally with an entity of these wars, they do so because that third party possesses an agenda. More than likely, the adherence to any given agenda arises from monetary considerations.
Like most wars, one needs to understand the concept of property rights. If any third party believes that the Internet is an internetworking of privately owned networks of computers, then that third party would not ally with either entity of this war. A third party who chooses a side commits an error of logic.
Clearly, the derivation of all Internet standards belongs within the public domain. After all, the publishing of a specification does not equate to establishing a standard. The publishing of a specification is nothing more than a dictatorial decree, regardless of the qualifications of the entity that undertakes such an action.
What constitutes a transmutation from a dictatorial decree into a standard is an overwhelming adoption, i.e., formal use of the decree. With respect to the Internet and specifically those protocols associated with the WWW, conversion of a decree into a standard occurs because of adoption and formal use by the public at large.
The time has come for the development of all technological standards to rest solely within the actions of individuals who constitute the public domain. Obviously, the open source model of software development is the model under which any Internet protocol idea can arise and develop into a standard.
A critical mass of technologically adept individuals exists for such purposes and the infrastructure to facilitate such activities exists. After all, individuals who work for corporations or who work for non-governmental organizations can exist independently of these organizations and work along side other like minded individuals to create the Internet and WWW standards of tomorrow, today.
An open source model of standards development holds in check the prurient interests of corporations, non-governmental organizations and their respective constituents. Moreover, an open source model of standards creation embodies the essence of a decentralized WWW existing without any central authority of control dictating terms of existence.
An open source model of standards development would remove the competitive advantage that substantial dues paying, elitist members of the W3C possess deriving from their advanced knowledge of a specification and its final implementation. Here too, an open source model of standards develop negates any competitive advantage that a gang of thieving corporations have over the majority of people who use the Internet and WWW and whose labor and expenditures provide for a lavish lifestyle of the leaders of either of these entities.
- SOAP vs. REST resource page
2002-05-05 23:14:45 Nasseam Elkarra [Reply]
I've started a SOAP vs. REST resource page located below:
http://www.myspotter.net/links.html
- Web Services and Semantic Web
2002-05-01 07:19:05 David Steinberg [Reply]
If the W3C can insure a maximum integration of Web Service and semantic Web architecture it will fully justify the effort put in.
Perhaps Topic Mapping might have a role here.
David Steinberg
ottawa Canada
from
Web Service Description Requirements - W3C Working Draft 29 April 2002 section 4 requirements
4.12 Mapping to the Semantic Web
R070
The WG specification(s) MUST allow providing a mapping from the description language to [RDF]. (From the Charter. Last revised 11 April, 2002.)
R120
[Draft] The description language SHOULD ensure that all conceptual elements in the description of Messages are addressable by a URI reference [RFC2396]. (From the Semantic Web. Added 11 April, 2002. Awaiting clarification from RDF.)
- Web Services and Semantic Web
2002-05-01 10:58:44 Mark Baker [Reply]
Yah, that was my contribution you quoted there. 8-)
Unfortunately, it's not as simple as that. Web Services and the Semantic Web are two ways of addressing basically the same problem; machine automation. But only one reuses Web architecture/REST.
- Web Services and Semantic Web
2002-05-02 06:10:12 David Steinberg [Reply]
I wonder if Roy Fielding would agree with your radical dualism.
see
"In order for SOAP-ng to succeed as a Web protocol, it needs to start
behaving like it is part of the Web. That means, among other things,
that it should stop trying to encapsulate all sorts of actions under
an object-specific interface. It needs to limit its object-specific
behavior to those situations in which object-specific behavior is
actually desirable. If it does not do so, then it is not using URI
as the basis for resource identification, and therefore it is
no more part of the Web than SMTP."
http://lists.w3.org/Archives/Public/www-tag/2002Apr/0181.html
David Steinberg
- Web Services and Semantic Web
2002-05-03 05:09:49 Mark Baker [Reply]
Yes, thanks. I've been the principle supporter of REST principles within the XML Protocol WG. SOAP 1.2 is REST compatible in large part because of my contributions.
Too bad people don't use it that way.
MB
- Web Services and Semantic Web
- Web Services and Semantic Web
2002-05-01 11:35:39 Mark Baker [Reply]
"Yah, that was my contribution you quoted there. 8-)"
Mea culpa, no it wasn't. Mine was for the WSAWG.
- Web Services and Semantic Web
- Web Services and Semantic Web
- Justified
2002-04-26 12:12:48 Kedar Sadekar [Reply]
Great article - provides a lot of insight into the intent of companies like Microsoft.
Though it seems like the W3C will lose out in the race for developing web-services standards, the WS-I should not be allowed to monopolize the market.
- Justified
2002-05-14 05:26:16 j ogden [Reply]
Great Insight? Not from where I stand. A bunch of guesses, half-truths and a touch of calumny, all in defence of "freedom." - for everyone except Microsoft and IBM, because they are, after all, the evil empire. (Although they are permitted to advertise here. <grin>)
Insight would come from facts - dates, names, places, not innuendo.
- Justified
- Does the Web go beyond serving browser clients?
2002-04-25 14:38:11 Anne Manes [Reply]
Edd is correct that SOAP has very little to do with HTML, XHTML, WML, or SVG, but then SOAP has very little to do with supporting browser-based clients. SOAP is focused on enabling application-to-application communication over open Internet technologies. Does this constitute a "true business" of the Web? Some folks at W3C obviously thought so 18 months ago when they chartered the XML Protocol working group. But a rising faction now seems to think that it no longer belongs at W3C. They are claiming that Web services don't conform to the Web services architecture.
This crux of the argument at the W3C is over the way SOAP uses HTTP. SOAP uses HTTP simply as a transport protocol rather than as an application protocol. But is this type of HTTP abuse really "harmful" to the operation of the Internet? (Most CGI scripts are guilty of the same abuse of HTTP POST application semantics.)
SOAP is an XML application. It makes extensive use of XML, Namespaces in XML, and XML Schema. It is often used with XSLT, XPath, XLink, XML Encryption, XML Signature, and other XML technologies. And a number of people have demonstrated using SOAP and RDF together. So there is at least some potential justification to performing Web services standardization work at W3C.
WS-I isn't a standards organization. WS-I is only concerned with advancing interoperability between vendor implementations. All of WS-I's work products are dependent on the specifications being developed by the standards communities.
I don't particularly care where SOAP and WSDL get standardized, as long as we have a reasonable venue to improve the specifications. Eighteen months ago, W3C wanted to take responsibility for this task, but now there appears to be a fair amount of discontent with that decision. Perhaps it might be more appropriate to move the work to an organization such as OASIS, which specializes in standardizing XML applications.
I think it would be better for all involved if the work is performed at an organization that isn't trying to undermine the Web services architecture (which, to be clear, is not the same as the Web architecture as defined by Roy Fielding.)
- Does the Web go beyond serving browser clients?
2002-04-27 20:48:43 Mark Baker [Reply]
"But is this type of HTTP abuse really "harmful" to the operation of the Internet?"
Not to the Internet, but it is harmful to the Web, because POST can't be trusted to mean POST. With POST, the server gets to decide the function that is performed, not the client. That's why it gets through firewalls. Putting a method name in the POST body changes that.
Think of it like drag-and-drop. When you drop a file on the trash folder, you don't also have to specify the method to be invoked.
"(Most CGI scripts are guilty of the same abuse of HTTP POST application semantics.)"
No they're not actually. The vast majority just accept content POSTed to them from a form, which almost always uses POST to mean POST.
BTW, to respond to your subject line, yes the Web goes beyond browsers. It's for any HTTP client. Google isn't a browser is it?
MB
- Does the Web go beyond serving browser clients?
