<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>RSSBus</title>
        <link>http://geekswithblogs.net/Lance/category/4503.aspx</link>
        <description>www.rssbus.com</description>
        <language>en-US</language>
        <copyright>Lance Robinson</copyright>
        <managingEditor>lmrobins@gmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <item>
            <title>Building Enterprise Mashups using RSSBus</title>
            <link>http://geekswithblogs.net/Lance/archive/2008/09/09/building-enterprise-mashups-using-rssbus.aspx</link>
            <description>&lt;p&gt;&lt;/p&gt;  &lt;p&gt;Microsoft MVP Richard Seroter started a series of posts on building enterprise mashups using RSSBus.  &lt;a href="http://seroter.wordpress.com/2008/09/05/building-enterprise-mashups-using-rssbus-part-i/"&gt;Part 1&lt;/a&gt;, and &lt;a href="http://seroter.wordpress.com/2008/09/08/building-enterprise-mashups-using-rssbus-part-ii/"&gt;Part 2&lt;/a&gt;.&lt;/p&gt;  &lt;blockquote&gt;   &lt;p&gt;A few weeks ago our Executive Director / Chief Architect / Technology Overlord recently asked me to build a real, live enterprise mashup application to demonstrate for our IT leadership group. &lt;strong&gt;Our goal was to show that &lt;a href="http://www.rssbus.com/"&gt;RSSBus&lt;/a&gt; could be used to quickly and efficiently aggregate data in compelling new ways&lt;/strong&gt;.   In the next few posts, I’m going to walk through our use case, and how I built a solution to solve this.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;In &lt;a href="http://seroter.wordpress.com/2008/09/05/building-enterprise-mashups-using-rssbus-part-i/"&gt;this first post&lt;/a&gt;, Richard provides an outline of his problem, the solution he decided on, and how he would use RSSBus to help accomplish his goal.&lt;/p&gt;  &lt;p&gt;In the &lt;a href="http://seroter.wordpress.com/2008/09/08/building-enterprise-mashups-using-rssbus-part-ii/"&gt;second post&lt;/a&gt;, he demonstrates how he built feeds for his Excel sheets, his database, and a Google search.  One thing he didn’t mention is the guid for the items in the feed.  If the connector/script doesn’t create its own custom guid, the RSSBus engine will generate one itself by hashing all the attribute values.  This means that if anything about one of Richard’s customers changes, a new guid will be generated for the item pushed for that customer.  Sometimes this sort of automatic guid generation is not desired.  If Richard wanted to kill that behavior, he’d simply need to generate his own rss:guid in his script prior to pushing the item to the response stream.&lt;/p&gt;  &lt;p&gt;I’ve talked about using RSSBus to build mashups before:    &lt;br /&gt;&lt;a href="http://www.lancerobinson.net/archive/2008/05/06/rssbus-simple-ways-to-connect-data.aspx"&gt;RSSBus: Simple Ways to Connect Data&lt;/a&gt;     &lt;br /&gt;&lt;a href="http://www.lancerobinson.net/archive/2007/05/25/RSSBus-as-a-mashup-tool.aspx"&gt;RSSBus as a mashup tool&lt;/a&gt;     &lt;br /&gt;&lt;a href="http://www.lancerobinson.net/archive/2007/04/15/111681.aspx"&gt;You can connect all sorts of data and systems together using RSS&lt;/a&gt;     &lt;br /&gt;&lt;a href="http://www.lancerobinson.net/archive/2007/02/08/105806.aspx"&gt;Connecting sources of data, online or off&lt;/a&gt;     &lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:523623da-1636-4bbb-930a-f1da78ae8d94" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/RSSBus" rel="tag"&gt;RSSBus&lt;/a&gt;, &lt;a href="http://technorati.com/tags/Enterprise+2.0" rel="tag"&gt;Enterprise 2.0&lt;/a&gt;, &lt;a href="http://technorati.com/tags/Mashups" rel="tag"&gt;Mashups&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=125034"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=125034" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/Lance/aggbug/125034.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Lance Robinson</dc:creator>
            <guid>http://geekswithblogs.net/Lance/archive/2008/09/09/building-enterprise-mashups-using-rssbus.aspx</guid>
            <pubDate>Tue, 09 Sep 2008 14:09:52 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/Lance/comments/125034.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/Lance/archive/2008/09/09/building-enterprise-mashups-using-rssbus.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/Lance/comments/commentRss/125034.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/Lance/services/trackbacks/125034.aspx</trackback:ping>
        </item>
        <item>
            <title>RSS to iCal Converter</title>
            <link>http://geekswithblogs.net/Lance/archive/2008/09/08/rss-to-ical-converter.aspx</link>
            <description>&lt;p&gt;Here is an &lt;a href="http://www.textbox1.com/apps/rss-to-ical/"&gt;RSS to iCal converter&lt;/a&gt; that I published last week.  All it does it take your RSS url, and give you back another one that calls RSSBus, and asks RSSBus to retrieve your URL and convert it to iCAL for you!  &lt;/p&gt;  &lt;p&gt;Recently I came across several RSS feeds of schedules.  One was a product release schedule, another a football schedule (&lt;a href="http://www.gopack.com"&gt;go pack&lt;/a&gt;!).  I was slightly annoyed that RSS was chosen for schedules since no feed readers really know how to handle a future pubDate, but I quickly realized it would be easy to convert to an iCalendar with RSSBus’ iCAL feed formatter (note:  RSSBus also includes feed formatters that transform RSS into csv, kml, atom, html table, and mediaRSS.  The feed formatter  API is open and anybody can create their own custom feed formatters).&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:b35b4d2e-7505-489b-9eda-0978e08c5a79" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/RSS" rel="tag"&gt;RSS&lt;/a&gt;, &lt;a href="http://technorati.com/tags/iCAL" rel="tag"&gt;iCAL&lt;/a&gt;, &lt;a href="http://technorati.com/tags/iCalendar" rel="tag"&gt;iCalendar&lt;/a&gt;, &lt;a href="http://technorati.com/tags/RSSBus" rel="tag"&gt;RSSBus&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=125012"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=125012" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/Lance/aggbug/125012.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Lance Robinson</dc:creator>
            <guid>http://geekswithblogs.net/Lance/archive/2008/09/08/rss-to-ical-converter.aspx</guid>
            <pubDate>Mon, 08 Sep 2008 14:32:59 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/Lance/comments/125012.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/Lance/archive/2008/09/08/rss-to-ical-converter.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/Lance/comments/commentRss/125012.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/Lance/services/trackbacks/125012.aspx</trackback:ping>
        </item>
        <item>
            <title>TwitterMinder and Flickr-&amp;gt;Twitter scripts</title>
            <link>http://geekswithblogs.net/Lance/archive/2008/08/28/twitterminder-and-flickr-gttwitter-scripts.aspx</link>
            <description>&lt;p&gt;If you’re an RSSBus user who is using my Google Calendar –&amp;gt; Twitter or Flickr –&amp;gt; Twitter services, you might notice a minor change to both.  I changed &lt;a href="http://www.textbox1.com/apps/twitterminder/"&gt;Twitterminder&lt;/a&gt; so that tweets resulting from Google Calendar entries are prepended with “GCal: “.  I did the same thing with the &lt;a href="http://www.lancerobinson.net/archive/2007/08/09/Flickr--gt-Twitter.aspx"&gt;Flickr-&amp;gt;Twitter script&lt;/a&gt;, it will now prepend “Flickr: “.&lt;/p&gt;  &lt;p&gt;Related: &lt;a href="http://geekswithblogs.net/Lance/archive/2007/08/09/TwitterMinder---Google-Calendar-to-Twitter.aspx"&gt;How to call these services from your own applications&lt;/a&gt;.    &lt;br /&gt;Related:  &lt;a href="http://www.lancerobinson.net/archive/2007/08/09/Flickr--gt-Twitter.aspx"&gt;How I converted TwitterMinder into Flickr-&amp;gt;Twitter by changing 4 lines of code&lt;/a&gt;.&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=124766"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=124766" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/Lance/aggbug/124766.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Lance Robinson</dc:creator>
            <guid>http://geekswithblogs.net/Lance/archive/2008/08/28/twitterminder-and-flickr-gttwitter-scripts.aspx</guid>
            <pubDate>Thu, 28 Aug 2008 17:58:30 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/Lance/comments/124766.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/Lance/archive/2008/08/28/twitterminder-and-flickr-gttwitter-scripts.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/Lance/comments/commentRss/124766.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/Lance/services/trackbacks/124766.aspx</trackback:ping>
        </item>
        <item>
            <title>Remixing data from Google Docs &amp;amp; Spreadsheets</title>
            <link>http://geekswithblogs.net/Lance/archive/2008/05/15/remixing-data-from-google-docs-amp-spreadsheets.aspx</link>
            <description>&lt;p&gt;Right after Google Spreadsheets came out, I got a ton of downloads from a little class library I wrote for interacting with it over HTTP.  Problem is, Google didn't provide a true API - the solution was to use HTTP to manually perform the gets and posts required to manage each spreadsheet.  Now its much easier thanks to RSSBus!&lt;/p&gt;
