Compartilhar via


Microsoft RSS Team on the Windows RSS Platform

Next Monday, I am going to be presenting in Cork on Microsoft's increasing integration of RSS into the platform.  As part of my research, I had a great chat with one of the Microsoft RSS Team members yesterday in the hands-on lab area, and today I attended Walter VonKoch's talk on the Windows RSS Platform.

My focus on Monday won't be too developer, but I wanted to give you a dev look at the RSS Platform, which makes it very easy for developers to add RSS support into their own applications to enable new scenarios for consuming subscription-based content.

The API lets you tap into the Common Feed List, which is an explicit, user-level subscription list.  The user controls that list - websites, for example, can not read your list, or add to it.

Windows RSS PlatformThe API uses these high-level abstractions:

FeedsManager
FeedFolder
Feed
FeedItem
FeedEnclosure

And these last two allow applications can register to receive events when things happen on feeds:

 FolderEvents
FeedEvents

From a security perspective, the RSS team has been inspired by lessons learned from email and web browsers: don't trust the source, don't trust the content, don't trust the enclosures, don't allow executable enclosures.  They've erred on the side of strict - for example, only accepting well-formed XML.  The net result is that, for you as a developer, you can easily consume validated, sanitized feed content from any RSS source.

The RSS Platform API is a COM-based API.  It includes a set of interfaces targetted towards automation (script, managed code, late-bound clients), and also a set of interfaces targetted towards C++ developers.

For simple scenarios, you don't have to understand XML at all - you can just query the API.  But at each level, there is also a method that allows you to obtain the XML, if you wish to parse it yourself.

Why a COM API instead of managed code?   There are today quite a few applications that don't have a dependency on the .NET Framework.  But the COM API was, wherever possible, designed based on the .NET Framework Design Guidelines.  If you do a TLBIMP (Type Library import) of the managed code, you'll get managed wrappers that feel a whole lot like a managed API.  I can tell you from personal experience in the hands-on lab that it's very easy to work with the API from managed code.

How does IE7 fit into this?  IE7 is completely independent of the RSS APIs.   IE7 leverages the RSS APIs I'm talking about here.  The RSS APIs ship with IE7, as well as Vista.  One bit of (well-received) feedback from the audience was that they'd love to be able to deploy the RSS platform themselves without requiring their end users to install IE7. 

We saw a great demo in the presentation from Greg Reinacker of Newsgator, where RSS was consumed in just about every imaginable way.  Walter showed us how he's easily augmented Outlook so that RSS entries representing Mix06 events were automatically entered into his Outlook calendar.

For more, head to the RSS Team blog, or see the MSDN Documentation.

Comments

  • Anonymous
    March 22, 2006
    Well, IE7 may be "completely independent of the RSS APIs."  But the "RSS Team" is part of the greater "IE Team."
  • Anonymous
    March 27, 2006

    I'm currently here in the Silver Springs hotel in Cork.  I travelled down from Dublin yesterday...
  • Anonymous
    March 28, 2006
    I was one of the presenters at last night's IT@Cork Business Benefits of RSS event.  I outlined...
  • Anonymous
    May 05, 2006
    The videos and Powerpoint slides from the Mix06 conference are now online at http://sessions.mix06.com/....