Active Web: Triggers vs. RSS

Slides:



Advertisements
Similar presentations
RSS RSS is an acronymn for Really Simple Syndication or Rich Site Summary. RSS (noun) - an XML format for distributing news headlines on the Web. RSS.
Advertisements

Basic Searching Engineering Village. Agenda What is Engineering Village? Setting up a personal account Searching Engineering Village How to.
Advanced Searching Engineering Village.
Engineering Village ™ Basic Searching.
RSS 2.0: Experience with implementation in a closed Intranet Presented by Mr Ajith Balan Scientific Officer Scientific Information Resource Division Bhabha.
METSÄNTUTKIMUSLAITOS SKOGSFORSKNINGINSTITUTET FINNISH FOREST RESEARCH NSTITUTE RSS-feed a new way to provide information internationally Jarmo.
IDK0040 Võrgurakendused I RSS 2.0 Deniss Kumlander.
Creating and Managing RSS Feeds Kate Pitcher SUNY Geneseo © 2005
RSS, real simple syndication Skills: subscribe to feeds, read feeds IT concepts: RSS feed, polling vs. publish- subscribe, stand-alone vs Web based reader,
What is RSS? Kate Pitcher ©
5/8/2006apatwa/SecureRSS 1 Secure RSS CS526 Class Project Ankur Patwa.
1 of 2 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2007 Microsoft Corporation.
RSS F EEDS Greg Vogl, Research and Development Services Colorado State University Libraries December 9, 2008.
Mark Frydenberg Computer Information Systems Department.
CIT 383: Administrative ScriptingSlide #1 CIT 383: Administrative Scripting RSS.
Web 2.0: Concepts and Applications 3 Syndicating Content.
RSS RSS is a method that uses XML to distribute web content on one web site, to many other web sites. RSS allows fast browsing for news and updates.
RSS is an acronym for Really Simple Syndication or Rich Site Summary. RSS (noun) - an XML format for distributing news headlines on the Web.
Don Westover Director of Instructional Design Mount Wachusett Community College.
Defining Blogs & RSS Feeds. What is a blog?  A web log  Definition by Darlene Fichter….a blog is a “web page containing brief entries arranged chronologically.”
1 of 7 This document is for informational purposes only. MICROSOFT MAKES NO WARRANTIES, EXPRESS OR IMPLIED, IN THIS DOCUMENT. © 2007 Microsoft Corporation.
RSS Feeds in AquaBrowser Library Staff Training Upper Midwest Users Group Conference 18 October 2011 Nina Mentzel, SDLN
+ RSS Aggregation and Syndication. + Really Simple Syndication (aka, Rich Site Summary) Image source:
The Basics of RSS What is RSS? Using Mozilla Firefox Live Bookmarks How to Manually Create a Feed Where to Find RSS Feeds RSS Resources.
Bloglines: LISD Brown Bag Webinar, February 23, 2010.
Web Syndication Presented by: Gani Dragusha. What is Web Syndication? What is RSS? History of RSS Advantages / Disadvantages RSS New Features Web Syndication.
Creating a Web Page HTML, FrontPage, Word, Composer.
Web 2.0: Concepts and Applications 3 Syndicating Content.
_______________________________________________________________________________________________________________ E-Commerce: Fundamentals and Applications1.
A guide for UICET for using Wikispaces.  A wiki is a web page or collection of web pages that can be linked together as a website.  Wikis are often.
4.1 JavaScript Introduction
Adventures in Radio UserLand Lincoln Cushing, UC Berkeley Institute of Industrial Relations Library.
Setting Up an RSS Feed 1 Project by iWEBbic.com 1.
XP New Perspectives on The Internet, Fifth Edition— Comprehensive, 2005 Update Tutorial 7 1 Mass Communication on the Internet Using Newsfeeds Tutorial.
Client Scripting1 Internet Systems Design. Client Scripting2 n “A scripting language is a programming language that is used to manipulate, customize,
What is RSS? and Why Should You (teacher, librarian, student) Care?” Jo Ann Ponville EBRPSS Instructional Technology Facilitator.
Web Syndication Leon Wu Columbia University April 10, 2007.
My Workspace ELearning in Sakai Randy Graff, PhD HSC Training.
Wiki Space Introduction How to use Wiki spaces to complete your project on the Crusades.
Wikispaces in Education Tutorial Fatema Kashoob Nawal ALKathiri
R. Suresh (NASA/MTECH) Ben Burford (JAXA) Bernhard Buckl (DLR) Contact: - CEOS WGISS Meeting, Beijing, China, September 2004 A RSS.
XML - RSS Cathy Hsu. What’s RSS? RSS is considered a name variously used to refer to three different standards –Really Simple Syndication (RSS0.9) –Rich.
Introduction to EBSCOhost Tutorial support.ebsco.com.
Core Publisher: Creating Programs. Creating Programs in Composer Pro.
IBM Lotus Software © 2006 IBM Corporation IBM Lotus Notes Domino Blog Template Steve Castledine.
Module: Software Engineering of Web Applications Chapter 2: Technologies 1.
Program Assessment User Session Experts (PAUSE) Information Sessions: RSS & Subscription Services October , 2006.
RSS Interfaces and Standards Chander Iyer. Really Simple Syndication (RSS) Web data format providing users with frequently updated content. Make a collection.
RSS Syndication CS 431 – Carl Lagoze – Cornell University.
CREATE, IMPLEMENT AND ENJOY! Blogs,Wikis & RSS Readers.
Getting Your Content in the Penn State Student Portal Presented By James Leous, Program Manager James Vuccolo, Lead Research Programmer.
Windows Vista Configuration MCTS : Internet Explorer 7.0.
1 ODF and Web Mashups Basic techniques Rob Weir, IBM :15.
Section 10.1 Define scripting
Are You Hungry Yet? RSS Feeds and the New Ways we Collect Information
Feed: RSS/ATOM, Podcast
LMEvents SharePoint Portal How-to Guide
“Real Simple Syndication” (RSS)
RSS What can it do for you? Rachel Hyland Systems Librarian
Getting started on informaworld™
Tutorial Introduction to support.ebsco.com.
Data Collection in MTM Choosing the right method for survey data collection.
RSS, Blogs and Search Marketing:
Triggers A trigger is a statement that is executed automatically by the system as a side effect of a modification to the database. To design a trigger.
Web Tools A Technical Perspective Tim Bornholtz
WISER Humanities: Keeping up to date
Introduction to World Wide Web
RSS RSS is an acronymn for Really Simple Syndication or Rich Site Summary. RSS (noun) - an XML format for distributing news headlines on the Web. RSS.
Tutorial Introduction to help.ebsco.com.
By: Matthew Mauriello ICSI 668 – Fall 2008
Presentation transcript:

