Many sites have content that will be constantly updated. News sites, content management systems, and blogs all rely on frequent content changes. It can be daunting for users to keep abreast of even daily changes, and even more difficult to follow content that is seemingly in constant flux. RSS, which stands for Really Simple Syndication, enables users to subscribe to sites with these types of updates and either read them through a dedicated application or publish them on their own Web sites.
RSS feeds are defined as an XML document, using a standardized schema.
History Of RSS
Ramanathan V. Guha, an engineer for Netscape, created the first version of RSS, which then stood for RDF Site Summary, in 1999 as an extension for the My Netscape portal, an early attempt at creating a news and information Web site that users could personalize. Another developer named Dan Libby revised the RSS standard shortly thereafter, renaming it in the process as Rich Site Summary. In 2002, the meaning of the acronym was formally changed to Really Simple Syndication, and a version 2 was released after several years of open development. Another group continues to develop a slightly different standard based on the original RDF format, which is currently in version 1. That same year, the New York Times began offering an RSS feed of its headlines, and the technology took off from there.
Today, most major news sites have followed the New York Times’s lead and offer RSS feeds, as do almost all blogs, many e-commerce sites, and others.
Subscribing To And Reading RSS Feeds
In the early days of its adoption, several specialized RSS readers or aggregators were available. An RSS reader is merely an application that understands and can correctly parse a document written to the RSS schema. As the technology has become more widespread and popular, the ability to read RSS has been integrated into more and more applications, including most major browsers, many major e-mail clients, and other applications.
Microsoft Windows Vista, the latest incarnation of the Windows operating system, includes an RSS reader in its Sidebar, a set of gadgets always visible on the side of the user’s screen. Each of these programs gives users the ability to subscribe to the feed, allowing them to receive updates to the feed’s data automatically as it is made available.
Atom
Atom represents the third branch of RSS development and was developed in an attempt to reconcile several issues with the RSS 2 specification. This group is now a part of the Internet Engineering Task Force, one of the major Internet standards organizations. Atom is generally considered to be more extensible than the RSS formats,
but as the newer format, it is not as widely supported by aggregators.
As a developer, you simply need to decide which standard you will use. Most RSS readers have sidestepped the standards issue altogether and simply support all three, so the problems of having three competing versions are transparent to the end users and most developers. Note that Atom is not an acronym but is instead merely the name of the standard.
The RSS Syntax
Regardless of which RSS standard you choose to rely on, you will be creating an XML document. The only real differences between the three standards are in the actual elements used.
RSS 1 Syntax
RSS 1 documents use a root rdf
element with, confusingly, an rdf
namespace. The first child element will be channel
, used to describe the basic information about your feed, including a title and a link to the home page from the site serving the feed. An optional image
element for a feed logo follows, and then a series of item
elements. Each item
element will contain a title
element for the specific item, a link
element with the path to the item’s page, and a description
element that provides a brief summary of the item. These item
elements will make up the bulk of your feed.
RSS 2 Syntax
RSS 2 uses a root rss
element. Its first child will, like RSS 1, be a channel
element, but unlike the version 1 standard, the channel
element on most feeds will actually contain the rest of the feed, almost becoming a second, nested root element, although it exists for this reason because advanced users can create separate channels within the same document. The channel
element will contain a title
element for the feed, a link
element to the feed’s main page, a description
or summary
of the feed, a language
to define the base language used in the feed, a pubDate
and last
BuildDate
, which are used by aggregators to know if the feed has been updated, and then some general information such as docs
, generator
, managing Editor
, and webMaster
elements.
Following these elements, RSS 2, like version 1, has a series of item
elements for the actual data. These item
elements will contain a title
, link
, and description
, along with a pubDate
and guid
element, the latter providing a unique identifier for the item.
Atom Syntax
Atom uses a very different syntax from the two RSS formats. The root element of an Atom document is feed
. Its child elements are title
, subtitle
, link
, updated
, author
, and id
, which describe the feed as a whole, just as in RSS 1 and 2. The main body of the document will be a series of entry
elements, which will contain title
, link
, id
, updated
, and summary
elements.
The RSS Logo
When Mozilla first added RSS feeds to their Firefox browser, they developed a logo to represent feeds and released the logo under the GNU General Public License. The logo is a small orange square with white radio waves radiating from the bottom-left corner. In 2005, Microsoft announced that they were adopting the logo to represent RSS feeds in Internet Explorer and Outlook. Opera soon followed, making the little orange square the recognized standard for RSS. Web developer Matt Brett developed a Web site, Feed Icons at www.feedicons.com, to provide the logo in a variety of formats and colors and help facilitate its widespread use.
File Extensions
There is no agreed-upon file extension for RSS feeds. The most commonly used are .rdf, .rss, .atom, or .xml.
There have been no comments | Subscribe to Comments | Jump to Form »