RSS & ATOM

advertisement
RSS & ATOM
Scott Cornelius
Tom Morrow
-Contents The benefit of RSS and Atom.
 What is RSS about.
 Structure and Syntax of RSS.
 History of RSS.
 What is Atom about.
 Structure and Syntax of Atom.
 History of Atom.
What is RSS and Atom all about?
- They are a form of communication using XML documents to broadcast
information updates to a large group of subscribers.
How it works and its benefit.
Before RSS and Atom
Favorite website A
Favorite website B
Favorite website C
After RSS and Atom
Favorite website A
Reader or Aggregator
Application
Favorite website B
Favorite website C
-Web Based Google Reader
 Netvibes
 Pageflakes
 My Yahoo!
 Bloglines
 NewsGator
 Fwicki
-Non-Web Based RssReader
 RSS Bandit
 RSSOwl
 Thunderbird
The Benefit?
Is to organize news,
highlights, and
information in one
handy location, saving
the user valuable time
from having to checkout
all their favorite
websites for new
information on a weekly,
daily, hourly… bases.
What is RSS 2.0 ?
• RSS stands for Really Simple Syndication. It's an easy
way for you to keep up with news and information
that's important to you, and helps you avoid the
conventional methods of browsing or searching for
information on websites. Now the content you want
can be delivered directly to you without cluttering
your inbox with e-mail messages. This content is
called a "feed.“
• RSS is written in the Internet coding language known
as XML (eXtensible Markup Language).
 RSS must be the root
element followed by one
channel element.
RSS 2.0
 Required channel elements:
title
The name of the channel. It's how people refer
to your service. If you have an HTML website
that contains the same information as your RSS
file, the title of your channel should be the
same as the title of your website.
link
The URL to the HTML website corresponding
to the channel.
description
Phrase or sentence describing the channel.
RSS 2.0
Optional <channel > Elements
language
Copyright
item
managingEditor
webMaster
pubDate
lastBuildDate
category
generator
docs
cloud
ttl
image
rating
textInput
skipHours
skipDays
Elements for Item
title
link
description
author
category
comments
enclosure
guid
pubData
source
Is the email address
for the author.
It has one optional
attribute consisting of
“domain”.
Has three required
attributes.
Has three required elements, along
with optional ones.
-Required• url
• title
• link
Note: Not all required and optional elements or attributes are shown!
-Optional• width
• height
-Required• url
• length
• type
<?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 Spac
Station? They take a crash course in culture, language and protocol at Russia's <a
href="http://howe.iki.rssi.ru/GCTC/gctc_e.htm">Star City</a>.
</description>
<pubDate>Tue, 03 Jun 2003 09:39:21 GMT</pubDate>
<guid>http://liftoff.msfc.nasa.gov/2003/06/03.html#item573</guid>
<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>
</channel>
</rss>
RSS 2.0 Sample
History
• RSS
– Netscape’s RSS Team evaporates.
– UserLand RSS 0.91 – Specifications released. 6/4/00.
– RSS 1.0 - published as a proposal and worked on by a
private group led by Rael Dornfest at O’Reilly. This version
has an all new format and is based on RDF that uses
namespaces. 8/14/00
– RSS 0.92 - is 0.91 with optional elements and designed by
Dave Winer at UserLand. 12/25/00.
– RSS 0.93 version was never released. 4/20/01.
History
• RSS
– MetaWeblog API merges RSS 0.92 with XML-RPC that’s a
powerful blogging API. 3/14/02.
– RSS 2.0 – RSS 2.0 – is version 0.92 with optional elements,
designed by Dave Winer, after he left UserLand.This format
in development was called version 0.94. The MetaWeblog
API was updated for RSS 2.0. 9/18/02.
– RSS 2.0 - Harvard releases specifications under Creative
Commons licence. 7/15/03.
• RSS
History
– scriptingNews format was designed by Dave Winer at
UserLand. 12/27/97.
– Version 0.90 - designed by Netscape, for use with it’s
browser. It had scriptingNews format, the header was RDF
(Resource Description Framework) , and plain XML.
3/15/99.
– scriptingNews 2.0b1 - designed by Dave Winer at
UserLand and includes the features in RSS 0.90. Netscape
was urged from Dave Winer to use this format in the next
release of RSS. 6/15/99.
– RSS 0.91 - Specifications written by Dan Libby and designed
by Netscape. RDF header is removed. 7/10/99
– UserLand Adopts RSS 0.91 – deprecates scriptingNews
formats. 7/28/99.
What is ATOM 1.0 ?
• ATOM – The Atom Syndication Format is the next generation of
XML-based file formats, designed to allow information--the
contents of web pages, for example--to be syndicated between
applications. Like RSS before it, Atom places the content and
metadata of an internet resource into a machine-parsable
format, perfect for displaying, filtering, remixing, and archiving.
Atom
 In Atom, <feed> is used for
the root element.
 Required <feed> elements:
