RSS

2008/9 Schools Wikipedia Selection. Related subjects: Computer Programming

RSS
The Firefox and Internet Explorer 7 Feed icon.

the RSS logo
Filename extension .rss, .xml
Internet media type application/rss+xml (Registration Being Prepared)
Extended from XML

RSS is a family of Web feed formats used to publish frequently updated content such as blog entries, news headlines, and podcasts in a standardized format. An RSS document (which is called a "feed," "web feed," or "channel") contains either a summary of content from an associated web site or the full text. RSS makes it possible for people to keep up with web sites in an automated manner that can be piped into special programs or filtered displays.

The benefit of RSS is the aggregation of content from multiple web sources in one place. RSS content can be read using software called an "RSS reader," "feed reader," or an "aggregator," which can be web-based or desktop-based. A standardized XML file format allows the information to be published once and viewed by many different programs. The user subscribes to a feed by entering the feed's link into the reader or by clicking an RSS icon in a browser that initiates the subscription process. The RSS reader checks the user's subscribed feeds regularly for new content, downloads any updates that it finds, and provides a user interface to monitor and read the feeds.

The initials "RSS" are used to refer to the following formats:

  • Really Simple Syndication (RSS 2.0)
  • RDF Site Summary (RSS 1.0 and RSS 0.90)
  • Rich Site Summary (RSS 0.91).

RSS formats are specified using XML, a generic specification for the creation of data formats. Although RSS formats have evolved since March 1999, the RSS icon ("") first gained widespread use in 2005–2006.

History

The RSS formats were preceded by several attempts at syndication that did not achieve widespread popularity. The basic idea of restructuring information about websites goes back to as early as 1995, when Ramanathan V. Guha and others in Apple Computer's Advanced Technology Group developed the Meta Content Framework (MCF). For a more detailed discussion of these early developments, see the history of web syndication technology.

RDF Site Summary, the first version of RSS, was created by Guha at Netscape in March 1999 for use on the My.Netscape.Com portal. This version became known as RSS 0.9. In July 1999, Dan Libby of Netscape produced a new version, RSS 0.91, that simplified the format by removing RDF elements and incorporating elements from Dave Winer's scriptingNews syndication format. Libby also renamed RSS "Rich Site Summary" and outlined further development of the format in a "futures document".

This would be Netscape's last participation in RSS development for eight years. As RSS was being embraced by web publishers who wanted their feeds to be used on My.Netscape.Com and other early RSS portals, Netscape dropped RSS support from My.Netscape.Com in April 2001 during new owner AOL's restructuring of the company, also removing documentation and tools that supported the format.

Two entities emerged to fill the void, with neither Netscape's help nor approval: The RSS-DEV Working Group and Winer, whose UserLand Software had published some of the first publishing tools outside of Netscape that could read and write RSS.

Winer published a modified version of the RSS 0.91 specification on the UserLand website, covering how it was being used in his company's products, and claimed copyright to the document. A few months later, UserLand filed a U.S. trademark registration for RSS, but failed to respond to a USPTO trademark examiner's request and the request was rejected in December 2001.

The RSS-DEV Working Group, a project whose members included Guha and representatives of O'Reilly Media and Moreover, produced RSS 1.0 in December 2000. This new version, which reclaimed the name RDF Site Summary from RSS 0.9, reintroduced support for RDF and added XML namespaces support, adopting elements from standard metadata vocabularies such as Dublin Core.

In December 2000, Winer released RSS 0.92 a minor set of changes aside from the introduction of the enclosure element, which permitted audio files to be carried in RSS feeds and helped spark podcasting. He also released drafts of RSS 0.93 and RSS 0.94 that were subsequently withdrawn.

In September 2002, Winer released a major new version of the format, RSS 2.0, that redubbed its initials Really Simple Syndication. RSS 2.0 removed the type attribute added in the RSS 0.94 draft and added support for namespaces.

Because neither Winer nor the RSS-DEV Working Group had Netscape's involvement, they could not make an official claim on the RSS name or format. This has fueled ongoing controversy in the syndication development community as to which entity was the proper publisher of RSS.

One product of that contentious debate was the creation of an alternative syndication format, Atom, that began in June 2003. The Atom syndication format, whose creation was in part motivated by a desire to get a clean start free of the issues surrounding RSS, has been adopted as IETF Proposed Standard RFC 4287.

In July 2003, Winer and UserLand Software assigned the copyright of the RSS 2.0 specification to Harvard's Berkman Centre for the Internet & Society, where he had just begun a term as a visiting fellow. At the same time, Winer launched the RSS Advisory Board with Brent Simmons and Jon Udell, a group whose purpose was to maintain and publish the specification and answer questions about the format.

In December 2005, the Microsoft Internet Explorer team and Outlook team announced on their blogs that they were adopting the feed icon first used in the Mozilla Firefox browser . A few months later, Opera Software followed suit. This effectively made the orange square with white radio waves the industry standard for RSS and Atom feeds, replacing the large variety of icons and text that had been used previously to identify syndication data.