Active Web: Triggers vs. RSS Dongwon Lee, Ph.D. IST 516 Fall 2011

Outline Active vs. Passive Triggers in DBMS RSS on the Web

Passive DBMS Client-Server architecture Client (users) Inserts data into server Retrieves data from server Server (DBMS) waits for client’s request Until client issues queries, server sits there “passively”

How? Suppose client wants to monitor if an event X happens to server

Push vs. Pull Technology Client-Server architecture Push technology Server pushes information to client TV broadcasting Pull technology Client pulls information from server Purchasing books from bookstore From server’s perspective Pull = “Passive” server / Push = “Active” server Server Client LAN

Method 1: Polling Client periodically asks to server if X happens Called “Polling” Pros Simple implementation to client No change needed to server Cons How often does client poll? Every minute, hour? If poll too seldom  may miss the event X If poll too often  too costly, burden to server

Method 2: Active DBMS Polling is not good enough for advanced applications Ideal: when the event X occurs, server notifies to client Called “Active” DBMS Steps: 1: client notifies to server that it is interested in the event “X” 2: server monitors if “X” occurs or not 3: when “X” occurs, server notifies to client

Method 2: Active DBMS Steps: 1: client notifies to server that it is interested in “X”: Subscription 2: server monitors if “X” occurs or not: Monitoring 3: when “X” occurs, server notifies to client: Notification Subscription in DBMS is expressed in Triggers

