April 20, 2006
@ 05:15 PM

Joe Gregorio has a post about the Google Data APIs Protocol where he points out that Google has released the Google Data APIs Protocol which for all intents and purposes, is an Atom Store (i.e. an Atom Publishing Protocol service mixed with OpenSearch). I took a glance at the Google Data APIs overview documentation and it states the following

GData is a new protocol based on Atom 1.0 and RSS 2.0.

To acquire information from a service that supports GData, you send an HTTP GET request; the service returns results as an Atom or RSS feed.You can update data (where supported by a particular GData service) by sending an HTTP PUT request, an approach based on the Atom Publishing Protocol.

All sorts of services can provide GData feeds, from public services like blog feeds or news syndication feeds to personalized data like email or calendar events or task-list items. The RSS and Atom models are extensible, so each feed provider can define its own extensions and semantics as desired. A feed provider can provide read-only feeds (such as a search-results feed) or read/write feeds (such as a calendar application).

On the surface, this looks like it aims to solve the same problems that Ray Ozzie's Microsoft's Simple Sharing Extensions for RSS and OPML aims to solve as well. At first glance, I think I prefer it to RSS-SSE because it is explicitly about two-way interaction as well as one-way interaction. RSS-SSE provides a good solution if I am a client application synchronizing information from a master source such as my online calendaring application but it is still unclear to me how I use the mechanics of RSS-SSE to push my own updates to the server. Of course, RSS-SSE is better for pure synchronization but GData looks like it would be a better fit for a generic read/write API for data stores on the Web, the same way RSS has become a generic read API for data stores on the Web.

This definitely has Adam Bosworth  written all over it. About a year ago, it was obvious from certain posts on the atom-protocol mailing lists that Adam had some folks at Google working on using the Atom Publishing Protocol as a generic API for Web stores. I'm surprised it's taken this long for the project to make its way out of the Googleplex. This would be a good time to familiarize yourself with Adam's paper, Learning from THE WEB.

PS: 'Google Data APIs Protocol' is a horrible name. You can tell that ex-Microsoft employees had a hand in this effort. ;)