In January 2006, Rogers Cadenhead relaunched the RSS Advisory Board without Dave Winer's participation, with a stated desire to continue the development of the RSS format and resolve ambiguities. In June 2007, the board revised their version of the specification to confirm that namespaces may extend core elements with namespace attributes, as Microsoft has done in Internet Explorer 7. According to their view, a difference of interpretation left publishers unsure of whether this was permitted or forbidden.

Incompatibilities

As noted above, there are several different versions of RSS, falling into two major branches (RDF and 2.*). The RDF, or RSS 1.* branch includes the following versions:

  • RSS 0.90 was the original Netscape RSS version. This RSS was called RDF Site Summary, but was based on an early working draft of the RDF standard, and was not compatible with the final RDF Recommendation.
  • RSS 1.0 is an open format by the RSS-DEV Working Group, again standing for RDF Site Summary. RSS 1.0 is an RDF format like RSS 0.90, but not fully compatible with it, since 1.0 is based on the final RDF 1.0 Recommendation.
  • RSS 1.1 is also an open format and is intended to update and replace RSS 1.0. The specification is an independent draft not supported or endorsed in any way by the RSS-Dev Working Group or any other organization.

The RSS 2.* branch (initially UserLand, now Harvard) includes the following versions:

  • RSS 0.91 is the simplified RSS version released by Netscape, and also the version number of the simplified version originally championed by Dave Winer from Userland Software. The Netscape version was now called Rich Site Summary; this was no longer an RDF format, but was relatively easy to use. It remains the most common RSS variant.
  • RSS 0.92 through 0.94 are expansions of the RSS 0.91 format, which are mostly compatible with each other and with Winer's version of RSS 0.91, but are not compatible with RSS 0.90. In all Userland RSS 0.9x specifications, RSS was no longer an acronym.
  • RSS 2.0.1 has the internal version number 2.0. RSS 2.0.1 was proclaimed to be "frozen", but still updated shortly after release without changing the version number. RSS now stood for Really Simple Syndication. The major change in this version is an explicit extension mechanism using XML namespaces.

For the most part, later versions in each branch are backward-compatible with earlier versions (aside from non-conformant RDF syntax in 0.90), and both versions include properly documented extension mechanisms using XML Namespaces, either directly (in the 2.* branch) or through RDF (in the 1.* branch). Most syndication software supports both branches. Mark Pilgrim's article "The Myth of RSS Compatibility" discusses RSS version compatibility in more detail.

The extension mechanisms make it possible for each branch to track innovations in the other. For example, the RSS 2.* branch was the first to support enclosures, making it the current leading choice for podcasting, and as of 2005 is the format supported for that use by iTunes and other podcasting software; however, an enclosure extension is now available for the RSS 1.* branch, mod_enclosure. Likewise, the RSS 2.* core specification does not support providing full-text in addition to a synopsis, but the RSS 1.* markup can be (and often is) used as an extension. There are also several common outside extension packages available, including a new proposal from Microsoft for use in Internet Explorer 7.

The most serious compatibility problem is with HTML markup. Userland's RSS reader—generally considered as the reference implementation—did not originally filter out HTML markup from feeds. As a result, publishers began placing HTML markup into the titles and descriptions of items in their RSS feeds. This behaviour has become expected of readers, to the point of becoming a de facto standard, though there is still some inconsistency in how software handles this markup, particularly in titles. The RSS 2.0 specification was later updated to include examples of entity-encoded HTML; however, all prior plain text usages remain valid.

Modules

The primary objective of all RSS modules is to extend the basic XML schema established for more robust syndication of content. This inherently allows for more diverse, yet standardized, transactions without modifying the core RSS specification.

To accomplish this extension, a tightly controlled vocabulary (in the RSS world, "module"; in the XML world, "schema") is declared through an XML namespace to give names to concepts and relationships between those concepts.

Some RSS 2.0 modules with established namespaces are:

  • Ecommerce RSS 2.0 Module
  • Media RSS 2.0 Module
  • OpenSearch RSS 2.0 Module

BitTorrent and RSS

Several BitTorrent-based peer-to-peer applications also support RSS. Such feeds (also known as Torrent/RSS-es or Torrentcasts) allow client applications to download files automatically from the moment the RSS reader detects them (also known as Broadcatching).

Examples

RSS 1.0

The following is an example of an RSS Feed 1.0 file (the quoted strings are in red font).

<?xml version="1.0"?>
 
