Back Original

Atom is better than RSS, in ways that matter

Draft: started Tagged ,

My feeds are Atom feeds.

Everyone with knowledge agrees that Atom is technically superior to RSS.

Unfortunately, many people continued to write and choose RSS,

Most of the differences are surface-level, or in practice not a problem:

But what few realise is that some of the differences matter.

So let’s talk about the cases that matter.

Title encoding semantics

Précis: you can’t reliably use characters like < or & in RSS titles.

Content management systems normally allow headings to contain markup;

Atom defines something called text construct,

In RSS… well, not even content gets encoding semantics,

Suppose you want to encode this title:

All about the <xmp> element

How are you going to do it?

In Atom, you have three clear choices:

  1. Discard the markup, and encode the text as text.
    <title type="text">
    	All about the &lt;xmp> element
    </title>
  2. Keep the markup, and entity-encode the HTML.
    <title type="html">
    	All about the &lt;code>&amp;lt;xmp>&lt;/code> element
    </title>
  3. Keep the markup, and represent the HTML as XML.
    <title type="xhtml">
    	<div xmlns="http://www.w3.org/1999/xhtml">
    		All about the <code>&lt;xmp></code> element
    	</div>
    </title>

TODO: survey RSS readers to find out how they handle all of these cases.

Hard mode challenge: <_>::v::<_>, a real title I used.

The summary/full item distinction

RSS bad, Atom good. Capiche? 😁

Heuristics, bad for interop, &c. &c.

I feel like there was a third Difference that Matters that I had in mind at some point. Maybe I’ll remember it before I publish.

The fly in the ointment: podcasts

I must, in good faith, mention podcasts.

Since this stuff is largely from 20–25 years ago,

Rough timeline:

So I want to blame Apple.

RSS is a mess. Podcast RSS is even more of a mess.