I’ve heard a lot of talk lately about using the Atom protocol for something other than a better RSS feed, like using it as a messaging protocol. For instance, I was reading this excellent article on using REST to design a workflow on Infoq.com where they use the Atom format to describe and interact with a work queue. The example was that a order fulfilment worker would the server and would get back an Atom feed of what jobs needed to be fulfilled. Other, like James Strachan, had talked about using atom as well.
For me, the value of Atom haven’t really clicked with me yet. Its just too SOAPy for me. If you look at ATOM, the ATOM protocol, and how people are talking about using it, they’re really using it as an envelope. One of the things that attracted me to REST was that I could focus on the problem at hand and ignore bulky middleware protocols (like SOAP) and lean on HTTP as a rich application protocol.
For example, if you want to get a list of messaging, why not just multipart/mixed? Its a very simple format. Its easy to parse. You can assign specify headers to each body and use well-known headers like Content-Location if you want to replace actual content with a link. Its all much more compact. Better yet, why not just send back a comma-delimited list of URLs.
Maybe I just haven’t seen the light yet. It took me months to accept REST as a viable way of doing things. Maybe I just need somebody to yell at me about ATOM.
Payload Formats at subbu.org
Oct 06, 2008 @ 22:01:56
Oct 06, 2008 @ 22:02:16
Overreaching with atompub does seem to be a problem – that infoq thread was a good example of that. AtomPub was designed for publishing – so wherever the publish metaphore applies (you have some content, and some meta data that goes with it – and you want to publish it !) I think atompub + REST is a winner. But its all to easy to overgeneralise and treat atompub as a meta data wrapper for SOAP like services.
Location vs. Content-Location at subbu.org
Oct 07, 2008 @ 03:12:18
Oct 08, 2008 @ 16:17:58
Yes, I agree with Mic. The best examples of using AtomPub fit into the pub/sub usage as far as I’m concerned. But it’d be very easy to use AtomPub as a “transport” in the same way SOAP uses HTTP and then you’re in a completely different world (of pain).
Jan 23, 2009 @ 15:48:44
Hey Bill, I had similar misgivings, but the bottom line is *it ain’t RPC*.
For passing HTML-ish content around, with rich metadata in the same document, I believe Atom format does the trick. By extension, the atompub protocol works (and avoided the problems of webdav thanks to Fielding’s input). I do have doubts about the way collections are defined, but then I’m an RDF head so what do I know.
BigSmoke » Atom and REST
Nov 03, 2009 @ 17:23:23