RSS

Difference between version 62 and 63 - Previous - Next
'''RSS''', which stands for '''RDF Site Summary''' (RSS 0.9, 1.0) or '''Rich Site Summary''' (RSS 0.91) or '''Really Simple Syndication''' (RSS 2.0), is an [XML] dialect to describe updates to websites with changing content (like news sites, or [Slashdot], or this wiki).

There were some http://web.archive.org/web/20040803163813/http://www.blogroots.com/comments.blog/172%|%heated debates%|% about which of the competing spec versions "was RSS".  At its core it is an [XML] file format for providing summaries of websites with news.  An RSS document consists of one or more channels with one or more items.  Each item is usually a news story with a title, a link, and possibly a description.  RSS 2.0 allows more properties for each item.

[SC]'s Wiki was an early implementation of [Wikit] with an RSS feed.  That is, you could get the "Recent Changes" page as an RSS file.  This wiki has an http://wiki.tcl.tk/rss.xml%|%RSS feed%|% as well.


** See also **

   * [A little RSS reaper]   * Alternative formats: https://en.wikipedia.org/wiki/[Atom_(Web_standard)%|%Atom%|%], [JSON Feed], [twtxt]
   * [RSS Monitor] — a small Tcl script intended to be run as a cron job which checks a series of RSS feeds and sends an email when one is updated
   * [RS's RSS]
   * [Static site generator%|%Static site generators] and [weblog] software: [giggle], [tclog], [Tclssg] support RSS
   * [TAX RSS]
   * [Tcl content feed] (defunct) aggregated various Tcl related announcements and blog posts into a RSS or JSON feed
   * [TclRSS]
   * [TIL] https://github.com/efrecon/til/tree/master/rss/%|%RSS Module%|%
   * [tmlrss]
   * [Twitter] — Twitter has replaced RSS in many corners of the Internet


** Discussion **

[DKF] ''4 Dec 2006'': We should get [jcw] to update [wikit] to put in a magic incantation like this into each page's HTML header:
 <link rel="alternate" type="application/rss+xml" title="RSS" href="/rss.xml">
as this would make browsers like [Firefox] add information to the display to advertise the fact of the RSS feed to users. Which would be nice. :-) ... '''done by [colin] May 2007'''

----

[LV] In the category ''what will they think of next'' we have
[http://news.com.com/Microsoft+seeks+patent+covering+Web+feed+readers/2100-1012-6145636.html?part=dht&tag=nl.e433].

----

[LV] So, what does one do with RSS?  For what purpose does one make
data available in this format?  For what can one use it that they couldn't
just use the html pages?

[MR] Larry, it lets people easily track updates or changes from a large number
of websites very quickly, using an application called a news aggregator.  Rather
than having to visit 50 websites for news, all the latest headlines are downloaded
automatically and shown in a way that makes it very quick to see only what is
new, and read just what I want.  Since very recently adding it to [CourseForum]
and [ProjectForum] its been a godsend, letting me monitor dozens of Wiki sites
with practically zero effort.

----

[LV] Ah, Mark, so it is a format that some applications can interpret and use to display a series of links.  Allows one, it appears, to do some sort of dynamic personalization of headlines or whatever the site wants to advertise.

[MR] Sort of.  See e.g. the main window screenshot linked to from http://ranchero.com/netnewswire/

----

[Petteri K] offers
    lynx -source http://www.iki.fi/petterik/rss.cgi > rss.cgi
    tclsh rss.cgi 0b00 
as a demonstration of RSS capabilities.

[LV] I am uncertain what this script is for.  When I run it, all I see is a series of lines from ActiveState.  I do not seem to see anything from the other URLs listed in the script.  I added two URLs - one for Tcler's Wiki and one for Steve's Wiki (listed above) - surely their sites should have shown up in the rss.cgi's output.

----

A nice discussion from another Wiki: [web.archive.org/web/20050509022346/http://twiki.sourceforge.net:80/cgi-bin/view/Codev/RichSiteSummary].

----

[LV] What Tcl-related sites provide RSS information?  Is the Tcl-URL provided
in RSS?  Other information?  Could the Tcl-URL editors make use of RSS someway?

----

[Scott Gamon] - I, for one, would love to see a RSS feed for Tcl-URL.  Or a RSS feed for news:comp.lang.tcl.

[NEM]: (Discussion of my, now dead, cgi usenet/rss bridge removed). Google groups do [Atom] feeds of news groups, including Tcl: [http://groups.google.com/group/comp.lang.tcl/about]

----

Another tool available for providing a bridge between newsgroups and RSS is http://freshmeat.net/projects/nntp2rss/ .

----
I recently noticed an article at http://www.macdevcenter.com/pub/a/mac/2004/03/12/rss_scripting.html which demonstrates some rather basic shell scripts
for retrieving and displaying RSS.  In the following comments, someone shows
a tremendously simple script in REBOL for doing similar functionality, and
someone mentions that perl and python both have even better facilities.

Would it be useful to promote the TclRSS extention, mentioned above, into 
[Tcllib]? 
----

[Philip Quaife] ''6 Feb 05'', I don't know what the fuss is with RSS, but I had a bash at decoding with regexps. Works with some rss or rdf feeds, but not sourceforge.

Takes a file and splits the fields into an array. Just prints out the array as an example. YMMV.

 #
 # Read RSS Feeds
 #


 set f [open $argv r]
 set data [read $f]
 close $f

 # Process an RSS File
 if {1 || [string first <rss $data] != -1} {
 foreach {- channel} [regexp -all -inline {<channel[^>]*>(.*?)</channel>} $data] {
        #get channel options
        set chopt [join [regexp -inline {.*?(?=<item>)} $channel]]
        puts "RSS CHANNEL\\$channel\\"
        regsub -all {<(.*)>([^<]*)</\1>} $chopt "\\1 {\\2}" opts
        array set options $opts
        parray options
        puts ""
        unset options
        foreach {- item} [regexp -all -inline {<item>(.*?)</item>} $channel] {
          regsub -all {<([^ ]+)[^<]*>([^<]*)</\1>} $item "\\1 {\\2}" opts
          array set options $opts
          puts "RSS ITEM  ([array names options])"
          parray options
          puts ""
          unset options
        }

 }
 }

 # Process a RDF file
 if {[string first <rdf $data] != -1} {
 foreach {- channel} [regexp -all -inline {<channel>(.*?)</channel>} $data] {
        #get channel options
        puts "RDF CHANNEL"
        regsub -all {<(.*)>([^<]*)</\1>} $channel "\\1 {\\2}" opts
        array set options $opts
        parray options
        puts ""
        unset options
        foreach {- item} [regexp -all -inline {<item>(.*?)</item>} $data] {
          regsub -all {<([^ ]+)[^<]*>([^<]*)</\1>} $item "\\1 {\\2}" opts
          array set options $opts
          puts "RDF ITEM ([array names options])"
          parray options
          puts ""
          unset options
        }
        break
 }
 }


----

"Bloglines" is a popular Web-based reader.  It has nothing to do with Tcl,
apparently--but is an example of a popular client.

----

[George Petasis] It seems that the [TIL] packages (rssparser, rsswatch) are also included in ActiveTcl (its teapot repository).

----

[LV] So, is the format used by people providing podcasts some version of RSS?
The reason I ask is that jPodder, the podcast application I've been using, 
handles some feeds I've found, but others seem to just confuse it.

<<categories>> Glossary | Internet