Which feed format ro choose, Atom or RSS 2.0?

Although other solutions were proposed in the past, three formats of syndication emerged:
- RSS 2.0, or Really Simple Syndication, by Harvard.
- RSS 1.0, or Rich Summary Site, by the RSS-DEV group, and
- Atom by IETF, format largely used but always in stage of definition.

All these formats were not defined to compete with other ones, but for a precise goal, which we will develop in order to answer the question in the title.

RSS 2.0

This format was defined by Dave Winner with a clear goal of simplicity, freedom and extensibility. There is no limit imposed in the size of texts in tags. The author wanted to define a core which is very simple to implement while offering the possibility of extensions, but by the use of XML namespaces, which are sort of categories in which one can define all the tag needed for a given application.

RSS 1.0 (RDF)

Contrary to RSS 2.0 which is in pure XML, version RSS cames back to initial principles of the format of syndication 0.9 in RDF and extends it.
The resumption of the RDF format, as it is detailed in the specification, has for goal to add metadata to the data included in the feed, in other words to add information about information containes in the file of the RSS feed.
The format is also extensible with modules, which are XML namespaces as in RSS 2.0.
Metadata allow for computer processing of the meaning of the document, the format 1.0 lies within a scope or one would like to know for what the feed is used. This is why one uses this format for syndication of blogs, because there are sites specialized in the analysis of the blogosphere, trying to know tendencies of the Web and influential groups, and the necessary information comes from the metadata included in RSS 1.0.

Atom

The specification still in development, but a definition for the standard was proposed under reference RFC 4287.
The format was defined to supplement and replace RSS considered to be insufficient, which is normal since it has a goal of simplicity above all.

Atom is more precise

The type of contents of the tags, plain text or HTML code is specified in Atom whereas it is not the case into 2.0. That can help software to process the content of the feed although the majority expect to find plain text.

Integration

Atom is defined inside a namespace, which makes it possible to integrate it into other XML documents without to fear conflict of names. One can even add Atom contents to a the feed RSS 2.0 without collision.

Standardization

Atom is in way of standardization what does not bring anything more compared to RSS 2.0 that is a standard for users. It has an XML schema, which can help to use certain XML software, but nothing empeach to write a schema for the other formats, since their definition is frozen.
Atom writes dates in the RFC 3339 standard while no standard is defined in RSS 2.0. That does not have importance when one uses the date as strings to display, but the format is useful if one wants to extract some elements as: year, month, day...

Publishing protocol

Atom provides an HTTP-based protocol to publish resources and even to edit them. It is possible to access either a feed or in a feed an entry, with the GET method. And by using the POST or DELETE method it is possible to add or delete news. The protocol is not standard yet but it will allow to build syndication tools.

Helping software

In addition to the specifications above, Atom offers more help to processing of the feed by software. For example, it makes a distinction between the absolute and relative URLs. One needs some additional lines of code with the other formats.

Conclusion

Three formats, three goals:

  1. The simplest format (although extensible): RSS 2.0.
    Is sufficient enough to display links on articles of a site.
  2. Getting information on the feed: RSS 1.0.
  3. Use of special software to process, and having more requirements about format of data: Atom.

1.0 is often used by contents management software which generate an RSS feed automatically, blogs, for the use by Web 2.0 sites as Technorati.
Atom was adopted by Google for the majority of its services while sites as important as CNN or BBC offer syndication of their news in RSS 2.0. To note that when a simple example of Atom feed is shown to you, the difference with 2.0 is not obvious. It is the same for file provided by my manager for blog, meta-information remains to find.
If one does not have any preoccupation for compatibility with a web service or a given analysis software, 2.0 proves to be sufficient.

More information