The Evolution of RSS | 5
[previous] [next] |
The Evolution of RSS
RSS 0.92
Userland Software released RSS 0.92 in December 2000. Based on Netscape's 0.91, 0.92 adds new optional features that developers wanted like blog synthesis (item sub-elements optional, item descriptions can contain entity-encoded HTML markup [links, etc.]), source attribution (source of item), enclosures, taxonomy information (category of item), and the cloud sub-element of channel, which notifies aggregators when the channel is updated for more timely updates, and to save bandwidth. RSS 0.92 is upwardly compatible with RSS 0.91 as new features of 0.92 are optional, meaning that a 0.91 file is also a valid 0.92 file.
There is no RSS 0.92 DTD (see the spec above), but it would look something like this:
<!ELEMENT rss (channel)>
<!ATTLIST rss
version CDATA #FIXED "0.92">
<!ELEMENT channel (title | description | link | language? | item+ |
rating? | image? | textinput? | copyright? | pubDate? | lastBuildDate? |
docs? | managingEditor? | webMaster? | skipHours? | skipDays? | cloud?)*>
<!ELEMENT title (#PCDATA)>
<!ELEMENT description (#PCDATA)>
<!ELEMENT link (#PCDATA)>
<!ELEMENT image (title | url | link | width? | height? | description?)*>
<!ELEMENT url (#PCDATA)>
<!ELEMENT item (title? | link? | description? | source? | enclosure? | category?)*>
<!ELEMENT source (#PCDATA)>
<!ATTLIST source url CDATA #REQUIRED>
<!ELEMENT enclosure (#PCDATA)>
<!ATTLIST enclosure url CDATA #REQUIRED
length CDATA #REQUIRED
type CDATA #REQUIRED>
<!ELEMENT category (#PCDATA)>
<!ATTLIST category domain CDATA>
<!ELEMENT textinput (title | description | name | link)*>
<!ELEMENT name (#PCDATA)>
<!ELEMENT rating (#PCDATA)>
<!ELEMENT language (#PCDATA)>
<!ELEMENT width (#PCDATA)>
<!ELEMENT height (#PCDATA)>
<!ELEMENT copyright (#PCDATA)>
<!ELEMENT pubDate (#PCDATA)>
<!ELEMENT lastBuildDate (#PCDATA)>
<!ELEMENT docs (#PCDATA)>
<!ELEMENT managingEditor (#PCDATA)>
<!ELEMENT webMaster (#PCDATA)>
<!ELEMENT hour (#PCDATA)>
<!ELEMENT day (#PCDATA)>
<!ELEMENT skipHours (hour+)>
<!ELEMENT skipDays (day+)>
<!ELEMENT cloud (#PCDATA)>
<!ATTLIST cloud domain CDATA #REQUIRED
port CDATA #REQUIRED
path CDATA #REQUIRED
registerProcedure CDATA #REQUIRED
protocol CDATA #REQUIRED>
Example RSS 0.92 File
Here's a snippet of an equivalent RSS 0.92 file from WebReference.com:
<?xml version="1.0" encoding="UTF-8"?>
<rss version="0.92">
<channel>
<title>WebReference News</title>
<link>https://www.webreference.com</link>
<description>Daily news, views, and how-tos on all aspects of web design
and development. Features free web-based tools, open source scripts, and
in-depth tutorials on DHTML, HTML, JavaScript, 3D, Graphics, XML, and
Design for webmasters.</description>
<language>en-us</language>
<cloud domain="data.webreference.com" port="80"
path="/RPC2" registerProcedure="webreference.rssPleaseNotify"
protocol="xml-rpc"/>
<image>
<title>WebReference.com</title>
<url>https://webreference.com/art/wr.gif</url>
<link>https://www.WebReference.com</link>
</image>
<item>
<title>The Evolution of RSS</title>
<link>https://www.webreference.com/authoring/languages/xml/rss/1/</link>
<description>We look at how RSS has evolved from its humble beginnings
through present day and beyond. We survey all versions of RSS, including
a feature comparison, a new RSS survey, plus format and validation info.
Learn how the newest versions of RSS will move us towards a more Semantic
Web. By Andrew King. 0504</description>
<enclosure url="https://www.webreference.com/authoring/languages/xml/rss/1/earsonly.swf"
length="142000" type="application/x-shockwave-flash"/>
</item>
<item>
<title>Weblog 2.0 Released</title>
<link>https://www.webreference.com/perl/tutorial/22/</link>
<description>Completely rewritten, Weblog 2.0 makes it easy to manage
multiple RSS channels and Yahoo-like directories. Highlights include a
revamped interface, multi-user support, one-step posts to multiple
channels, Xhoo directory integration, and more. This new version makes
use of two RSS 1.0 modules, the
<a href="https://www.dublincore.org">Dublin Core</a>,
and the Taxonomy module. By Jonathan Eisenzopf. 0504</description>
<source url="https://www.webreference.com">WebReference News</source>
</item>
</channel>
</rss>
Note the escaped HTML markup in the second description. Note also that this is a synthesized 0.92 file, and that any sources would be external sites in an actual 0.92 channel.
[previous] [next] |
Created: May 03, 2001
Revised: May 14, 2001