<rdf:RDF 
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xmlns="http://purl.org/rss/1.0/">
 
 <channel rdf:about="http://www.xml.com/xml/news.rss">
   <title>XML.com</title>
   <link>http://xml.com/pub</link>
   <description>
     XML.com features a rich mix of information and services 
     for the XML community.
   </description>
   <image rdf:resource="http://xml.com/universal/images/xml_tiny.gif" />
 
 <items>
     <rdf:Seq>
       <rdf:li rdf:resource="http://xml.com/pub/2000/08/09/xslt/xslt.html" />
       <rdf:li rdf:resource="http://xml.com/pub/2000/08/09/rdfdb/index.html" />
     </rdf:Seq>
   </items>
   <textinput rdf:resource="http://search.xml.com" />
 </channel>
 
 <image rdf:about="http://xml.com/universal/images/xml_tiny.gif">
   <title>XML.com</title>
   <link>http://www.xml.com</link>
   <url>http://xml.com/universal/images/xml_tiny.gif</url>
 </image>
 
 <item rdf:about="http://xml.com/pub/2000/08/09/xslt/xslt.html">
   <title>Processing Inclusions with XSLT</title>
   <link>http://xml.com/pub/2000/08/09/xslt/xslt.html</link>
   <description>
    Processing document inclusions with general XML tools can be 
    problematic. This article proposes a way of preserving inclusion 
    information through SAX-based processing.
   </description>
 </item>
 
 <item rdf:about="http://xml.com/pub/2000/08/09/rdfdb/index.html">
   <title>Putting RDF to Work</title>
   <link>http://xml.com/pub/2000/08/09/rdfdb/index.html</link>
   <description>
    Tool and API support for the Resource Description Framework 
    is slowly coming of age. Edd Dumbill takes a look at RDFDB, 
    one of the most exciting new RDF toolkits.
   </description>
 </item>
 
 <textinput rdf:about="http://search.xml.com">
   <title>Search XML.com</title>
   <description>Search XML.com's XML collection</description>
   <name>s</name>
   <link>http://search.xml.com</link>
 </textinput>
</rdf:RDF>

RSS 2.0

The following is an example of an RSS 2.0 file (strings in red font).

<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>Lift Off News</title>
    <link>http://liftoff.msfc.nasa.gov/</link>
    <description>Liftoff to Space Exploration.</description>
    <language>en-us</language>
    <pubDate>Tue, 10 Jun 2003 04:00:00 GMT</pubDate>
    <lastBuildDate>Tue, 10 Jun 2003 09:41:01 GMT</lastBuildDate>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <generator>Weblog Editor 2.0</generator>
    <managingEditor>editor@example.com</managingEditor>
    <webMaster>webmaster@example.com</webMaster>
    <ttl>5</ttl>
 
    <item>
      <title>Star City</title>
      <link>http://liftoff.msfc.nasa.gov/news/2003/news-starcity.asp</link>
      <description>How do Americans get ready to work with Russians aboard the
        International Space Station? They take a crash course in culture, language
        and protocol at Russia's Star City.</description>
      <pubDate>Tue, 03 Jun 2003 09:39:21 GMT</pubDate>
      <guid>http://liftoff.msfc.nasa.gov/2003/06/03.html#item573</guid>
    </item>
 
    <item>
      <title>Space Exploration</title>
      <link>http://liftoff.msfc.nasa.gov/</link>
      <description>Sky watchers in Europe, Asia, and parts of Alaska and Canada
        will experience a partial eclipse of the Sun on Saturday, May 31st.</description>
      <pubDate>Fri, 30 May 2003 11:06:42 GMT</pubDate>
      <guid>http://liftoff.msfc.nasa.gov/2003/05/30.html#item572</guid>
    </item>
 
    <item>
      <title>The Engine That Does More</title>
      <link>http://liftoff.msfc.nasa.gov/news/2003/news-VASIMR.asp</link>
      <description>Before man travels to Mars, NASA hopes to design new engines
        that will let us fly through the Solar System more quickly.  The proposed
        VASIMR engine would do that.</description>
      <pubDate>Tue, 27 May 2003 08:37:32 GMT</pubDate>
      <guid>http://liftoff.msfc.nasa.gov/2003/05/27.html#item571</guid>
    </item>
 
    <item>
      <title>Astronauts' Dirty Laundry</title>
      <link>http://liftoff.msfc.nasa.gov/news/2003/news-laundry.asp</link>
      <description>Compared to earlier spacecraft, the International Space
        Station has many luxuries, but laundry facilities are not one of them.
        Instead, astronauts have other options.</description>
      <pubDate>Tue, 20 May 2003 08:56:02 GMT</pubDate>
      <guid>http://liftoff.msfc.nasa.gov/2003/05/20.html#item570</guid>
    </item>
  </channel>
</rss>

Including in XHTML

The following tag should be placed into the head of an XHTML document to provide a link to an RSS Feed.

<link href="rss.xml" rel="alternate" type="application/rss+xml" title="Sitewide RSS Feed" />

Retrieved from " http://en.wikipedia.org/wiki/RSS"
The 2008 Wikipedia for Schools is sponsored by SOS Children , and consists of a hand selection from the English Wikipedia articles with only minor deletions (see www.wikipedia.org for details of authors and sources). The articles are available under the GNU Free Documentation License. See also our Disclaimer.