&lt;p&gt;Here is a &lt;a href="http://spreadsheets.google.com/ccc?key=pK9Xl7KbwzjKVge7QiFLbSQ&amp;amp;hl=en_US"&gt;sample Google spreadsheet&lt;/a&gt;, it looks like this:&lt;/p&gt;
&lt;table&gt;
    &lt;tbody&gt;
        &lt;tr&gt;
            &lt;th&gt; &lt;/th&gt;
            &lt;th&gt;A&lt;/th&gt;
            &lt;th&gt;B&lt;/th&gt;
            &lt;th&gt;C&lt;/th&gt;
            &lt;th&gt;D&lt;/th&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;th&gt;1&lt;/th&gt;
            &lt;td&gt;&lt;strong&gt;Name&lt;/strong&gt;&lt;/td&gt;
            &lt;td&gt;&lt;strong&gt;Hours&lt;/strong&gt;&lt;/td&gt;
            &lt;td&gt;&lt;strong&gt;Items&lt;/strong&gt;&lt;/td&gt;
            &lt;td&gt;&lt;strong&gt;IPM&lt;/strong&gt;&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;th&gt;2&lt;/th&gt;
            &lt;td&gt;Bingley&lt;/td&gt;
            &lt;td&gt;10&lt;/td&gt;
            &lt;td&gt;2&lt;/td&gt;
            &lt;td&gt;0.0033&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;th&gt;3&lt;/th&gt;
            &lt;td&gt;Captain Carter&lt;/td&gt;
            &lt;td&gt;200&lt;/td&gt;
            &lt;td&gt;75360&lt;/td&gt;
            &lt;td&gt;6.28&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;th&gt;4&lt;/th&gt;
            &lt;td&gt;Dawson&lt;/td&gt;
            &lt;td&gt;200&lt;/td&gt;
            &lt;td&gt;100000&lt;/td&gt;
            &lt;td&gt;8.3333&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;th&gt;5&lt;/th&gt;
            &lt;td&gt;Colonel Forster&lt;/td&gt;
            &lt;td&gt;50&lt;/td&gt;
            &lt;td&gt;300&lt;/td&gt;
            &lt;td&gt;0.1&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;th&gt;6&lt;/th&gt;
            &lt;td&gt;William Goulding&lt;/td&gt;
            &lt;td&gt;100&lt;/td&gt;
            &lt;td&gt;25842&lt;/td&gt;
            &lt;td&gt;4.307&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;th&gt;7&lt;/th&gt;
            &lt;td&gt;Lady Lucas&lt;/td&gt;
            &lt;td&gt;100&lt;/td&gt;
            &lt;td&gt;25670&lt;/td&gt;
            &lt;td&gt;4.2783&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;th&gt;8&lt;/th&gt;
            &lt;td&gt;Sir William&lt;/td&gt;
            &lt;td&gt;190&lt;/td&gt;
            &lt;td&gt;98765&lt;/td&gt;
            &lt;td&gt;8.6635&lt;/td&gt;
        &lt;/tr&gt;
        &lt;tr&gt;
            &lt;th&gt;9&lt;/th&gt;
            &lt;td&gt;Charlotte&lt;/td&gt;
            &lt;td&gt;60&lt;/td&gt;
            &lt;td&gt;18000&lt;/td&gt;
            &lt;td&gt;5&lt;/td&gt;
        &lt;/tr&gt;
    &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/Lance/WindowsLiveWriter/61ed56faa5f8_B424/gsheetQuery_2.jpg"&gt;&lt;img style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; MARGIN: 0px 0px 0px 20px; BORDER-RIGHT-WIDTH: 0px" height="240" alt="gsheetQuery" width="232" align="right" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/Lance/WindowsLiveWriter/61ed56faa5f8_B424/gsheetQuery_thumb_1.jpg" /&gt;&lt;/a&gt;Google Docs already allows me to create an &lt;a href="http://spreadsheets.google.com/feeds/list/pK9Xl7KbwzjKVge7QiFLbSQ/od6/public/basic"&gt;RSS feed of this document&lt;/a&gt;, but its not very smart.  Its only useful in a feed reader - I can't use this feed in an application without a lot of pain.  But, if I want to create a rich feed of this document, I can do this using the &lt;a href="http://www.rssbus.com/connectors/info.aspx?con=nsoftware.RSSBus.GsheetOps.info"&gt;GsheetOps RSSBus Connector&lt;/a&gt; (note:  use the &lt;a href="http://www.rssbus.com/connectors/info.aspx?con=nsoftware.RSSBus.ExcelOps.info"&gt;RSSBus Excel Operations&lt;/a&gt; to work with Excel Spreadsheets).  Here are some examples of things I can do with this Google Spreadsheet and RSSBus:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Generate a simple RSS feed of the data contained in the spreadsheet &lt;/li&gt;
    &lt;li&gt;Sort the data in the spreadsheet how I like it &lt;/li&gt;
    &lt;li&gt;Pipe the data into other applications like Excel, Access, a database, etc. &lt;/li&gt;
    &lt;li&gt;Pipe the data to Internet services like Amazon S3, FTP/mail/etc servers, Salesforce.com, etc. &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Generate a simple RSS feed of the data&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The gsheetQuery operation (shown in the image above) allows me to provide my Google email and password (or optional SID that can be generated once with gsheetAuth to avoid repeated authentications) and point to a spreadsheet by specifying its name.  Then, clicking "call operation" shows me a preview of the RSS feed that will be generated by this call, which contains a series of items that look like this:&lt;/p&gt;
