Wednesday, 22 July 2009
SOAP. With the benefit of hindsight: the word was well-chosen, wasn't it?
Not even mature yet, it's already so overly complex and hard to understand -and still not complete enough, think of error handling- that it will die a silent death in the next years. Good riddance
We have SMTP for sending and receiving messages across the globe, what was wrong with that? It even relays messages, guarantees delivery or at least delivery notifications. It has a retry mechanism, it can send text and binaries and attachments, it can handle all kinds of encodings - need I go on?
What is it with reinventing the wheel that persists throughout IT? And why don't people just copy the things that work, when they want to copy an existing concept?
Look at the mailman: every mailman in the entire world is capable of delivering any letter sent from and to any place in the world. So, even before SMTP existed, there was a perfect, well thought-out, proven technology of sending and receiving messages on a global scale. Wow!
And yet, SOAP has been officially in existence since 9 years now, and its envelope doesn't have any required fields other than "A [local name] of Envelope" and "A [namespace name] of "http://www.w3.org/2003/05/soap-envelope".
Do you really expect being able to setup a global -or even local- delivery system with so little requirements? SOAP implementation throughout the world implies fierce discussions, bilateral agreements, and a lot of exceptions because there simply aren't enough usable rules. There are a lot of restrictions, sure. But not many rules that will actually help to do what it is meant to do: a lightweight protocol intended for exchanging structured information in a decentralized, distributed environment
So, let's just stop with SOAP. It's never going to work anyway.
It will end a lot of misunderstandings, discussions, and save an awful lot of time & money.
Just look around you: all a message needs to be able to be sent is a recipient, (a sender,) and a unique address in 4 stages: country; zip; street and number. In order to be able to trace or resend it, or send it back, all it needs are a unique identification and a datetimestamp
End the SOAP. Use your wit. Save (lots of) money, especially now