blogs & feeds jim des rivieres oct. 16, 2008. grappling with question of how to present...

70
Blogs & feeds Jim des Rivieres Oct. 16, 2008

Upload: ashley-hampton

Post on 24-Dec-2015

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

Blogs & feeds

Jim des RivieresOct. 16, 2008

Page 2: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Grappling with question of how to present Jazz/OSLC data resources

• “Pure” data resources are presentation-free

• Okay for programmatic clients - robots

• But how do they get presented to humans???

Page 3: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Blogs and Atom/RSS feeds– Has similar issues

• Ask: How do blogs and feeds work?

• Mine for ideas on how to solve for Jazz

Page 4: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Blogs are hosted at web sites

Page 5: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Native blog page is text/html• Page generated by blogging web site

Page 6: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Page has blog entries embedded in it

Page 7: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Browsers have hard-wired support for feeds (Atom and RSS)

• Each blog has an associated feed

Page 8: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Browser discovers feed links from special <link> elements in HTML header

Page 9: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Browser presents feeds using hard-wired feed view

Page 10: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Feed is XML document - application/atom+xml• Generated by blogging web site

Page 11: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Feed has blog entries embedded in it

Page 12: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Browser recognizes feed by inspecting XML– Looks for <feed> as root document element– Looks for Atom XML namespace

• Browser ignores Content-Type response header– Works if document is text/plain

Page 13: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Browsers feed view allows navigation to blog

Page 14: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Browser discovers this from special <link> element in feed header

Page 15: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Subscribe to feed pops up browser dialog to add to browser favorites

Page 16: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Feed entries may contain other info that is not presented by browser feed view…– Comments on entries is not an Atom concept

Page 17: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• …but do show up in native blog view– Comments on entries is known to blog site

Page 18: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Feed entries may also contain info that is presented by neither native blog page nor browser feed view

Page 19: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Feed entries have their own URLs

Page 20: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Feed entries have links back to native blog entry

Page 21: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Feed document sometimes carry XML stylesheets– Used to make XML document directly renderable by browsers– Browser applies XML stylesheet (CSS, XSL) to XML document

• Ignored by hard-wired browser feed view

Page 22: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• XML feed rendered with XML stylesheet (simulated)

Page 23: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Different XSL style sheet

Page 24: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• XML feed rendered with XML stylesheet (simulated)

Page 25: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

Feed aggregation

Page 26: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Aggregation sites collect entries from various feeds

• Presents entries through its own native view

Page 27: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Links in aggregated blog entries refer to original blog entry

Page 28: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Allowing navigation back to native blog page

Page 29: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Aggregation site also publishes its own feed

Page 30: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Which is viewable with browser feed view (like any other feed)

Page 31: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Links in feed entries refer to original blog entry

Page 32: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Allowing navigation back to native blog page

Page 33: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

Recap – Story so far

• User does not choose presentation of blog entry

• Choice of presentation is determined by how user gets to blog entry

Page 34: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

Feed readers

• Give users (as opposed to authors) a way to aggregate entries from diverse feeds

• Two main types– Web-based– Desktop tool

Page 35: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

Web-based feed readers

• Nothing extra installed on client machine– Not even browser plug-in/add-in

• All preferences/state maintained on remote web server

Page 36: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Web-based feed readers

Page 37: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Allow you to…

Page 38: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• …to discover feeds

Page 39: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• …and to subscribe to them

Page 40: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• New entries are presented in web feed reader• Disappear from sight once read

Page 41: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Some links in blog entries refer to original blog entry

Page 42: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Allowing navigation back to native blog page

Page 43: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Some links in blog entries are within the web feed reader

Page 44: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Allowing in-place browsing of feeds that you’ve subscribed to

Page 45: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Adding subscription from feed URL• Who reads feed document? Browser? Web feed reader

server?

Page 46: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Browser talks to web feed reader server exclusively• Browser POSTs subscribe request to reader server API• Reader server retrieves and processes feed• Browser GETs list of unread items via reader server API

Page 47: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

Desktop feed readers

• Desktop app installed on client machine

• Preferences/state maintained on client– Sometimes on remote server (optionally)

Page 48: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Desktop feed readers

Page 49: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Let you subscribe to feeds

Page 50: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• New entries are presented in feed reader

• Disappear from sight once read

Page 51: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Some links in blog entries refer to original blog entry

Page 52: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Allowing navigation back to native blog page• Opened in-place with browser widget

Page 53: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

Feedburner

Page 54: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Some blogs use feedburner

Page 55: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Navigation from blog entry…

Page 56: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• …redirects to feed view on feedburner.com

Page 57: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Lets you subscribe with popular web feed readers

Page 58: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Hyperlinks go to web feed reader server– Pass feed URL as parameter

Page 59: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Also lets you subscribe with popular desktop feed readers

Page 60: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• As well as navigate to feed document

Page 61: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• Hyperlink to feed XML

Page 62: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

• For viewing in browser feed view

Page 63: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

Recap

• Blogs and blog entries have URLs• Presentation level - HTML document• http://inside-swt.blogspot.com/• http://planet-oti.muellerware.org/

• Feeds and feed entries have URLs• Data level - XML document• http://inside-swt.blogspot.com/feeds/posts/default• http://planet-oti.muellerware.org/atom.xml

• Rich cross-linking– Within levels– Across levels

Page 64: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

Recap

• Each feed/entry resource has a native web presentation

Page 65: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

Recap

• Use special <atom:link> elements embedded in feed resource

• Uses special <html:link> elements embedded in HTML resource

• Does not use content negotiation– (except for a few anomalies with feedburner)

Page 66: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

Recap

• Story relies in places on browser built-in feed view– Allows direct hyperlinking from presentation to

data level– Allows feed URL to be typed in to browser

Page 67: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

Recap

• Many, many presentations for a blog entry– Native presentation at originating blog– Each browser feed view

• Slightly different for each browser

– Native presentation at each aggregation site– Web-based feed readers– Desktop feed readers

Page 68: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

Recap

• User does not choose presentation of blog entry

• Choice of presentation is determined by how user gets to blog entry

• User is free to choose which feed reader to use– Optional

Page 69: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-

Thanks

• Fiddler Web Debugging Proxy– Free Microsoft tool for Windows– Lets you inspect HTTP traffic that IE sends– Approved for individual IBM-internal use– http://www.fiddler2.com/fiddler2/

Page 70: Blogs & feeds Jim des Rivieres Oct. 16, 2008. Grappling with question of how to present Jazz/OSLC data resources “Pure” data resources are presentation-