&lt;hr size="1" /&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;gsheet:date&lt;/strong&gt;&lt;br /&gt;
2007-07-24T18:56:27.447Z&lt;/p&gt;
&lt;/blockquote&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;gsheet:edituri&lt;/strong&gt;&lt;br /&gt;
&lt;a href="http://spreadsheets.google.com/feeds/list/o03623.5323249/od6/private/full/"&gt;http://spreadsheets.google.com/feeds/list/o03623.5323249/od6/private/full/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;gsheet:hours&lt;/strong&gt;&lt;br /&gt;
10&lt;/p&gt;
&lt;/blockquote&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;gsheet:ipm&lt;/strong&gt;&lt;br /&gt;
0.0033&lt;/p&gt;
&lt;/blockquote&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;gsheet:items&lt;/strong&gt;&lt;br /&gt;
2&lt;/p&gt;
&lt;/blockquote&gt;&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;gsheet:name&lt;/strong&gt;&lt;br /&gt;
Bingley&lt;/p&gt;
&lt;/blockquote&gt;&lt;hr size="1" /&gt;
&lt;p&gt;The above example shows only one item, which has 6 elements, all with the gsheet prefix.  Now clicking the "create feed" will generate an .rsb file which will make this feed accessible over HTTP.   Optionally, I can modify this .rsb file to customize my feed to my liking.  Here's what the .rsb looks like by default:&lt;/p&gt;
&lt;div class="scrollarea"&gt;
&lt;pre&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;rsb:info&lt;/span&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt; title&lt;span style="COLOR: rgb(0,0,255)"&gt;="gsheetQuery"&lt;/span&gt; description&lt;span style="COLOR: rgb(0,0,255)"&gt;="A feed of data from a Google Spreadsheet."&lt;/span&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;  &amp;lt;&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;input&lt;/span&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt; name&lt;span style="COLOR: rgb(0,0,255)"&gt;="name"&lt;/span&gt; description&lt;span style="COLOR: rgb(0,0,255)"&gt;="The spreadsheet name. If left empty the edituri is required"&lt;/span&gt; default&lt;span style="COLOR: rgb(0,0,255)"&gt;="myuploadedsheet"&lt;/span&gt; &lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;/&amp;gt;&lt;/span&gt; &lt;br /&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;  &amp;lt;&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;input&lt;/span&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt; name&lt;span style="COLOR: rgb(0,0,255)"&gt;="sheetname"&lt;/span&gt; description&lt;span style="COLOR: rgb(0,0,255)"&gt;="The worksheet name. If left empty the edituri is required"&lt;/span&gt; default&lt;span style="COLOR: rgb(0,0,255)"&gt;="sheet1"&lt;/span&gt; &lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;/&amp;gt;&lt;/span&gt; &lt;br /&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;rsb:info&lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;rsb:set&lt;/span&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt; attr&lt;span style="COLOR: rgb(0,0,255)"&gt;="email"&lt;/span&gt; value&lt;span style="COLOR: rgb(0,0,255)"&gt;="youremail@gmail.com"&lt;/span&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;rsb:set&lt;/span&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt; attr&lt;span style="COLOR: rgb(0,0,255)"&gt;="password"&lt;/span&gt; value&lt;span style="COLOR: rgb(0,0,255)"&gt;="yourpassword"&lt;/span&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

