-
SharpReader is an RSS Aggregator for the .NET framework, created by
Playing with SharpReader XML
Besides being a pretty effective RSS aggregator, the fact that it imports and exports OpmlSpec, all its data files are in XML. (On my machine, these files are in the user's Application Data/SharpReader (in my case: C:\Documents and Settings\Administrator\Application Data\SharpReader) directory, which includes a number of files of interest:
subscriptions.xml
Sample:
<feeds xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" name="Subscribed Feeds" refreshMinutes="60">
<RssFeedsCategory name="Berkeley folks">
<RssFeed name="Hypotyposis on a Good Day" url="http://raymondyee.net/blog/index.rdf" lastRefresh="2003-10-08T09:50:30.0579392-07:00" etag=""3302d2-287d-3f834967"" lastModified="Tue, 07 Oct 2003 23:16:55 GMT"/>
<RssFeed name="rdhyee News" url="http://interactiveu.berkeley.edu:8000/rdhyee/xml/rss.xml" lastRefresh="2003-10-08T09:50:30.0679536-07:00" etag=""e1146572594"" lastModified="Wed, 08 Oct 2003 01:05:02 GMT"/>
<RssFeed name="CA News" url="http://interactiveu.berkeley.edu:8000/ca/xml/rss.xml" lastRefresh="2003-10-08T09:50:30.1580832-07:00" etag=""e1146487312"" lastModified="Thu, 09 Oct 2003 00:46:24 GMT"/>
<RssFeed name="Raymond Yee's Wiki" url="http://raymondyee.net/wiki/RecentChanges?action=rss_rc" lastRefresh="2003-10-08T09:50:30.2482128-07:00"/>
<RssFeed name="rj News" url="http://interactiveu.berkeley.edu:8000/rj/xml/rss.xml" lastRefresh="2003-10-08T09:50:30.7889904-07:00" etag=""e1148823141"" lastModified="Thu, 11 Sep 2003 23:55:55 GMT"/>
<RssFeed name="janelee News" url="http://iu.berkeley.edu/janelee/xml/rss.xml" lastRefresh="2003-10-08T09:50:31.2997248-07:00" etag=""e1147104763"" lastModified="Wed, 01 Oct 2003 21:15:33 GMT"/>
<RssFeed name="freeRadicalized News" url="http://l.editthispage.com/xml/rss.xml" lastRefresh="2003-10-08T09:50:31.8004448-07:00" etag=""e1146516230"" lastModified="Wed, 08 Oct 2003 16:44:26 GMT"/>
<RssFeed name="Mankita News" url="http://interactiveu.berkeley.edu:8000/im/xml/rss.xml" lastRefresh="2003-10-08T09:50:32.2711216-07:00" etag=""e1147103448"" lastModified="Wed, 01 Oct 2003 21:37:28 GMT"/>
<RssFeed name="30 Hours" url="http://interactiveu.berkeley.edu:8000/lj/xml/rss.xml" lastRefresh="2003-10-08T09:50:32.2310640-07:00" etag=""e1146587368"" lastModified="Tue, 07 Oct 2003 20:58:48 GMT"/>
<RssFeed name="dailynotes News" url="http://interactiveu.berkeley.edu:8000/dailynotes/xml/rss.xml" lastRefresh="2003-10-08T09:50:32.2711216-07:00" etag=""e1146563702"" lastModified="Wed, 08 Oct 2003 03:33:14 GMT"/>
<RssFeed name="birdhouse.org" url="http://www.birdhouse.org/blog/index.rdf" lastRefresh="2003-10-08T09:50:32.2711216-07:00" etag=""c6f18-3215-3f825509"" lastModified="Tue, 07 Oct 2003 05:54:17 GMT"/>
<RssFeed name="yinzgandantananat News" url="http://128.32.250.15:8080/yinzgandantananat/xml/rss.xml" lastRefresh="2003-10-08T09:50:32.2711216-07:00" etag=""e1146568420"" lastModified="Wed, 08 Oct 2003 02:14:36 GMT"/>
</RssFeedsCategory>
</feeds>
Having this file available opens up a lot of possibilities. So far, I've been enjoying SharpReader -- though I'm discovering using a RssAggregator can be an addictive experience. (Some much news flowing in all the time....Must get back to work....) I've been using the lock-the-entry feature which lets me pick out entries that I find interesting but don't have time to deal with right away. (Now one school of thought in terms of personal effectiveness is that if I don't time to deal with the entry right away, maybe I shouldn't be reading it at all....but that's a matter for another day.) At any rate, I've accumulated a collection of locked entries that I want to republish.
In addition to handling the locked entries (displaying, aggregating, deleting, saving), I will also just want to publish my blogroll.
Displaying my SharpReader based blogroll in various places
I use a PythonLanguage script (that I plan to publish once it's debugged a bit more) to write out an OpmlSpec BlogRoll that I paste into this wiki (RyRssSubscriptionList). You can use the
raw XML. I'm almost ready to display it prominently on my various blogs. Example displays:
-
displayed via the opmlBlogroll macro {opmlBlogroll("http://raymondyee.net/wiki/RyRssSubscriptionList?action=raw&mimetype=text/xml",cssPrefix:"blogroll",recentlyUpdatedLinkPrefix:"",recentlyUpdatedLinkSuffix:"")}
-
transforming the subscription list using Joshua Allen's XSLT and the W3C service
