March 11, 2004
@ 04:54 PM

Dave Winer has a proposal for merging RSS and ATOM. I'm stunned. It takes a bad idea (coming up with a redundant XML syndication format that is incompatible with existing ones) and merges it with a worse idea (have all these people who dislike Dave Winer have to work with him).

After adding Atom support to RSS Bandit a thought crystallized in my head which had been forming for a while; Atom really is just another flavor of RSS with different tag names. It looks like I'm not the only aggregator author to come to this conclusion, Luke Huttemann also came to the same conclusion when describing SharpReader implementation of Atom. What this means in practice is that once you've written some code that handles one flavor of RSS be it RSS 0.91, RSS 1.0, or RSS 2.0 then adding support for other flavors isn't that hard and they basically all have the same information just hidden in different tag names (pubDate vs. dc:date, admin:errorsReportsTo vs. webMaster, author vs. dc:creator, etc). To the average user of any popular aggregator there isn't any noticeable difference when subscribed to an RSS 1.0 feed vs. an RSS 2.0 feed or an RSS 2.0 feed vs. an  Atom feed.

And just like with RSS, aggregators will special case popular ATOM feeds with weird behavior that isn't described in any spec or interprets the specs in an unconventional manner. As Phil Ringnalda points out Blogger ATOM feeds claim that the summary contains XHTML when in fact they contain plain text. This doesn't sound like a big deal until you realize that in XHTML whitespace isn't significant (e.g. newlines are treated as spaces) which leads to poorly formatted content when the aggregator displays the content as XHTML when it truth it is plain text. Sam Ruby's ATOM feed contains relative links in the <url> and <link> elements but doesn't use xml:base. There is code in most aggregators to deal with weird but popular RSS feeds and it seems Atom is already gearing up to be the same way. Like I said, just another flavor of RSS. :)

As an aside I find it interesting that currently Sam Ruby's RSS 2.0 feed provides a much better user experience for readers than his ATOM feed. The following information is in Sam's RSS feed but not his Atom feed

  • Email address of the webmaster of the site. [who to send error reports to]
  • The number of comments per entry
  • An email address for sending a response to an entry
  • An web service endpoint for posting comments to an entry from an aggregator
  • An identifier for the tool that generated the feed
  • The trackback URL of each entry

What this means is that if you subscribe to Sam's RSS feed with an aggregator such as SharpReader or RSS Bandit you'll get a better user experience than if you used his Atom feed. Of course, Sam could easily put all the namespace extensions in his RSS feed in his Atom feed as well in which case the user experience subscribing to either feed would be indistinguishable.

Arguing about XML syndication formats is meaningless because the current crop that exist all pretty much do the same thing. On that note, I'd like to point out that websites that provide multiple syndication formats are quite silly. Besides confusing people trying to subscribe to the feed there isn't any reason to provide an XML syndication feed in more than one format. Particularly silly are the ones that provide both RSS and Atom feeds (like mine).

Blogger has it right here by providing only one feed format per blog (RSS or Atom). Where they screwed up is by forcing users to make the choice instead of making the choice for them. That's on par with asking whether they want the blog served up using HTTP 1.0 or HTTP 1.1. I'm sure there are some people that care but for the most part it is a pointless technical question to shove in the face of your users.


 

Thursday, 11 March 2004 19:53:10 (GMT Standard Time, UTC+00:00)
I have two feeds, one atom and one RSS. Mostly because i wanted to do it and because it was so simple. When reading feeds in bloglines i can't tell if they're atom or rss.


I'm silly too.
Friday, 12 March 2004 02:36:19 (GMT Standard Time, UTC+00:00)
Well said Dare.
Friday, 12 March 2004 17:20:46 (GMT Standard Time, UTC+00:00)
I really look forward the development of Atom as a separate standard and I don't think the merging of standards would benefit anyone other but the current RSS wizkid Dave Winer.
RaynerApe
Saturday, 13 March 2004 01:35:32 (GMT Standard Time, UTC+00:00)
Everything you say is OK except leave out the hatred. If Atom is going to IETF as Sam Ruby says, hate has no place. If it's going to be an open standard as so many say, you can't say everyone is welcome but one person. It's childish, unrealistic, hate and fear-filled. Don't be part of that, it has no place in XML. Be an advocate of goodwill, not hate.
Saturday, 13 March 2004 02:31:47 (GMT Standard Time, UTC+00:00)
Mark,
I have no idea what you are talking about.
Saturday, 13 March 2004 03:53:31 (GMT Standard Time, UTC+00:00)
I agree with Mark Brandes, and have commented on the technical aspects of your post that relate to my feed here:

http://www.imc.org/atom-syntax/mail-archive/msg03161.html
Saturday, 13 March 2004 04:00:05 (GMT Standard Time, UTC+00:00)
Sam,
I disagree with creating a new syndication format but don't care enough about ATOM to hate it, heck I don't even bother to read the mailing list anymore which is why I unsubscribed. However I know for a fact that a number of people working on ATOM are doing so just to get away from working with Dave Winer so I don't see anything wrong in pointing out that adding him to the process would be a volatile mix. I guess the politically correct thing to do would be to ignore the truth. Sorry, I don't work that way.

As for your post on the atom-syntax list, I read it and it seems you are right. I was confused by what the spec described as "xml:base processing", I'd have understood what was being conveyed if it simply stated that relative URIs were resolved using the base URI of the element as defined by the xml:base recommendation. That would have been much clearer.
Comments are closed.