&lt;pre&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;rsb:call&lt;/span&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt; op&lt;span style="COLOR: rgb(0,0,255)"&gt;="gsheetQuery"&lt;/span&gt; output&lt;span style="COLOR: rgb(0,0,255)"&gt;="out"&lt;/span&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;  &amp;lt;&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;rsb:push&lt;/span&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt; title&lt;span style="COLOR: rgb(0,0,255)"&gt;="[rss:title | def('untitled item')]"&lt;/span&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;    [out.* | tohtml()]&lt;br /&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;    &amp;lt;&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;hr&lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;gt;&lt;/span&gt;(auto-generated by RSSBus Feed Wizard - &lt;a href="http://www.rssbus.com)  &amp;lt;/rsb:push&amp;gt;&amp;lt;/rsb:call"&gt;www.rssbus.com)&lt;br /&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;  &amp;lt;/&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;rsb:push&lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;rsb:call&lt;/span&gt;&lt;/a&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;The .rsb file itself is very simple.  The first part, the rsb:info section, is just simple markup that describes what the feed is and what inputs it takes (in this case, just a spreadsheet name and a worksheet name).  Next, the rsb:set keyword is used to set some constant values - a gmail email and password that the gsheetQuery operation can use to authenticate.  Finally the rsb:call keyword is used to call the gsheetQuery operation, and all of the output item attributes (out.*) are pushed out (rsb:push) as as html.&lt;/p&gt;
&lt;p&gt;You can use this script with your own Google Docs account just by modifying the spreadsheet name, worksheet name, email, and password specified in each script.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Sort the Data&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Now I can pipe this gsheetQuery call into a feedSort call, and get a feed sorted by whichever column I like.  To do this, I can use the rsb:pipe keyword to pipe the output of gsheetQuery into the feedSort operation, like this:&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;div class="scrollarea"&gt;
&lt;pre&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;rsb:info&lt;/span&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt; title&lt;span style="COLOR: rgb(0,0,255)"&gt;="gsheetQuery"&lt;/span&gt; description&lt;span style="COLOR: rgb(0,0,255)"&gt;="A feed of data from a Google Spreadsheet."&lt;/span&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;input&lt;/span&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt; name&lt;span style="COLOR: rgb(0,0,255)"&gt;="name"&lt;/span&gt; description&lt;span style="COLOR: rgb(0,0,255)"&gt;="The spreadsheet name. If left empty the edituri is required"&lt;/span&gt; default&lt;span style="COLOR: rgb(0,0,255)"&gt;="myuploadedsheet"&lt;/span&gt; &lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;/&amp;gt;&lt;/span&gt; &lt;br /&gt;  &lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;input&lt;/span&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt; name&lt;span style="COLOR: rgb(0,0,255)"&gt;="sheetname"&lt;/span&gt; description&lt;span style="COLOR: rgb(0,0,255)"&gt;="The worksheet name. If left empty the edituri is required"&lt;/span&gt; default&lt;span style="COLOR: rgb(0,0,255)"&gt;="sheet1"&lt;/span&gt; &lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;/&amp;gt;&lt;/span&gt; &lt;br /&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;rsb:info&lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;rsb:set&lt;/span&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt; attr&lt;span style="COLOR: rgb(0,0,255)"&gt;="email"&lt;/span&gt; value&lt;span style="COLOR: rgb(0,0,255)"&gt;="youremail@gmail.com"&lt;/span&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;rsb:set&lt;/span&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt; attr&lt;span style="COLOR: rgb(0,0,255)"&gt;="password"&lt;/span&gt; value&lt;span style="COLOR: rgb(0,0,255)"&gt;="yourpassword"&lt;/span&gt;&lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;rsb:pipe&lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;rsb:call&lt;/span&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt; op&lt;span style="COLOR: rgb(0,0,255)"&gt;="gsheetQuery"&lt;/span&gt; output&lt;span style="COLOR: rgb(0,0,255)"&gt;="out"&lt;/span&gt; &lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;  &lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;rsb:call&lt;/span&gt;&lt;span style="COLOR: rgb(255,0,0)"&gt; op&lt;span style="COLOR: rgb(0,0,255)"&gt;="feedSort?sort=gsheet:hours&amp;amp;type=numeric"&lt;/span&gt; &lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;/&amp;gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: rgb(128,0,0)"&gt;rsb:pipe&lt;/span&gt;&lt;span style="COLOR: rgb(0,0,255)"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;Now I get a feed of items sorted numerically by the number of hours.  The rsb:pipe keyword is very handy, and I can continue the pipe as long as I want.  I could add another call after the feedSort to pipe its output to an operation to send an email, post a blog entry, send a paypal or credit card payment, create a row in an Excel spreadsheet or a database, or lots of other things.  For a full list of available RSSBus operations check out the connector list at &lt;a href="http://www.rssbus.com"&gt;http://www.rssbus.com&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;More&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Note the other operations included in GsheetOps:&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.rssbus.com/connectors/info.aspx?con=nsoftware.RSSBus.GsheetOps.info&amp;amp;op=gsheetAddRow"&gt;gsheetAddRow&lt;/a&gt; - Insert/add a new row in a Google Worksheet. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.rssbus.com/connectors/info.aspx?con=nsoftware.RSSBus.GsheetOps.info&amp;amp;op=gsheetAuth"&gt;gsheetAuth&lt;/a&gt; - Authenticate to Google Spreadsheets service. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.rssbus.com/connectors/info.aspx?con=nsoftware.RSSBus.GsheetOps.info&amp;amp;op=gsheetDeleteRow"&gt;gsheetDeleteRow&lt;/a&gt; - Delete an existing row from a Google Worksheet. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.rssbus.com/connectors/info.aspx?con=nsoftware.RSSBus.GsheetOps.info&amp;amp;op=gsheetEditCell"&gt;gsheetEditCell&lt;/a&gt; - Edit a particular cell value in a Google Worksheet. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.rssbus.com/connectors/info.aspx?con=nsoftware.RSSBus.GsheetOps.info&amp;amp;op=gsheetGetRange"&gt;gsheetGetRange&lt;/a&gt; - Get a specified range from a Google Worksheet. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.rssbus.com/connectors/info.aspx?con=nsoftware.RSSBus.GsheetOps.info&amp;amp;op=gsheetListSpreadsheets"&gt;gsheetListSpreadsheets&lt;/a&gt; - List the Spreadsheets in a Google Spreadsheets account. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.rssbus.com/connectors/info.aspx?con=nsoftware.RSSBus.GsheetOps.info&amp;amp;op=gsheetListWorksheets"&gt;gsheetListWorksheets&lt;/a&gt; - List the Worksheets in a Google Spreadsheet. &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:75e5c18c-8fcf-4501-9d35-856583f53319" style="PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px"&gt;Technorati Tags: &lt;a rel="tag" href="http://technorati.com/tags/Google%20Spreadsheets%20API"&gt;Google Spreadsheets API&lt;/a&gt;, &lt;a rel="tag" href="http://technorati.com/tags/RSSBus"&gt;RSSBus&lt;/a&gt;, &lt;a rel="tag" href="http://technorati.com/tags/Google%20Docs"&gt;Google Docs&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122171"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122171" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/Lance/aggbug/122171.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Lance Robinson</dc:creator>
            <guid>http://geekswithblogs.net/Lance/archive/2008/05/15/remixing-data-from-google-docs-amp-spreadsheets.aspx</guid>
            <pubDate>Thu, 15 May 2008 16:34:49 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/Lance/comments/122171.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/Lance/archive/2008/05/15/remixing-data-from-google-docs-amp-spreadsheets.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/Lance/comments/commentRss/122171.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/Lance/services/trackbacks/122171.aspx</trackback:ping>
        </item>
        <item>
            <title>RSSBus: Simple Ways to Connect Data</title>
            <link>http://geekswithblogs.net/Lance/archive/2008/05/06/rssbus-simple-ways-to-connect-data.aspx</link>
            <description>&lt;p&gt;I just uploaded a new YouTube video for  RSSBus.  Some of it is hard to see, but soon it will be published at &lt;a href="http://www.rssbus.com"&gt;rssbus.com&lt;/a&gt; as a high quality flash video.&lt;/p&gt; &lt;p&gt;RSSBus can be used to securely serve custom feeds over the Internet or on the local host.  This video shows examples of very basic feeds that can be created with RSSBus with just a few mouse clicks, and more complex piped feeds.  Near the end, the video shows some ways in which RSSBus can be integrated into real world solutions.  Obviously, RSSBus can make your data accessible through anything that supports RSS or Atom feeds, but it can also make your data accessible to many other productive environments and applications like Excel, software development languages (.Net, ActiveX, Delphi, C++ Builder, VC++, Python, etc), Windows PowerShell, Windows WorkFlow, etc.&lt;/p&gt; &lt;p&gt;Enough of that:  here's the video, yo:&lt;/p&gt; &lt;p&gt; &lt;/p&gt; &lt;p&gt;&lt;embed src="http://www.youtube.com/v/hqmLKcY5orU&amp;amp;hl=en" width="425" height="355" type="application/x-shockwave-flash" wmode="transparent"&gt;&lt;/embed&gt;&lt;/p&gt; &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:3b2eb63d-18ed-480c-871a-d96f36cc1071" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/RSSBus" rel="tag"&gt;RSSBus&lt;/a&gt;, &lt;a href="http://technorati.com/tags/Web%202.0" rel="tag"&gt;Web 2.0&lt;/a&gt;, &lt;a href="http://technorati.com/tags/Enterprise%202.0" rel="tag"&gt;Enterprise 2.0&lt;/a&gt;, &lt;a href="http://technorati.com/tags/Mashup" rel="tag"&gt;Mashup&lt;/a&gt;, &lt;a href="http://technorati.com/tags/Feeds" rel="tag"&gt;Feeds&lt;/a&gt;, &lt;a href="http://technorati.com/tags/Atom" rel="tag"&gt;Atom&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=121935"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=121935" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/Lance/aggbug/121935.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Lance Robinson</dc:creator>
            <guid>http://geekswithblogs.net/Lance/archive/2008/05/06/rssbus-simple-ways-to-connect-data.aspx</guid>
            <pubDate>Tue, 06 May 2008 18:57:49 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/Lance/comments/121935.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/Lance/archive/2008/05/06/rssbus-simple-ways-to-connect-data.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/Lance/comments/commentRss/121935.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/Lance/services/trackbacks/121935.aspx</trackback:ping>
        </item>
        <item>
            <title>NewsGator client apps are now free</title>
            <link>http://geekswithblogs.net/Lance/archive/2008/01/09/newsgator-client-apps-are-now-free.aspx</link>
            <description>&lt;p&gt;Yesterday, &lt;a href="http://enterpriserss.typepad.com/enterprise_rss/2008/01/newsgator-makes.html"&gt;NewsGator announced&lt;/a&gt; that it is making all if its RSS reader applications free.  That includes FeedDemon (which I love and have been using for years), NetNewsWire, NewsGator Go, NewsGator Online, and NewsGator Inbox.  &lt;a href="http://www.newsgator.com/Individuals/Default.aspx"&gt;Individual downloads&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="254" alt="NewsGator FeedDemon 2.6[2]" src="http://geekswithblogs.net/images/geekswithblogs_net/Lance/WindowsLiveWriter/NewsGatorclientappsarenowfree_C369/NewsGator%20FeedDemon%202.6%5B2%5D_1.jpg" width="644" border="0" /&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=118401"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=118401" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/Lance/aggbug/118401.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Lance Robinson</dc:creator>
            <guid>http://geekswithblogs.net/Lance/archive/2008/01/09/newsgator-client-apps-are-now-free.aspx</guid>
            <pubDate>Wed, 09 Jan 2008 19:12:27 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/Lance/comments/118401.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/Lance/archive/2008/01/09/newsgator-client-apps-are-now-free.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/Lance/comments/commentRss/118401.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/Lance/services/trackbacks/118401.aspx</trackback:ping>
        </item>
        <item>
            <title>BizTalk RSS Feeds</title>
            <link>http://geekswithblogs.net/Lance/archive/2008/01/02/biztalk-rss-feeds-again.aspx</link>
            <description>&lt;p&gt;&lt;a href="http://seroter.wordpress.com/2007/12/31/building-an-rssbus-feed-for-biztalk-server/"&gt;Richard Seroter&lt;/a&gt; has posted an update on his BizTalk RSS feed generation using RSSBus.  He's using RSSBus to generate perf metrics feeds for his BizTalk applications.  In this post, Richard talks about how he uses the RSSBus caching features to avoid the extra load on his BizTalk databases, and shows how he's integrated the resulting feed into a web part.&lt;/p&gt; &lt;p&gt;BiztalkOps - &lt;a href="http://www.rssbus.com/connectors/info.aspx?con=nsoftware.RSSBus.BiztalkOps.info"&gt;more info&lt;/a&gt;&lt;br /&gt;SqlOps - &lt;a href="http://www.rssbus.com/connectors/info.aspx?con=nsoftware.RSSBus.SqlOps.info"&gt;more info&lt;/a&gt;&lt;/p&gt; &lt;div class="wlWriterSmartContent" id="scid:0767317B-992E-4b12-91E0-4F059A8CECA8:2b76811e-711e-42ac-a492-e49054098ad8" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/BizTalk" rel="tag"&gt;BizTalk&lt;/a&gt;, &lt;a href="http://technorati.com/tags/RSSBus" rel="tag"&gt;RSSBus&lt;/a&gt;, &lt;a href="http://technorati.com/tags/RSS" rel="tag"&gt;RSS&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=118146"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=118146" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/Lance/aggbug/118146.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Lance Robinson</dc:creator>
            <guid>http://geekswithblogs.net/Lance/archive/2008/01/02/biztalk-rss-feeds-again.aspx</guid>
            <pubDate>Wed, 02 Jan 2008 15:12:05 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/Lance/comments/118146.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/Lance/archive/2008/01/02/biztalk-rss-feeds-again.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/Lance/comments/commentRss/118146.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/Lance/services/trackbacks/118146.aspx</trackback:ping>
        </item>
        <item>
            <title>Tag Unions</title>
            <link>http://geekswithblogs.net/Lance/archive/2007/10/11/Tag-Unions.aspx</link>
            <description>&lt;p&gt;Jon Udell is asking for a service to deliver &lt;a href="http://blog.jonudell.net/2007/10/10/combining-tagspaces/"&gt;a feed containing the union of tagged items from various services&lt;/a&gt;.  I've been doing this for a while (though not for astronomy) using RSSBus.  Here's my script:&lt;/p&gt;
