RSS & Atom

Syndication feeds and readers.

RSS & Atom is taught here in 13 lessons, running from The RSS 2.0 feed format through to Migrating between RSS, Atom and JSON Feed. Each lesson takes one topic, shows the working code, and links onward to the next, so the course can be read straight through in order.

TrackXML & Web Services
Lessons13
LevelBeginner to intermediate
Reading timeabout 3 hours
PrerequisitesHelpful, but not required: RESTful APIs

Lessons

  1. The RSS 2.0 feed formatThe channel and item elements that make a feed, which ones are required, and the date and identifier rules readers enforce.
  2. Generating a valid feedBuilding feed XML safely from application data, validating it, and advertising it so readers can find it.
  3. Atom and how readers consume feedsWhere Atom differs from RSS, how feed readers poll with conditional requests, and what that means for your server.
  4. Choosing a feed format: RSS 2.0, Atom and JSON FeedThe audience decides the format: readers and podcasts need RSS, Atom is stricter and date-safe, and JSON Feed is easiest for modern clients.
  5. Namespace extensions: content:encoded, dc: and Media RSSRSS 2.0 is small by design and extended by namespaces. Declaring them correctly is what makes full content, metadata and images work.
  6. Podcast feeds and the Apple and Podcasting 2.0 tagsA podcast feed is an RSS feed with an enclosure, plus a set of namespaced tags that directories enforce strictly enough to reject your show.
  7. Full-text versus summary feedsFull content earns reader loyalty and costs you page views. The right answer depends on how you are funded, not on a technical preference.
  8. Parsing and consuming feeds in codeThree formats, one internal shape. Normalising early is what stops feed-handling code from spreading format checks through the whole application.
  9. Validating and troubleshooting feedsA feed that a browser renders can still be rejected by readers. Validation in the build is the only way to know before subscribers do.
  10. Aggregating feeds: OPML, merging and republishingAggregation is mostly bookkeeping: keeping track of which items you have seen, in what order to present them, and what you are allowed to republish.
  11. Feed security: sanitising third-party contentFetching and rendering a third-party feed is running untrusted code against your own systems, and the risks are concrete and well documented.
  12. Feeds at scale: pagination, archives and pipelinesA feed with a hundred thousand items is useless to a reader. Paged and archive feeds, generated incrementally, are what keep large catalogues usable.
  13. Migrating between RSS, Atom and JSON FeedChanging formats is mostly a mapping exercise, but the identifier rules decide whether subscribers see a migration or a re-notification of everything.

More in XML & Web Services

XML XPath XSLT SOAP RESTful APIs

FAQ

How long does the RSS & Atom course take?
It has 13 lessons, about 3 hours of reading. Expect roughly twice that if you type out and run every example.
Do I need prior experience for RSS & Atom?
Not strictly. It helps to have read RESTful APIs first, because some lessons build on it, but every lesson explains its own assumptions.
What should I read after RSS & Atom?
This is the last course in XML & Web Services right now. Browse the other tracks from the courses index to go sideways.