Why Google is extending RSS

Jeff Jarvis picked up on my post the other day about GData, Is GData knocking down Google's walled gardens, or enabling a new kind of portal? Google's new syndication protocol which is an extension of both RSS and Atom.

Jeff Jarvis picked up on my post the other day about GData, Is GData knocking down Google's walled gardens, or enabling a new kind of portal? Google's new syndication protocol which is an extension of both RSS and Atom. Like most people, Jeff isn't sure what this means - and neither is Dave Winer. I'm in the same boat, but what I do know is that Google has taken a sudden interest in extending RSS and Atom. Check out this Google Base documentation, for RSS 2.0 and for all syndication formats. This is all about enabling bulk upload of items into Google Base, which you'll recall is Google's potential giant database of structured data on the Web. Google is obviously eyeing RSS (or syndication in general) as a means of getting people to upload data to Google Base. Here's how they've extended RSS 2.0 for example:

"To facilitate the addition of more detailed information we extended RSS 2.0 by creating a module defined in a Google Base namespace. The namespace defines a list of attributes that can be used to increase the amount of information provided for an item in a bulk upload. [...] The two major changes in this example are the addition of the namespace declaration (near the top) and the inclusion of five new attributes at item level -- image_link, expiration_date, job_function, location, and label. The namespace declaration is required in order to use attributes defined in the Google Base namespace."

So they've added a Google Base namespace and 5 new attributes - this is a common and recommended way to extend RSS 2.0. Google also allows people to create their own customized attributes:

"The Google Base Provider module can be used to create your own customized attributes. The custom attributes you define can be used in addition to the attributes we have defined in the Google Base namespace."

This all seems common sense and nothing for RSS or Atom advocates to get overly excited about - after all, Google is using their existing protocols in the way they intended. So why then did Google feel the need to create a new protocol, called GData? Already I'm sensing some unease in the RSS and Atom camps about it.

Danny Ayers left a good (if a little technical for the average punter) comment on Jeff Jarvis' post which attempts to explain what GData is:

"In the past syndication with RSS has been a generally one-way thing: you can read a feed directly over HTTP, but if you want to post to a blog or whatever you had to use completely different formats/protocols (Blogger API, Metaweblog API). The Atom Publishing Protocol (APP) provides a way of sending information that is entirely consistent with the way you receive information, using simple HTTP methods, and following general best practices.

GData is essentially a store which supports APP plus OpenSearch (the fact that they were able to incorporate OpenSearch in a straightforward fashion is a reflection of how APP uses XML to good advantage compared to the inflexible XML-RPC APIs)."
(emphasis mine)

So Danny's view is that GData is an extension of Atom's publishing protocol. It also supports OpenSearch, which is Amazon's open RSS/Atom-based format for sharing search results. Danny pointed to Joe Gregorio's comments on GData, which digs a little more into the technical aspects of GData.

As for what GData means, it's still unclear to most. I'm looking forward to seeing what Dave Winer thinks of it, plus Atom's leaders like Sam Ruby. In the meantime, Maurice Codik is optimistic about GData's uses:

"In the past, Google has taken a lot of flak for being a walled garden: the data that users put on a Google app, is only accessible thourgh that application (Google Base is the most famous example of this). GData changes the situation completely: it provides a framework for Google to easily and consistently create APIs for all of their applications. Put simply, GData means that the walled garden of Google's applications is coming to an end. I'm really excited to see what will come out of this."
(emphasis mine)

Mark McLaren also has an interesting theory, close to my own feelings on the matter:

"This all sounds a bit like the beginnings of a Google powered enterprise portal to me. Integration of Google's own applications is already starting to happen, little chunks of Google Calendar are starting to surface inside Gmail. Fellow portal developers will appreciate that single sign-on is usually the key sticking point for portal integration. [...] Controlling the single sign-on gateway is about maintaining power, the ability to access Google's fantastic calendar, mail, blogs, feed readers, web storage and other future services might prove a very seductive draw even if it doesn't play nice with external systems."
(emphasis mine)

My initial reaction was that GData is a way to mix RSS/Atom with their APIs, in order to better integrate their increasing number of web applications. I'm not sure if this points to less of a walled garden, or paradoxically more of one because Google is defining the protocol now. What do ZDNet readers think of GData and what uses do you see for it?