&lt;div class="scrollarea"&gt;
&lt;pre class="csharpcode"&gt;&lt;pre class="csharpcode"&gt;&amp;lt;rsb:set attr=&lt;span class="str"&gt;"feed#1"&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;"http://del.icio.us/rss/tag/[tag]"&lt;/span&gt; /&amp;gt;&lt;br /&gt;&amp;lt;rsb:set &lt;span class="str"&gt;&lt;/span&gt;attr=&lt;span class="str"&gt;"feed#2"&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;"http://feeds.technorati.com/tag/[tag]"&lt;/span&gt; /&amp;gt;&lt;br /&gt;&amp;lt;rsb:set attr=&lt;span class="str"&gt;"feed#3"&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;"http://api.flickr.com/services/feeds/photos_public.gne?tags=[tag]&amp;amp;lang=en-us&amp;amp;format=rss_200"&lt;/span&gt; /&amp;gt;&lt;br /&gt;&amp;lt;rsb:set &lt;span class="str"&gt;&lt;/span&gt;attr=&lt;span class="str"&gt;"feed#4"&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;"http://connotea.org/rss/tag/[tag]"&lt;/span&gt; /&amp;gt;&lt;br /&gt;&amp;lt;rsb:set &lt;span class="str"&gt;&lt;/span&gt;attr=&lt;span class="str"&gt;"feed#5"&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;"http://wordpress.com/tag/[tag]/feed"&lt;/span&gt; /&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;rsb:set item=&lt;span class="str"&gt;"_meta"&lt;/span&gt; attr=&lt;span class="str"&gt;"rss:title"&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;"Tag Union"&lt;/span&gt; /&amp;gt;&lt;br /&gt;&amp;lt;rsb:set item=&lt;span class="str"&gt;"_meta"&lt;/span&gt; attr=&lt;span class="str"&gt;"rss:description"&lt;/span&gt; &lt;span class="kwrd"&gt;value&lt;/span&gt;=&lt;span class="str"&gt;"A combination of various tagging services"&lt;/span&gt; /&amp;gt;&lt;br /&gt;&lt;br /&gt;&amp;lt;rsb:call op=&lt;span class="str"&gt;"feedUnion"&lt;/span&gt;&lt;span class="kwrd"&gt;&lt;/span&gt;&lt;span class="str"&gt;&lt;/span&gt;&amp;gt;&lt;br /&gt;    &amp;lt;rsb:push /&amp;gt;&lt;br /&gt;&amp;lt;/rsb:call&amp;gt;&lt;/pre&gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;I saved this as tagUnion.rsb and subscribed to &lt;em&gt;&lt;a href="http://localhost/rssbus/tagUnion.rsb?tag=astronomy"&gt;http://localhost/rssbus/tagUnion.rsb?tag=astronomy&lt;/a&gt;&lt;/em&gt; in FeedDemon, And &lt;a href="http://farm3.static.flickr.com/2217/1544161665_7c6ba14242_o.jpg"&gt;here's what the resulting feed looks like&lt;/a&gt;.  Notice in the screenshot the detail that the RSSBus feedUnion operation gives me.  For Flickr results, just the picture, its description, and the photo owner are included in the description.  But look at the next result, all the rich data that is included in the feed, including the date of the tag, the source(s) where the tag was found (this one was found tagged in both delicious and connotea), and all the rich data from the original source (the taxo: elements).&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=115998"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=115998" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/Lance/aggbug/115998.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Lance Robinson</dc:creator>
            <guid>http://geekswithblogs.net/Lance/archive/2007/10/11/Tag-Unions.aspx</guid>
            <pubDate>Thu, 11 Oct 2007 19:25:26 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/Lance/comments/115998.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/Lance/archive/2007/10/11/Tag-Unions.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/Lance/comments/commentRss/115998.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/Lance/services/trackbacks/115998.aspx</trackback:ping>
        </item>
        <item>
            <title>RSSBus and Atom</title>
            <link>http://geekswithblogs.net/Lance/archive/2007/10/11/RSSBus-and-Atom.aspx</link>
            <description>&lt;p&gt;&lt;a href="http://intertwingly.net/blog/2007/10/08/RSS-Profile-Up-For-Vote"&gt;Sam Ruby&lt;/a&gt; pointed out some of the changes that would be required for &lt;a href="http://feedvalidator.org/"&gt;Feed Validator&lt;/a&gt; to support the new &lt;a href="http://www.rssboard.org/rss-profile"&gt;RSS Profile&lt;/a&gt;.  The RSS Profile is the result of checking popular feed reader capabilities in order to put together a "best practices" document for feed publishers.  I haven't gotten to read through the entire profile yet, but here are some interesting things I noticed while reading through Sam's validator changes:&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;Encoding - the profile says to use hexadecimal entity encoding (ie, &amp;amp;#x26; instead of &amp;amp;amp;).&lt;/li&gt;
    &lt;li&gt;The profile says that all item elements SHOULD appear after all other elements in the channel.  Good.&lt;/li&gt;
    &lt;li&gt;"For these reasons, a feed should contain an atom:link"...  They're also recommending content:encoding elements too.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;I wish they'd replace a few SHOULD's with MUSTS and make this a new version of the spec that actually contains some precision.  :)&lt;/p&gt;
&lt;p&gt;Now that the &lt;a style="text-decoration: line-through;" href="http://bitworking.org/news/222/The-Atom-Publishing-Protocol-is-a-Proposed-Standard"&gt;Atom Publishing Protocol is a proposed standard&lt;/a&gt;, &lt;a href="http://www.ietf.org/rfc/rfc5023.txt"&gt;standard&lt;/a&gt;.  I started wondering how well RSSBus plays with Atom and APP.&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;RSSBus allows you to output any feeds (the ones you create or the ones you're calling) in the Atom format.  RSS happens to be the default, but any feed can easily be output as Atom using the @ATOM querystring value.  Actually the output format of a feed is a completely open interface, so custom feed formatters can be created by anyone.  RSS, Atom, HTML, JSON, and Excel feed formatters come installed with RSSBus.  &lt;/li&gt;
    &lt;li&gt;RSSBus allows you to consume and manipulate Atom feeds.  &lt;/li&gt;
    &lt;li&gt;RSBScript will allow you to create RESTful interfaces by using the rsb:script tag and its "method" attribute.  For an example of this, look at the REST.rsb demo that comes installed with RSSBus.  It shows how to respond to specific http methods GET, POST, PUT, DELETE, etc.  &lt;/li&gt;
    &lt;li&gt;One weakness is that RSSBus does not automatically recognize Atom entry inputs (the application/atom+xml;type=entry content-type).  It would be a cool feature if RSSBus could recognize this when it comes in and automatically parse the incoming entry into easily scriptable input attributes.  Instead, an xpath formatter needs to be used to get at the individual pieces of a posted Atom entry.  This is an area where a new set of Atom specific formatters could be useful.&lt;/li&gt;
&lt;/ul&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=115995"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=115995" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/Lance/aggbug/115995.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Lance Robinson</dc:creator>
            <guid>http://geekswithblogs.net/Lance/archive/2007/10/11/RSSBus-and-Atom.aspx</guid>
            <pubDate>Thu, 11 Oct 2007 18:27:25 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/Lance/comments/115995.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/Lance/archive/2007/10/11/RSSBus-and-Atom.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/Lance/comments/commentRss/115995.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/Lance/services/trackbacks/115995.aspx</trackback:ping>
        </item>
        <item>
            <title>BizTalk RSS Feeds</title>
            <link>http://geekswithblogs.net/Lance/archive/2007/09/11/BizTalk-RSS-Feeds.aspx</link>
            <description>&lt;p&gt;A couple months ago Richard Seroter posted about how he created &lt;a href="http://seroter.wordpress.com/2007/07/09/querying-and-syndicating-biztalk-traffic-metrics-by-application/"&gt;RSS feeds for BizTalk metrics&lt;/a&gt; - traffic by application and suspended messages by application.  Now with the &lt;a href="http://blog.rssbus.com/RSSBusFeedServerRC1NowAvailable.aspx"&gt;latest release of RSSBus (RC1)&lt;/a&gt; - a new connector, &lt;a href="http://www.rssbus.com/ObjectDetails.aspx?name=nsoftware.RSSBus.BiztalkOps"&gt;BizTalkOps&lt;/a&gt;, is available.  BizTalkOps includes operations that generate the following feeds:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;i&gt;biztalkAllServiceInstances&lt;/i&gt;&lt;br /&gt;Return the list of all service instances, independent on their state. &lt;/li&gt; &lt;li&gt;&lt;i&gt;biztalkApplications&lt;/i&gt;&lt;br /&gt;List all BizTalk applications and their status &lt;/li&gt; &lt;li&gt;&lt;i&gt;biztalkApplicationStatus&lt;/i&gt;&lt;br /&gt;Takes the name of a BizTalk Application and returns all Orchestrations, Send Port Groups, Send Ports, Receive Locations and Policies that make up that application, each one with basic details and the status. &lt;/li&gt; &lt;li&gt;&lt;i&gt;biztalkHostInstances&lt;/i&gt;&lt;br /&gt;Return the list of Host Instances and their status. &lt;/li&gt; &lt;li&gt;&lt;i&gt;biztalkMessages&lt;/i&gt;&lt;br /&gt;Return the list of all message instances. &lt;/li&gt; &lt;li&gt;&lt;i&gt;biztalkRunningServiceInstances&lt;/i&gt;&lt;br /&gt;Return the list of all running service instances. &lt;/li&gt; &lt;li&gt;&lt;i&gt;biztalkSuspendedServiceInstances&lt;/i&gt;&lt;br /&gt;Return the list of all suspended service instances.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Also included in &lt;a href="http://blog.rssbus.com/RSSBusFeedServerRC1NowAvailable.aspx"&gt;the new RSSBus RC1&lt;/a&gt;, a new user guide, caching/logging, operations for dbase/oledb/pgsql/twitter, and a lot more.  Check it out.&lt;/p&gt; &lt;div class="wlWriterSmartContent" id="0767317B-992E-4b12-91E0-4F059A8CECA8:26384994-691c-45ab-97b6-1b104d5db664" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;Technorati Tags: &lt;a href="http://technorati.com/tags/BizTalk" rel="tag"&gt;BizTalk&lt;/a&gt;, &lt;a href="http://technorati.com/tags/RSSBus" rel="tag"&gt;RSSBus&lt;/a&gt;, &lt;a href="http://technorati.com/tags/RSS" rel="tag"&gt;RSS&lt;/a&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=115279"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=115279" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/Lance/aggbug/115279.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Lance Robinson</dc:creator>
            <guid>http://geekswithblogs.net/Lance/archive/2007/09/11/BizTalk-RSS-Feeds.aspx</guid>
            <pubDate>Tue, 11 Sep 2007 16:20:33 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/Lance/comments/115279.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/Lance/archive/2007/09/11/BizTalk-RSS-Feeds.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/Lance/comments/commentRss/115279.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/Lance/services/trackbacks/115279.aspx</trackback:ping>
        </item>
    </channel>
</rss>