I wander over to some of the other Web services sites once in awhile and see what they are saying. At IBM’s site I saw this article. It has a lot of similarities to my article, and has some good info in it (I like mine better but I’m probably biased :-)), but what kind of bothers me about it is that the tone of the article faults the .NET Framework for not supporting SOAP with Attachments (SwA). The article goes on to rake our DIME attachments support over the coals, and chiding us over the fact that
The DIME note in W3C expired at the end of 2002, so there is no official specification for what is called DIME. Without an official specification, it is unlikely anyone other than Microsoft will continue to support this protocol.
I am happy to say that the authors are perfectly correct on this one…no one is going to build a DIME implementation at this time. What I’m not happy about is that there is no mention in the SwA section that SwA is in exactly the same state with one minor exception. SwA is a “W3C Note” (W3C Note means “someone gave the W3C something” and that is it–no endorsement is implied whatsoever). The exception is that it simply hasn’t been removed from their Web site yet. I don’t know what their policies are for removing documents from their site, but it is old and stale so for all I know it could disappear any day now. The SOAP 1.2 Attachment Feature is a “W3C Working Group Note”, which is as close to “official SwA” as anything. But it specifically states that it “has been superceded.” However nothing in the article says that SwA is a dead spec…it just implies Microsoft is bad for not supporting it.
Of course this brings up the question of the WS-I Attachments Profile. Profiles are basically things that take a spec and limits it or combines it with other specs in order to constrain the definition enough so that profile compliant implementations will have a better chance of interoperating. The profile idea is not a bad thing (better initial specs would be better, but what are you going to do — Wait! Here’s an answer). What is not a good thing is creating a profile about a W3C Note that has been superceded.
And just in case you are wondering what superceded the SOAP 1.2 Attachment Feature, it is MTOM. MTOM! MTOM! MTOM! Doesn’t it just roll off your tongue? MTOM! (I pronounce it “emtom”). What is the status of MTOM? It is a “W3C Candidate Recommendation” which means they are crossing the t’s and dotting the i’s just before they declare it a “W3C Recommendation” which is the end result of an approved spec in W3C terms. And since it has been at CR (Candidate Recommendation) status for a bit, I’m willing to bet we’ll see the news of its final Recommendation status any day now. Basically it is about 1000 miles past where SwA or DIME ever got. Any implementations of MTOM around? Not in shipping software that I know of, but we should see some in the next few months. In the mean time, both the article on the IBM site linked above and my article (also linked above) provide some alternatives to hold you over until MTOM implementations arrive.