posted on Monday, March 12, 2007 6:42 PM
by
Jonathan Hodgson
SOAP: S is for Simple
Great post by Pete Lacey on SOAP being simple before WS-*.
Developer: So, my boss was playing golf this weekend, and now I have to—quote, unquote—SOAP-enable the enterprise, but I don’t know what SOAP is. Can you help, SOAP Guy?
SOAP Guy: Sure thing. First, SOAP stands for Simple Object Access Protocol.
Dev: So it’s simple?
SG: Simple as Sunday, my friend.
Dev: Okay, lay it on me.
SG: Well, just like it says in the name, SOAP is used for accessing remote objects.
Dev: Like CORBA?
SG: Exactly like CORBA, only simpler. Instead of some complex transport protocol that no one will let traverse a firewall, we use HTTP. And instead of some binary message format we use XML.
Dev: I’m intrigued. Show me how it works.
SG: Sure thing. First there’s the SOAP envelope. It’s pretty simple. It’s just an XML document consisting of a header and a body. And in the body you make your RPC call.
... story continues ...
SG: Oh, there is no spec. This is just what Microsoft seems to be doing. Looked like a good idea, so now all the cool kids are doing it. However, there is this new thing. I think you’re gonna like it. It’s called the Web Services Interoperability Group, or the WS-I. What they’re doing is trying to remove a lot of the ambiguity in the SOAP and WSDL specs. I know how you like specs.
Dev: So, in other words, the specs were so bad you need a standards body to standardize the standards. Lord. Well, will this solve my interoperability problems?
SG: Oh, yeah. So long as you use a WS-I compliant SOAP stack, avoid using 8/10ths of XML Schema, don’t use any unusual data types, and don’t count on working with WebSphere and Apache Axis.
Dev: And is wrapped-doc/lit explained in there?
SG: Ermm, no. But that’s okay, you’re tools understand it. Most of them, anyway.
Dev: Let me sum up. The definition of SOAP is in constant flux, SOAP is anything but simple, and it is no longer meant for accessing objects-even though that’s what all the tools still do.
SG: That’s about right, but we’re way ahead of you on this. We’ve deprecated the meaning of the SOAP acronym.
Dev: Really! What does it stand for now?
SG: Nothing.
Dev: (blink)
SG: Let me tell you about UDDI.
Superb but unfortunately true - Tool support and WCF to the rescue (or at least help a bit!)