id
title
updated
General considerations:
• All elements described in Atom must be in the
http://www.w3.org/2005/Atom namespace.
• xml:lang may be used to identify the language of any
human readable text.
• xml:base may be used to control how relative URIs
are resolved.
A unique identifier, which can be as simple as
the URI of a blog entry or other Web resource
represented by an entry.
Contains a human readable title for the feed.
Often the same as the title of the associated
website.
A timestamp which indicates when the last
update occurred.
(Must conform to RFC 3339)
Atom
Optional <feed> Elements
category
contributor
entry
published
contributor
generator
icon
logo
source
rights
subtitle
author
link
Has three required elements, along
with optional ones.
-Required• id
• title
• update
Has the required element <name>,
along with two optional ones.
-Optional• uri
• email
Note: Not all required and optional elements or attributes are shown!
-Optional• author
• content
•link
•summary
•category
•contributor
•published
•source
•rights
<?xml version="1.0"?>
Atom Sample
<feed xmlns="http://www.w3.org/2005/Atom">
<link rel="self" href="http://example.org/blog/index.atom"/>
<id>http://example.org/blog/index.atom</id>
<icon>../favicon.ico</icon>
<title>An Atom Sampler</title>
<subtitle>No Splitting</subtitle>
<author>
<name>Ernie Rutherford </name>
<email>ernie@example.org</email>
<uri>.</uri>
</author>
<updated>2006-10-25T03:38:08-04:00</updated>
<link href="."/>
<entry>
<id>tag:example.org,2004:2417</id>
<link href="2006/10/23/moonshine"/>
<title>Moonshine</title>
<content type="text">
Anyone who expects a source of power from the transformation of the atom is talking moonshine.
</content>
<published>2006-10-23T15:33:00-04:00</published>
<updated>2006-10-23T15:47:31-04:00</updated>
</entry>
<entry>
<id>>tag:example.org,2004:2416</id>
<link href="2006/10/21/think"/>
<title type="html"><strong>Think!</strong></title>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<p>We haven't got the money, so we've got to think!</p>
</div>
</content>
<updated>2006-10-21T06:02:39-04:00</updated>
</entry>
</feed>
History
• ATOM
– Before the development of ATOM, RSS was the used format
for web content syndication. People using RSS 2.0 felt there
were considerable deficiencies in the format. RSS 2.0 was
frozen and not changed.
– Sam Ruby put together a wiki for discussions on what
makes, “a well- formed log entry”. The wiki soon had
discussions on a new syndication format addressing RSS’s
shortcomings. It was coming obvious that such tools maybe
used such as, the Blogger API and LiveJournal XML-RPC
Client/Server Protocol. June 2003.
History
• ATOM
– Sam Ruby a project aimed to develop a web syndication
format that was:
–
–
–
–
“100% vendor neutral,”
“implemented by everybody,”
“freely extensible by anybody, and”
“cleanly and thoroughly specified.”
– A project road map was designed. The project involved
more than 150 supporters, including David Sifry of
Technorati, Mena Trott of Six Apart, Brad Fitzpatrick of
LiveJournal, Jason Shellen of Blogger, Jeremy Zawodny of
Yahoo, Timothy Appnel of the O’Reilly Network, Glenn Otis
Brown of Creative Commons and Lawrence Lessig. Other
notables supporting ATOM include Mark Pilgrim, Tim Bray,
Aaron Swartz, Joi Ito, and Jack Park. Also, Dave Winer, the
key figure behind RSS 2.0, gave tenative support to the
project. June 2003.
History
• ATOM
– Before releasing the project they needed a name. Some
tentatively used names, “Pie,” “Echo,” and “Necho” before
ATOM was chosen. The project snapshot ATOM 0.2
discussion was taken off the wiki in early July 2003.
– ATOM 0.3 and Adoption by Google - The discussion then
moved to a newly set up mailing list. The next and final
snapshot during this phase was ATOM 0.3, released in
December 2003. This version gained widespread adoption
in syndication tools, and in particular it was added to
several Google-related services, such as Blogger, Google
News, and Gmail. Google's Data APIs (Beta) Data are based
on ATOM 1.0 and RSS 2.0.
History
• ATOM
– ATOM 1.0 and IETF Standardization - In 2004, discussions
began about moving the project to a standards body such as
the World Wide Web Consortium or the Internet
Engineering Task Force (IETF). The group eventually chose
the IETF and the ATOMpub working group[ was formally set
up in June 2004, finally giving the project a charter and
process. The ATOMpub working group is co-chaired by Tim
Bray (the co-editor of the XML specification) and Paul
Hoffman. Initial development was focused on the
syndication format.
– The ATOM Syndication Format was issued as a Proposed
Standard in IETF RFC 4287 in December 2005. The coeditors were Mark Nottingham and Robert Sayre. This
document is known as atompub-format in IETF's
terminology. The ATOM Publishing Protocol was issued as a
Proposed Standard in IETF RFC 5023 in October 2007. Two
other drafts have not been standardized.
References
• http://www.intertwingly.net/wiki/pie/Rss20AndAtom
10Compared
• http://cyber.law.harvard.edu/rss/rss.html
• http://atompub.org/2005/07/11/draft-ietf-atompubformat-10.html
• http://www.atomenabled.org/developers/syndication
• http://www.usa.gov/Topics/Reference_Shelf/Libraries
/RSS_Library/What_Is_RSS.shtml
• http://www.5z5.com/Web-Feed-KnowledgeBase/ATOM/
Download