rss and atom in the social web

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

Upload: hchen1

Post on 13-Jan-2015

2.876 views

Category:

Technology


2 download

DESCRIPTION

 

TRANSCRIPT

Page 1: RSS and Atom in the Social Web

RSS and Atom in the Social Web

Dr. Harry Chen

CMSC 491S/691S

March 10, 2008

Page 2: RSS and Atom in the Social Web

Agenda

RSS and Atom – history and differencesTheir use in Social Web applicationsAtom Publishing ProtocolPublishing RSS in gnizr

Page 3: RSS and Atom in the Social Web

What’s RSS?

RSS

Really Simple Syndication(RSS 2.0)

RDF Site Summary(RSS 1.0, RSS 0.90)

Rich Site Summary(RSS 0.91)

There is a story behind all those names…

Page 4: RSS and Atom in the Social Web

Before RSS (before 1997)

Before blogs and feeds, PointCast experimented news “push and pull”.

Page 5: RSS and Atom in the Social Web

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 @ Googlehttp://en.wikipedia.org/wiki/Ramanathan_V._Guha

Page 6: RSS and Atom in the Social Web

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)

The Birth of RSSNote: RSS has its roots in RDF

Page 7: RSS and Atom in the Social Web

RSS at the Forkroad

RSS-Dev Working Group

(R.V. Guha)Dave Winer

RSS 0.91

RSS 1.0 (Dec. 2000)

RSS 0.93, 0.94 (withdrawn)

RSS 2.0 (Sept 2002)

Page 8: RSS and Atom in the Social Web

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?

Page 9: RSS and Atom in the Social Web

Timeline

Source: http://www.shopwithoutborders.com/history.html

Where did this come from?

Page 10: RSS and Atom in the Social Web

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.

AtomEnabledhttp://atomenabled.org

Page 11: RSS and Atom in the Social Web

About Atom

XML, not RDFTwo different specifications

Atom Format Syndication Atom Publishing Protocol

Page 12: RSS and Atom in the Social Web

RSS vs. Atom

Page 13: RSS and Atom in the Social Web

Overview

RSS 1.0RSS 2.0Atom 1.0

Examples are adopted from http://www.mnot.net/rss/tutorial/

Page 14: RSS and Atom in the Social Web

RSS 1.0

Is an RDF document

“Channel” has a list of “Items”

An “Item” has a “title”, “link”, “description” etc.

Page 15: RSS and Atom in the Social Web

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)

Page 16: RSS and Atom in the Social Web

RSS 2.0

An XML document Not RDF

Page 17: RSS and Atom in the Social Web

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

Page 18: RSS and Atom in the Social Web

Atom

An XML document; defines some useful syndication concepts that are missing RSS 1.0 and RSS 2.0

Page 19: RSS and Atom in the Social Web

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

Page 20: RSS and Atom in the Social Web

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.

Page 21: RSS and Atom in the Social Web

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

Page 22: RSS and Atom in the Social Web

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

Page 23: RSS and Atom in the Social Web

How Social Web Applications Use RSS and Atom

Page 24: RSS and Atom in the Social Web

How We Use RSShttp://www.micropersuasion.com/2006/06/35_ways_you_can.html

Page 25: RSS and Atom in the Social Web

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

Page 26: RSS and Atom in the Social Web

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

Page 27: RSS and Atom in the Social Web

Monitor Changes

Page 28: RSS and Atom in the Social Web

Enabling Mashups

Page 29: RSS and Atom in the Social Web

Describing Web Resources

Solution: RSS

http://www.readwriteweb.com/archives/the_future_of_rss.php

Page 30: RSS and Atom in the Social Web

Web Resource with Multi-dimensional Properties

Resources

Relates to a YouTube video(link?)

John Smith is in this picture(homepage?)

Taken on 2007/12/03 @ 10:00PM

Johnny is the photographer(homepage?)

Relates to a family trip(trip’s homepage?)

Location Piccadilly Square(latitude/longitude?)

Page 31: RSS and Atom in the Social Web

Some Examples

Many extensions of feed syndication GeoRSS – adds geo-location information OpenSearch – adds Web search support Google Base – adds resource property

description

Page 32: RSS and Atom in the Social Web

GeoRSS

Page 33: RSS and Atom in the Social Web

OpenSearch

OpenSearch is a specification for discovering search services and describing search and search results.

Spec. adds extensions to RSS and AtomSearch results are described in a

syndication document with meta-data about query paging.

http://www.opensearch.org

Page 34: RSS and Atom in the Social Web

OpenSearch example

Page 35: RSS and Atom in the Social Web

Google Base

An open database of many things

Page 36: RSS and Atom in the Social Web

Create a GBase Item

Item properties

Page 37: RSS and Atom in the Social Web

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

Page 38: RSS and Atom in the Social Web

Universal Attributes

Page 39: RSS and Atom in the Social Web

ItemType specific attributes

Page 40: RSS and Atom in the Social Web

Course Schedules (e.g.)

Page 41: RSS and Atom in the Social Web

Atom Publishing Protocol

Page 42: RSS and Atom in the Social Web

About AtomPub

An application-level protocol for publishing and editing Web resources using HTTP and XML.

Client Server

HTTPGET, POST, DELETE

Page 43: RSS and Atom in the Social Web

AtomPub model

http://bitworking.org/projects/atom/draft-ietf-atompub-protocol-04.html

Remember CRUD?

Page 44: RSS and Atom in the Social Web

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

Page 45: RSS and Atom in the Social Web

Create and Read

Page 46: RSS and Atom in the Social Web

Update and Delete

Page 47: RSS and Atom in the Social Web

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

Page 48: RSS and Atom in the Social Web

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.

Page 49: RSS and Atom in the Social Web

AtomPub and beyond

The Web is a computing platformWe need protocols like the AtomPub that

allows resources to be created and updated via HTTP and XML.

Page 50: RSS and Atom in the Social Web

Publishing RSS in gnizr