Slideshare.net (beta)

 

All comments

Add a comment on Slide 1

If you have a SlideShare account, login to comment; else you can comment as a guest


Showing 1-50 of 2 (more)

RSS and Atom in the Social Web

From hchen1, 5 months ago

649 views  |  0 comments  |  2 favorites  |  23 downloads
Embed
options

More Info

CC Attribution-NonCommercial LicenseCC Attribution-NonCommercial License
This slideshow is Public
Total Views: 649
on Slideshare: 649
from embeds: 0

Slideshow transcript

Slide 1: RSS and Atom in the Social Web Dr. Harry Chen CMSC 491S/691S March 10, 2008

Slide 2: Agenda  RSS and Atom – history and differences  Their use in Social Web applications  Atom Publishing Protocol  Publishing RSS in gnizr

Slide 3: What’s RSS? RSS RDF Site Summary (RSS 1.0, RSS 0.90) Really Simple Syndication Rich Site Summary (RSS 2.0) (RSS 0.91) There is a story behind all those names…

Slide 4: Before RSS (before 1997)  Before blogs and feeds, PointCast experimented news “push and pull”.

Slide 5: The Birth of RDF  PointCast technology was later succeed by the Meta Content Framework (MCF) sometimes btw. 1995-97 by R.V. Guha*.  Guha left Apple and joined Netscape.  In 1997, Guha led the creation of Resource Description Framework (RDF) * Guha now leads Google Custom Search @ Google http://en.wikipedia.org/wiki/Ramanathan_V._Guha

Slide 6: Note: RSS has its roots in RDF The Birth of RSS  Netscape created “My Netscape” portal in 1999.  RDF was used to created a language for describing content information in the portal.  RSS 0.90 was born.  RSS 0.91 followed (mainly cleanups)  … the end of RSS at Netscape. (~1999)

Slide 7: RSS at the Forkroad RSS 0.91 RSS-Dev Working Group Dave Winer (R.V. Guha) RSS 0.93, 0.94 (withdrawn) RSS 1.0 (Dec. 2000) RSS 2.0 (Sept 2002)

Slide 8: The Birth of Confusion  So many different syndication formats.  RSS 0.90, RSS 0.91  RSS 0.93, RSS 0.94  RSS 1.0  RSS 2.0  The Community was confused.  Which format should I use?  If want to make changes, who should I talk to?

Slide 9: Timeline Where did this come from? Source: http://www.shopwithoutborders.com/history.html

Slide 10: Atom  Atom is a syndication format  Created because the official RSS 2.0 spec. doesn’t permit changes  for stability reasons  Since no one “owns” RSS, it’s difficult to create new iterative standards based either 1.0 or 2.0  The Community sees Atom as the solution to the problem. AtomEnabled http://atomenabled.org

Slide 11: About Atom  XML, not RDF  Two different specifications  Atom Format Syndication  Atom Publishing Protocol

Slide 12: RSS vs. Atom

Slide 13: Overview  RSS 1.0  RSS 2.0  Atom 1.0 Examples are adopted from http://www.mnot.net/rss/tutorial/

Slide 14: RSS 1.0  Is an RDF document  “Channel” has a list of “Items”  An “Item” has a “title”, “link”, “description” etc.

Slide 15: RSS 1.0 and RDF  Because it’s an RDF document, it’s easy to extend a syndication document with additional RDF description  Dublin Core (DC)

Slide 16: RSS 2.0  An XML document  Not RDF

Slide 17: XML Namespace in RSS 2.0  RSS 2.0 doesn’t permit spec changes, but it allows the use of “external module”  New modules (i.e., vocabularies) can be introduced using XML Namespace  Similar to what’s permitted in RSS 1.0

Slide 18: Atom  An XML document; defines some useful syndication concepts that are missing RSS 1.0 and RSS 2.0

Slide 19: Why Atom 1.0 maybe better than RSS 2.0  RSS 2.0 is probably more widely used than Atom 1.0  However, Atom 1.0 few useful features http://www.intertwingly.net/wiki/pie/Rss20AndAtom10Compared

