In August, the Google Reader Blog posted a list of the most commonly used extensions in feeds. Here is my list of the top 10 most useful extensions for syndication:
This one really shouldn't even be on this list, but I include it because it did make a big splash when it was released. It also generated a lot of frustration and anger amoung podcast producers. The iTunes namespace extension was created to allow podcast feed producers to integrate their feeds with Apple's iTunes music player. It provides information about digital media such as the author, category, duration, description, and more. Having this and mediaRSS will make for some very ugly feeds containing redundant data. Hopefully we can all agree on one standard. As it is now, I think the MediaRSS extension has the advantage over the iTunes extension. I hope the itunes namespace goes away. :)
Who uses it: iTunes, lots of podcasts
9. Yahoo Weather
Yahoo's weather API uses the "yweather" namespace definitions to identify elements such as temperature, wind, atmospheric pressure, humidity, etc. IMO, this API is very well implemented.
Who uses it: Yahoo
Simple but useful, the Well-Formed Web comment extension provides a way for a feed to identify the URL at which new comments should be posted (comment) and the URL of a feed of existing comments (commentRss). Also of interest here is the Slash extension (no, its not just for slash dot) for comment count, and the Atom Threading (see #5) extension for threading comments/entries.
Who uses it: Wordpress, Movable Type, Community Server, etc.
7. Dublin Core
The "dc" namespace was created as a small set of very general elements designed to describe data. These are simple elements such as title, creator, subject, description, etc. It is an ISO standard often used in RSS and Atom today.
Who uses it: A question with a shorter answer would be "who doesn't use it?"
An A9 research project, the compact OpenSearch extension turns a feed into a list of search results by adding totalResults, startIndex, and itemsPerPage elements to a feed channel. It also makes recommendations for the meanings of certain RSS element values.
Who uses it: A9, Blogger, Google (Gdata)
5. Atom Threading
The "thr" namespace defines a set of elements which can be used to describe threads of Atom entries. "in-reply-to" and other elements allow entries to be related to each other and threaded in a tree-like structure.
Who uses it: Typepad, Wordpress
The "gd" definitions are used in many Google Data API's. Currently Google defines several different "kinds" of items such as contacts, events, and messages. These "kinds" use the "gd" namespace to define things like email, im, phoneNumber, postalAddress, event recurrence, etc.
Who uses it: Google Calendar, Google Base, Blogger
3. Simple List Extensions
SLE gives feeds the ability to represent ordered lists of items. Instead of just a continuous queue of items typically ordered by date of publishing, a feed can make use of SLE to identify itself as a list in which items not included in the list should no longer be used by the consuming application. In addition, SLE provides elements to describe which elements in the feed can be sorted and grouped.
Who uses it: eBay, Amazon, Yahoo, MSN Spaces, Windows RSS Platform, IE7
This extension for RSS and Atom allows you to encode location into feeds. It is as simple as a single georss:point element containing a latitude/longitude coordinate, but more complex representations for lines and polygons are also available.
Who uses it: Microsoft Virtual Earth, Platial
In RSS 2.0, the enclosure element is of course already being used to describe digital media. This is what all those podcasts use. But the enclosure element only provides a mime-type, a content-length, and a url where the bits can be found. Media RSS provides richer meta-data about digital media, such as the title and description, a thumbnail, time duration, bitrate, language, rating, credits, etc.
Who uses it: FeedDemon, YouTube, Yahoo Video, Google Video, Flickr