WWW.WEBMASTER.XMC.PL

RSS

Web Design & Development Guide

RSS

Home
Up
RSS enclosure
Rss tracking
RSS TV
Yahoo! Pipes


RSS
The Firefox and Internet Explorer 7 Feed icon.

Screenshot of an RSS feed as seen in Mozilla Thunderbird
File extension: .rss, .xml
MIME type: application/rss+xml (Registration Being Prepared)[1]
Extended from: XML

RSS (which, in its latest format, stands for "Really Simple Syndication") is a family of web feed formats used to publish frequently updated content such as blog entries, news headlines or podcasts. 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 their favorite web sites in an automated manner that's easier than checking them manually.

RSS content can be read using software called a "feed reader" or an "aggregator." 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 reader checks the user's subscribed feeds regularly for new content, downloading any updates that it finds.

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.

History

Before RSS, several similar formats already existed for syndication, but none achieved widespread popularity or are still in common use today, as most were envisioned to work only with a single service. The basic idea of re-structuring metadata information about web sites has been traced back at least as far as 1995, and the work of Ramanathan V. Guha and others at Apple Computer's Advanced Technology Group developing the Meta Content Framework (MCF).[2] Other early work on XML syndication formats, including RDF, took place at Netscape, Userland Software, and Microsoft.

RDF Site Summary, the first version of RSS, was created by Ramanathan V. Guha of Netscape in March 1999 for use on the My Netscape portal. This version became known as RSS 0.9.[3]

In July 1999, responding to comments and suggestions, Dan Libby produced a prototype tentatively named RSS 0.91[4] (RSS standing for Rich Site Summary), that simplified the format and incorporated parts of Dave Winer's Scripting News format. [5] This they considered an interim measure, with Libby suggesting an RSS 1.0-like format through the so-called Futures Document.[6]

In April 2001, in the midst of AOL's acquisition and subsequent restructuring of Netscape properties, a re-design of the My Netscape portal removed RSS/XML support. The RSS 0.91 DTD was removed during this re-design, but in response to feedback, Dan Libby was able to restore the DTD, but not the RSS validator previously in place. In response to comments within the RSS community at the time, Lars Marius Garshol, to whom (co?)authorship of the original 0.9 DTD is sometimes attributed, commented, "What I don't understand is all this fuss over Netscape removing the DTD. A well-designed RSS tool, whether it validates or not, would not use the DTD at Netscape's site in any case. There are several mechanisms which can be used to control the dereferencing of references from XML documents to their DTDs. These should be used. If not the result will be as described in the article." [7]

Effectively, this left the format without an owner, just as it was becoming widely used.

A working group and mailing list, RSS-DEV, was set up by various users and XML notables to continue its development. At the same time, Winer unilaterally posted a modified version of the RSS 0.91 specification to the Userland website, since it was already in use in their products. He claimed the RSS 0.91 specification was the property of his company, UserLand Software.[8] Since neither side had any official claim on the name or the format, arguments raged whenever either side claimed RSS as its own, creating what became known as the RSS fork.

The RSS-DEV group went on to produce RSS 1.0 in December 2000.[9] Like RSS 0.9 (but not 0.91) this was based on the RDF specifications, but was more modular, with many of the terms coming from standard metadata vocabularies such as Dublin Core.

Nineteen days later, Winer released by himself RSS 0.92,[10] a minor and supposedly compatible set of changes to RSS 0.91 based on the same proposal. In April 2001, he published a draft of RSS 0.93 which was almost identical to 0.92.[11] A draft RSS 0.94 surfaced in August, reverting the changes made in 0.93, and adding a type attribute to the description element.

In September 2002, Winer released a final successor to RSS 0.92, known as RSS 2.0 and emphasizing "Really Simple Syndication" as the meaning of the three-letter abbreviation. The RSS 2.0 spec removed the type attribute added in RSS 0.94 and allowed people to add extension elements using XML namespaces. Several versions of RSS 2.0 were released, but the version number of the document model was not changed.

In November 2002, The New York Times began offering its readers the ability to subscribe to RSS news feeds related to various topics. In January, 2003, Winer called the New York Times' adoption of RSS the "tipping point" in driving the RSS format's becoming a de facto standard.

In July 2003, Winer and Userland Software assigned ownership of the RSS 2.0 specification to his then workplace, Harvard's Berkman Center for the Internet & Society.[12]

In January 2005, Sean B. Palmer, Christopher Schmidt, and Cody Woodard produced a preliminary draft of RSS 1.1.[13] It was intended as a bugfix for 1.0, removing little-used features, simplifying the syntax and improving the specification based on the more recent RDF specifications. As of July 2005, RSS 1.1 had amounted to little more than an academic exercise.

In April 2005, Apple Computer released Safari 2.0 with RSS Feed capabilities built in. Safari delivered the ability to read RSS feeds, and bookmark them, with built-in search features. Safari's RSS button is a blue rounded rectangle with RSS written inside in white, Safari's RSS icon/button. The favicon displayed defaults to a newspaper icon Safari's feed favicon..

In November 2005, Microsoft proposed its Simple Sharing Extensions to RSS.[14]

In December 2005, the Microsoft IE team and Outlook team announced in their blogs that they will be adopting the feed icon first used in the Mozilla Firefox browser , effectively making the orange square with white radio waves the industry standard for both RSS and related formats such as Atom. Also in February 2006, Opera Software announced they too would add the orange square in their Opera 9 release.

In January 2006, Rogers Cadenhead relaunched an RSS Advisory Board with a view to continuing the development of the RSS format and resolving 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. In their view, a difference of interpretation left publishers unsure of whether this was permitted or forbidden. No press account of the differences between the Winer spec and the Cadenhead spec for RSS 2.0 is included in this article's references, though blog searches in May, 2007 found private opinions that the two specs were very similar.

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 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 mid-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 [1]. 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 behavior has become widely 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.

Atom

Main article: Atom (standard)

In reaction to recognized issues with RSS (and because RSS 2.0 is frozen), a third group began a new syndication specification, Atom, in June 2003. Their work was later adopted by the Internet Engineering Task Force (IETF) leading to the publication of a specification (RFC 4287) for the Atom Format in 2005. Work on the Atom Publishing Protocol, a standards-based protocol for posting to publishing tools is ongoing.

The relative benefits of Atom in comparison to the two RSS branches are a matter of debate within the Web-syndication community. Supporters of Atom claim that it improves on RSS by relying on standard XML features, by specifying a payload container that can handle many different kinds of content unambiguously, and by having a specification maintained by a recognized standards organization. Critics claim that Atom unnecessarily introduces a third branch of syndication specifications, further confusing the marketplace.

Atom aims to define both a syntax and a protocol for updating user blogs and thus goes beyond the simple remit of RSS. While this is appealing to many users, particularly those in the blogging community, it has been met with resistance in the professional community (mainly publishers) due to its lack of extensibility.[15]

For a comparison of Atom 1.0 to RSS 2.0 see Atom Compared to RSS 2.0.

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:

BitTorrent and RSS

The peer-to-peer application BitTorrent has also announced support for RSS. Such feeds (also known as Torrent/RSS-es or Torrentcasts) will allow client applications to download files automatically from the moment the RSS reader detects them (also known as Broadcatching). Most common BitTorrent clients already offer RSS support.

Examples

RSS 1.0

The following is an example of an RSS 1.0 file.

<?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.

<?xml version="1.0"?>
<rss version="2.0">
  <channel>
    <title>Liftoff 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>

    <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>

References

See also

External links

Specifications

Articles


Home
Up
Atom
RSS
FeedBurner
Push technology
Web feed



Page created in 0.031821 Seconds