Slide 20: RSS 2.0 Content Encoding  RSS 2.0 allows both plain text and escaped HTML (‘&’  ‘&’)  But, no way to tell a client that which encoding scheme is currently being used.  This makes the client implementation difficult  In the open Web, software must implement addition logic to detect the encode scheme.

Slide 21: Atom Content Encoding  Atom allows the encoding schema to be explicitly labeled  Plain text (default)  Escaped HTML  Well-format XHTML  Some other XML vocabulary (not XHTML)  Base64 binary content  A “pointer” to Web content not included in the feed

Slide 22: Content Description  Full content vs. Partial content  RSS 2.0: Can’t explicitly describe whether the content is “partial” or “full”  Only <description/> is available  Atom 1.0: Can choose to use <summary/> or <content/>  Full content may be “audio” (binary)  Summary may be a text translation of the audio

Slide 23: How Social Web Applications Use RSS and Atom

Slide 24: How We Use RSS http://www.micropersuasion.com/2006/06/35_ways_you_can.html

Slide 25: RSS & Atom in the Social Web  Syndication is an important foundation of the Social Web (1) Pushing news and updates to the users (2) Describing Web resources (3) Publishing and editing Web resources

Slide 26: Pushing News and Updates  Social Networking sites exploit RSS to build user loyalty – i.e., “news update! come back often”. • My News Feed • Friends’ Mini Feeds • Friends’ Profile Updates • Friends’ Updated Photos • Groups Updates • Events Updates • and more ….

Slide 27: Monitor Changes

Slide 28: Enabling Mashups

Slide 29: Describing Web Resources Solution: RSS http://www.readwriteweb.com/archives/the_future_of_rss.php

Slide 30: Web Resource with Multi-dimensional Properties Resources Relates to a YouTube video Relates to a family trip (link?) (trip’s homepage?) Location Piccadilly Square (latitude/longitude?) John Smith is in this picture Johnny is the photographer (homepage?) (homepage?) Taken on 2007/12/03 @ 10:00PM

Slide 31: Some Examples  Many extensions of feed syndication  GeoRSS – adds geo-location information  OpenSearch – adds Web search support  Google Base – adds resource property description

Slide 32: GeoRSS

Slide 33: OpenSearch  OpenSearch is a specification for discovering search services and describing search and search results.  Spec. adds extensions to RSS and Atom  Search results are described in a syndication document with meta-data about query paging. http://www.opensearch.org

Slide 34: OpenSearch example

Slide 35: Google Base  An open database of many things

Slide 36: Create a GBase Item Item properties

Slide 37: GBase’s Attributes  Extends the Atom spec, GBase defines additional terms for describe GBase Items  Universal Attributes  These applies to all things in GBase  Item Type specific attributes  These applies to a specific kind of GBase items

Slide 38: Universal Attributes

Slide 39: ItemType specific attributes

Slide 40: Course Schedules (e.g.)

Slide 41: Atom Publishing Protocol

Slide 42: About AtomPub  An application-level protocol for publishing and editing Web resources using HTTP and XML. HTTP GET, POST, DELETE Client Server

Slide 43: AtomPub model Remember CRUD? http://bitworking.org/projects/atom/draft-ietf-atompub-protocol-04.html

Slide 44: What can you do with AtomPub?  Ask the server for a list of available resources.  Collections “folders” or “directories”  Entries  e.g. blogs or web pages  Request the server to perform CRUD ops

Slide 45: Create and Read

Slide 46: Update and Delete

Slide 47: Why AtomPub is interesting  Many Web 2.0 sites now implement AtomPub  Google GData API  WordPress  GData is the core API for interacting with Google services: Google Apps, Goolge Base, Blogger, Google Calendar, Google Contact, Google Notebook, Picasa Web Albums, YouTube

Slide 48: Summary  We’ve come along way in creating syndication formats for the Web, from Pointcast to RSS, from RSS 0.90 to RSS 2.0, and then Atom 1.0.  Syndications continue to play important role in the Social Web – for pushing updates to the users, and for describing, publishing and editing web resources.

Slide 49: AtomPub and beyond  The Web is a computing platform  We need protocols like the AtomPub that allows resources to be created and updated via HTTP and XML.

Slide 50: Publishing RSS in gnizr