What is a Feed?

CS520 Web Programming RSS and Feeds Amazon.com - DVD http://www.amazon.com/exec/... Up-to-date listings of Amazon.com's top items (by Sales Rank). Chengyu Sun http://www.amazon.com/exec/obidos/subst/xs/syndicate.html California State University, Los Angeles Batman Begins (Two-Disc Deluxe Edition) Batman Begins (Two-Disc Deluxe Edition) -- $19.98 http://www.amazon.com/exec/... ...

Feed Examples The Need for Feeds

Yahoo! News feeds - Content syndication http://news.yahoo.com/rss A standard way to publish information Google Feed Reader – that changes on a regular basis

http://www.google.com/reader  Taking advantage of the popularity and availability of feed readers/aggregators

A Little History of RSS A Little History of Atom

RSS-DEV Netscape UserLand Started by Sam Ruby on a wiki in 2003 Working Group 0.90 Pie, Echo, Necho, Atom

0.91 0.91 Atom 0.3 is widely adopted 1.0 0.92 Atom 1.0 is now an IETF standard

0.93 Rich Site Summary (0.91) RDF Site Summary (0.9,1.0) 0.94 Really Simple Syndication (2.0) 2.0

1 Required Sub- RSS 2.0 Elements

RSS 2.0 Specification - http://blogs.law.harvard.edu/tech/rss <link> <rss version=“2.0”> <description>  <channel></p><p>Optional <Channel> Sub- Elements Element Formats</p><p><language> <docs> Contact info elements <copyright> <cloud>  <a href="/tags/Email/" rel="tag">Email</a> (FirstName LastName) <managingEditor> <ttl>  E.g. <webMaster>csun@calstatela.edu (Chengyu Sun)</webMaster> <webMaster> <image> Date elements <pubDate> <rating>  RFC 822-style</p><p><lastBuildDate> <textInput>  E.g <lastBuildDate>Sun, 12 Sep 2004 <category> <skipHours> 19:01:55 GMT</lastBuildDate> <generator> <skipDays></p><p><item> RSS Modules</p><p><title> <category> Extensions of the core specification <link> <comments> using XML Namespace <description> <enclosure> <rss version="2.0" xmlns:media=“http://tools.search.yahoo.com/mrss/”> <author> <guid> … <item> <pubDate> <source> … <media:content> <media:url>http://cs.calstatela.edu/video.mpg</media:url> <media:fileSize>2000000</media:fileSize> <media:type>video/mpeg</media:type> </media:content> …</p><p>2 XML Namespace Atom Syndication Format</p><p>Resolve conflicting element names http://www.ietf.org/rfc/rfc4287  E.g. <computing:windows> and <?xml version="1.0" encoding="utf-8"?> <building:windows> <feed xmlns="http://www.w3.org/2005/Atom"> <title>Example Feed Namespace declaration John Doe  xmlns:prefix =“ URI ” [email protected]  E.g. urn:uuid:60a76c80-d399-11d9-b91C-0003939e0af6 xmlns:media=http://tools.search.yahoo.co Atom-Powered Robots Run Amok m/mrss/ 2003-12-13T18:30:02Z  URI has to be unique

Some text.

Reusable Syntax of Constructs ROME

Text http://wiki.java.net/bin/view/Javawsxml Person /Rome

 ,, A Java library for producing and Date, Service, Link, Category consuming RSS and Atom feeds Identity Support all versions of RSS and Atom

 Usually a URI

Package Structure Feed in Evelyn

Interface and a general implementation Feeder interface and FeedInfo  com.sun.syndication.io evelyn.feed.rome.FeederImpl  com.sun.syndication.feed  com.sun.syndication.feed.synd Spring beans configuration Specific implementations  com.sun.syndication.feed.rss  com.sun.syndication.feed.atom Modules and Extensions  com.sun.syndication.feed.module

3 Publish Your Feeds – Auto Publish Your Feeds – MIME Discovery Links Types

xml“ RSS 1.0 title="RSS 2.0" href="url/to/rss2/file">  application/rdf+xml  application/rss+xml

 application/xml  text/xml Atom  application/atom+xml

Publish Your Feeds – Join the Cool Crowd Further Readings

Feed directories Developing Feeds with RSS and Atom

 Syndic8 - http://www.syndic8.com by Ben Hammersley  Feedster - http://www.feedster.com ROME documentation at  NewsIsFree - http://www.newsisfree.com http://wiki.java.net/bin/view/Javawsxml Feed services /Rome

 Feedburner - http://www.feedburner.com

4