Triggers A method to implement the Active DBMS A trigger is a statement that is executed automatically by the system as a side effect of a modification to the database. To design a trigger mechanism, we must: Specify the conditions under which the trigger is to be executed. Specify the actions to be taken when the trigger executes.

Trigger Example in SQL, 1999 create trigger overdraft-trigger after update on account referencing new as nrow for each row when nrow.balance < 0 begin atomic insert into borrower (select customer-name, account-number from depositor where nrow.account-number = depositor.account-number); insert into loan values (n.row.account-number, nrow.branch-name, – nrow.balance); update account set balance = 0 where account.account-number = nrow.account-number end

Triggers Example in MS SQL Server create trigger overdraft-trigger on account for update if inserted.balance < 0 begin insert into borrower (select customer-name,account-number from depositor, inserted where inserted.account-number = depositor.account-number) insert into loan values (inserted.account-number, inserted.branch-name, – inserted.balance) update account set balance = 0 from account, inserted where account.account-number = inserted.account-number end

Active Web One wants to monitor web sites to see if an event “X” occurs or not How? If each web site is DBMS, then using Active DBMS (ie, Triggers), “Active Web” can be implemented But Not all web sites are backed up by DBMS Not all DBMS of web sites can be accessed

Active Web Full-blown push technique is impossible on Web Web pages simply do not have the push capability Pull technique is viable But how to specify the event “X” in a generic manner? Solution Pulling data via XML-based polling  RSS

RSS = RDF Site Summary = Really Simple Syndication Lightweight XML format designed for sharing headlines and other Web content Idea Each web site publishes updates in RSS format Client periodically retrieves updates from web sites of interest (ie, Polling) Since RSS format is in XML model, easy to interpret

Brief “Messy” History 0.9: original RSS format by Netscape (1999) 0.91: simple RSS format by UserLand 0.92-0.94: improvement to 0.91 by UserLand 1.0: RDF-based improvement by RSS-DEV Working Group – stable core 2.0: general-purpose RSS by UserLand – stable core  Popular version (as of 2011) 7 RSS formats by 3 groups are being used

RSS Briefs RSS is in XML format <rss> contains any number of <channel> <channel> has elements: <title>, <link>, <description>, <language>, <copyright>, <rating>, <image> … <channel> contains any number of <item> <item> has elements: <title>, <link>, <description>, <author>, <category>, <comments>, <pubDate> …

Application Scenario “Renee” wants to monitor IST 777 web page, but does not want to browse it every day The instructor is cooperative so that he agrees to write updates in RSS format and store them in a pre-arranged location “Renee” writes a piece of Java code that can Retrieve updates from IST 777 regularly If there is interesting update, email to “Renee” Then, let the java code run and monitor IST 777

RSS 0.91 <rss version="0.91"> <channel>     <title>IST777</title>     <link>http://pike.psu.edu/classes/IST777/latest</link>     <description>IST777 web page.</description>     <language>en-us</language>     <item>       <title>Active Web</title>       <link>http://pike.psu.edu/classes/IST777/latest/rss.ppt</link>        <description>Presentation slide for active web.</description>     </item>     <item>       <title>Proj#1 Newsl</title>       <description>Proj#1 is due on XXX midnght…description>     </item> </channel> </rss>

RSS 1.0 <rdf:RDF   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"   xmlns="http://purl.org/rss/1.0/“ xmlns:dc="http://purl.org/dc/elements/1.1/"> <channel rdf:about="http://pike.psu.edu/classes/IST777">   <title>IST777</title>   <link>http://pike.psu.edu/classes/IST777/latest/</link>   <description>IST777 web page.</description>   <language>en-us</language>   <items>       <rdf:Seq>         <rdf:li rdf:resource=" link>http://pike.psu.edu/classes/IST777/latest/rss.ppt "/></rdf:Seq> …      </items> <item>       <title>Active Web</title>       <link>http://pike.psu.edu/classes/IST777/latest/rss.ppt</link>        <description>Presentation slide for active web.</description> <dc:creator>Dongwon Lee</dc:creator>      <dc:date>2011-01-01</dc:date>        </item> …    </channel> </rdf:RDF>

