Skip to main content

🌱 RSS / Atom Feed

Web Feed Syndications in XML format. Feeds are commonly used to keep track of many different websites in a single news aggregator.

TL;DR

As Feed Creator

  1. Serve both RSS and Atom feed whenever possible
  2. Extend RSS fields with proper namespace
  3. Make sure to proper sanitize or encode content in tags, sometimes with CDATA
  4. Always use UTF-8 encoding

As Feed User

  1. Lookup feed with method describe below.
  2. Choose Atom feed if available, because the specification is more unambiguous hence less interpretation error.

RSS

The original specification is published by Harvard Law, more formal and practically useful version is published at RSS Advisory Board. The latest version is 2.0.11 and has not changed since 2009.

Extending

RSS 2.0 onward allows custom extending, as long as

  1. Custom fields are Documented in namespace
  2. Format conformed to XML 1.0

See more in docs. One of the widely used extended namespace is Media RSS created by Yahoo!, docs can also be found on RSS Advisory Board.

Autodiscovery

A special <link> tag can be added to the <head> of HTML to allow other services easily locate feed location. More can be found on RSS Advisory Board.

Validation

Use W3C Feed Validation Service. A list of errors and warning can be found in the docs.

Atom

Atom specification is defined by the following two RFC:

  1. RFC 4287: The Atom Syndication Format
  2. RFC 5023: The Atom Publishing Protocol

Feed Location for Specific Sites

SiteExample siteFeed location
Tumblrhttps://example.tumblr.comhttps://example.tumblr.com/rss
Bloggerhttps://example.blogspot.comhttps://example.blogspot.com/feeds/posts/default
Mediumhttps://medium.com/example-sitehttps://medium.com/feed/example-site
YouTubehttps://www.youtube.com/channel/channel_idhttps://www.youtube.com/feeds/videos.xml?
tip

Check out Open RSS to find feed for more sites.

Appendix