0xDECAFBAD

It's all spinning wheels and self-doubt until the first pot of coffee.

Use Atom for a Universal Blog Transfer Protocol

One of the options in Tinderbox is to download your most recent posts from your current MT/Radio/Blogger blog into a Tinderbox document, which in turn could be easily turned into a Tinderbox weblog.

Could XML-RPC and RSS some kind of universal blog transfer protocol to move sites from one blogging tool to another? It seems to me that RSS should/could have most of the information needed to translate one file format to another.

Hmm - I was going to drop a note in comments on the above entry, but I see that they're disabled. So... I'm off to post a trackback from my own blog!

You could use some mashup of RSS and XML-RPC for this, but I'd suggest using Atom. It's a data model and an API, where the data model represents blog content quite well and the API complements it for the purposes of shuffling things around. With a mix of XML-RPC and RSS, I could only imagine lots of fiddling going on to transliterate between RSS and metaWeblog API structs or whatnot.

Practically speaking, it seems to me that it'd be pretty trivial to build a little conduit between Atom Enabled blogs. Make a request to blog #1 for entries, then turn around and take the data returned by that request and post directly to blog #2. I imagine there'd be just a tad more to do than that, such as splitting up the list of entries and posting each individually. But since it's all Atom for input and output, there's not much massaging of the data that needs to go on along the way.

If I get a few round tuits, maybe I'll take a stab at whipping up a sort of Atom-to-Atom-Copy command as an example.

(And, as an aside, I'd love it if Tinderbox supported the Atom API--especially since I'm hearing noises toward wikis supporting the Atom API!)

Archived Comments

  • I wrote a script to export an MT weblog to an Atom feed, but the new reality of web hosting servers killing "runaway" processes makes it a terrible pain for large archives. It has to export X entries, then have the browser make a new request to push the next X. The script exports in text chunks, so that's okay, but I couldn't figure how to parse an XML document in parts similarly. I was planning to use that to transport my weblog from MT 2 to MT 3, but I ended up writing the sqlite schema upgrade code instead.
  • Yes! This is what I've been trying to say. Use RSS as a simple syndication feed, but Atom when you need a rich data model and API. Having drop-dead-simple Atom import/export in MT (and all blogging tools) should reduce any fears of lock-in.
  • Tinderbox will support the Atom API, once it's actually an API. There's still a lot of uncertainty what the real atom API will look like, either on paper or as implemented in deployed systems. For now, Metaweblog and Blogger API should work with most of the tools you want to work with...
  • Mark: Fair enough - I can respect you not wanting to track a moving target of an API. So far I like the direction it has been taking, though. Oh, and thanks again for Tinderbox!