RSS 2.0 <rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"> <channel>   <title>IST777</title>   <link>http://pike.psu.edu/classes/IST777/latest/</link>   <description>IST777 web page.</description>   <language>en-us</language>   <item>       <title>Active Web</title>       <link>http://pike.psu.edu/classes/IST777/latest/rss.ppt</link>        <description>Presentation slide for active web.</description> <dc:creator>Dongwon Lee</dc:creator>      <dc:date>2011-01-01</dc:date>        </item> …    </channel> </rss>

RSS Readers/Aggregators Software that can read RSS feeds from the chosen content providers Really a generalization of the Renee’s Java code in the aforementioned example Eg FireFox Live Bookmarks: http://www.mozilla.com/en-US/firefox/livebookmarks.html Awasu: http://www.awasu.com/ FeedDemon: http://www.feeddemon.com/ NewsCrawler: http://www.newzcrawler.com/ RSSReader: http://www.rssreader.com/ Google Reader: http://www.google.com/reader

VHS vs. Beta Alternative to RSS: Atom, MetaWeblog API RSS was originally designed for news feeds in 1999 To list short and simple headlines RSS does not fit well into some of the currently popular web applications (eg, Blog) Too messy specifications of RSS Who will win?...

Atom 1.0 New XML-based syndication format V 1.0: IETF RFC, 2005 More robust and feature-rich than RSS RSS 2.0 is copyrighted by Harvard U. No further change/development is possible Better well-defined elements than RSS Better handling of contents than RSS Content: plain text, HTML, XHTML, XML, binary RSS: <channel> has multiple <item> Atom: <feed> has multiple <entry>

<id>, <title>, <updated> Atom 1.0 Elements <feed> contains: <id>: feed ID <title> <updated> <author>: have <name>, <email>, <uri> <link>: related page <category> … <entry> contains: <id>: entry ID <title> <updated> <author>: have <name>, <email>, <uri> <content> <link>: related page <category> <summary> … Mandatory elements: <id>, <title>, <updated>

RSS vs. Atom Comparison http://www.intertwingly.net/wiki/pie/Rss20AndAtom10Compared

RSS vs. Atom Comparison http://www.intertwingly.net/wiki/pie/Rss20AndAtom10Compared

Eg #1: ist.psu.edu

Eg #1: ist.psu.edu The XML Source view of IST’s RSS

Eg #1: ist.psu.edu (RssReader) Place the mouse arrow on the RSS icon: Click the right mouse, then choose "Copy Shortcut". Start RssReader and go to add(+) channel/feed and then paste (click right mouse button) the url and press ok.

Eg #1: ist.psu.edu (RssReader) When new RSS item is updated at the IST site, RssReader notifies it to the user automatically

Eg #2: PSU Daily Live http://live.psu.edu/rss

Eg #2: PSU Daily Live

Eg #2: PSU Daily Live Subscribe Here

Eg #2: PSU Daily Live (FireFox) Using FireFox live bookmarks:

How to Generate RSS Feed? In your server, designate one location for RSS feed and announce it Eg, http://foo.bar.com/rss/ Generate news/update contents in an XML document (complying to either RSS or ATOM syntaxes) Eg, use XMLPad for RSS 2.0 format Put them into the designated location That’s ALL ! Wait for your contents to be PULLed by RSS readers

Eg #3: Publish RSS using PASS https://explorer.pass.psu.edu/ Public web folder Create a folder under “www” as the designated place for RSS feeds

Eg #3: Publish RSS using PASS 1. Designate a sever location for RSS: Eg, http://www.personal.psu.edu/dul13/rss/

Eg #3: Publish RSS using PASS 2. Write a RSS news using XMLPad  “rss.xml”

Eg #3: Publish RSS using PASS 3. Upload “rss.xml” to PASS’s rss folder: Eg, http://www.personal.psu.edu/dul13/rss/

Eg #3: Publish RSS using PASS 4. Read the RSS feed using a RSS reader s/w

Reference RSS at Harvard Law, Dave Winer, 2007 http://cyber.law.harvard.edu/rss/rss.html The Atom Syndication Format, 2005 http://tools.ietf.org/html/rfc4287