What's up with the Windows RSS platform?
The Windows RSS Platform (or Feeds API) is the feed handling engine that powers the new RSS features in IE7. It will also be included in Windows Vista for use by other applications. Note that here, RSS is a generic term meant to include both RSS and Atom -- the Feeds API supports both. The Feeds API is packaged in a DLL called msfeeds.dll and available to programmers as a set of dual-interface COM objects. Here are the features exposed via the Feeds API.
- Common feed list: list of feeds for current user, organized as folder hierarchy.
- Feed store: local cache of feeds, feeds available via abstract object model
- Download engine: for managing and monitoring large enclosure downloads
- RSS sharing extensions: new XML elements to support bi-directional sync via RSS
The Feeds API gives you access to the current user's feed subscription list, a feed parser that can handle any form of RSS and Atom as well as the IE7 podcast download engine. The parser parses feeds to an abstract object model designed to represent any sort of feed. It handles funky RSS and in some cases prefers the funky elements (e.g. <content:escape> over <description>).
Here are some of the references I've been using to understand the API:
Feeds API docs, specs and whitepapers from Microsoft
- The Feeds API documentation at MSDN Library
- The Simple Sharing Extensions (SSE) for RSS and OPML specification
- The Simple List Extentions for RSS specification
- Simple Sharing Extensions for RSS tutorial (in Vista only?)
- RSS Support in Longhorn - good overview
- PDC05 presentation about RSS in Windows Vista
Microsoft employee blogs about the RSS platform
- The Windows RSS Platform described on the Microsoft RSS Team Blog
- The Windows RSS Platform ala carte from the Microsoft RSS Team Blog
- A blog about the RSS Simple Sharing Extensions from Microsoft's Jack Ozzie
- Related: Ray Ozzie's blog post Wiring the Web
- FeedBandit developer Dare Obasanjo's feedback on Windows RSS Platform
- Windows Live Mail Desktop Beta (RSS feeds and "blog-it" feature)
Other blogs about it
- Newsgator's Nick Bradbury's feedback on Windows RSS Platform
- PDC'05 blog about the above Windows RSS Platform presentation
- Jim Mathies built an aggregator in a weekend with the RSS platform
- A simple windows RSS store viewer and exploration of msfeeds.dll implementation
- John Udell interviews Microsoft's Amar Ghandi about the RSS platform
Update2: added reference to Simple List Extensions
Update3: added link to RSS in Windows Vista presentaton
Tags: topic:[atom], topic:[rss], topic:[ie7], topic:[atom protocol]
Spring weekend
Since the book was supposed to be finished by Friday (more on that later), Andi and her friends left town for a girls beach weekend at Topsail Island. So the boys and I have been fending for ourselves and enjoying a beautiful early spring weekend with temps in the high 70s.
On Friday night we went to dinner early, around 5:30PM, hoping to get an outside table at Mellow Mushroom. The patio was packed with after-workers and college kids, so we settled for an inside table. After eating half a pie and a small hill of black olives, we took a long walk around the Glenwood South area stopping for ice cream at Turkish Delights.

Today, I strapped the bikes on the back of the van and we drove down to Meredith College to ride the NC Museum of Art trail. The kids love the bike bridge. Fortunately, Leo at three is still light enough to ride in the bike seat. We took a ride, crossed the bridge and then walked through some of the outdoor pieces, that's one in the (Treo phone) photo above. After that, we went inside to walk through the European collection. It was a quick walk. Alex and Linus are old enough to appreciate the paintings, but Leo no so much. Then we made our way home. All and all a very nice way to spend a warm spring afternoon.
On Friday night we went to dinner early, around 5:30PM, hoping to get an outside table at Mellow Mushroom. The patio was packed with after-workers and college kids, so we settled for an inside table. After eating half a pie and a small hill of black olives, we took a long walk around the Glenwood South area stopping for ice cream at Turkish Delights.

Today, I strapped the bikes on the back of the van and we drove down to Meredith College to ride the NC Museum of Art trail. The kids love the bike bridge. Fortunately, Leo at three is still light enough to ride in the bike seat. We took a ride, crossed the bridge and then walked through some of the outdoor pieces, that's one in the (Treo phone) photo above. After that, we went inside to walk through the European collection. It was a quick walk. Alex and Linus are old enough to appreciate the paintings, but Leo no so much. Then we made our way home. All and all a very nice way to spend a warm spring afternoon.
Tags:
family
Ning's Atom protocol based API
The other week, we got the news that the Lucene search engine team chose Atom protocol for it's new Lucene-WS web services interface. Now, Web 2.0 darling Ning.com has joined the Atom protocol club with the Ning Atom API. Is Atom protocol generic enough to become the standard for REST based web services? Via Sam Ruby.
Tags:
Blogging
eWeek: Sun's Open-Source Roller Keeps Blogs Rolling
Daryl Taft of eWeek interviewed me a couple of weeks ago and the resulting article Sun's Open-Source Roller Keeps Blogs Rolling was published today. The article covers Roller history, Apache Roller status, RSS and Atom in Action, the Blogapps project of RSS and Atom utilities and even mentions my year and a half honeymoon in Jamaica as a GRASS consultant. I'm very happy to get some more publicity for Roller and for the book, which will be officiallly complete tomorrow, available in e-book form next week and hopefully printed later this month.
Tags:
Roller
Today's links [March 08, 2006]
- Ongoing: The ASF Server
Email interview with Mads Toftum about Apache's zoned-out Sun V40Z server - Apple is Patenting RSS
"This is a bit shocking." - Moving RSS Forward with an XRSS Namespace
"a new namespace, XRSS, with replacements for all of the optional elements" - Ray Ozzie: Wiring the Web
Windows DDE for the Web?
Tags:
Links
Today's links [March 07, 2006]
- New blogs.sun.com servers
Frosty reports that BSC is now powered by a pair of shiny new SunFire T2000 servers - Matisse in Eclipse
Screenshot of the Netbeans Matisse GUI builder running inside MyEclipse
Tags:
Links
Today is...
...the birthday of a truly great man and a wonderful father. Happy 70th birthday DAD!!!

(c) Charles S. Johnson, Jr.

(c) Charles S. Johnson, Jr.
Tags:
family
Wilco's Jeff Tweedy on the local jock rivalry
Audience member: (screams) Duke sucks!
Jeff Tweedy: Whatever.
Jeff Tweedy: Ah, OK, (pause) Duke sucks!
Audience: (loud applause)
Jeff Tweedy: Unless we're playing Duke, in which case, uh... (mumbles something)
... later, during the encore ...
Jeff Tweedy: (sarcastically) And my sincere congraluations on your sports successes.
Jeff Tweedy: Whatever.
Jeff Tweedy: Ah, OK, (pause) Duke sucks!
Audience: (loud applause)
Jeff Tweedy: Unless we're playing Duke, in which case, uh... (mumbles something)
... later, during the encore ...
Jeff Tweedy: (sarcastically) And my sincere congraluations on your sports successes.
And by the way, Wilco rocked! UNC's Memorial Hall is a great place to see a show. It's pretty sure it's been renovated at least once since the last time I saw a rock show there (Hüsker Dü, back in in the stone age).
Roller 2.1 available for download
Roller 2.1 is available (announcement). The major new features are comment management, comment moderation, trackback verification (optional), security improvements, performance improvements, an all-new pluggable cache system and Atom 1.0 support in the integrated planet aggregator. New features are summarized in What's New doc.
Tags:
Roller
Pebble and Blojsom and Atom protocol
I've used code from the excellent Pebble and Blojsom blog servers in the past (and given credit in the Roller CREDITS file). I'd love to be able to contribute back and now there's an opportunity to do that. So to Simon and David (or anybody else hacking those servers), if you want to get Atom protocol working in your server, the easiest way might be for you to bring in some code from Roller. I specifically designed our Atom protocol implementation to allow for sharing and to be free of Roller dependencies.
For example, here's how you'd do it for Pebble:
- Bring the classes from the package org.roller.presentation.atomapi into Pebble (except for RollerAtomHandler, you won't need that one).
- You'll also need to bring in the ROME and JDOM jars if you're not aleady using them.
- Implement the interface AtomHandler with calls to the Pebble backend, call it PebbleAtomHandler or something similar.
- Change one line of code in the AtomServlet method createAtomRequestHandler() to create your new PebbleAtomHandler instead of the Roller one.
When you're done, head over to the #atom channel on irc.freenode.net so we can do some interop testing with MatisseBlogger and other Atom protocol clients.
Blog server news
Couple of interesting items in the land of open source blog server software.
First, the Ibiblio folks over at UNC have announced a new project (or is it a new direction for an old project) called Lyceum to modify Wordpress for multi-user blogging. I'm a little surprised by this because I thought Wordpress already supported multi-user, that's what Wordpress.com does and that's what the Wordpress/Mu is all about. Update: this post from Matt Mullenweg explains the difference between Wordpress and the Lyceum fork.
I think some of the Computer Science folks at UNC are pushing Roller (ITS already has one), which has been doing multi-user blogging for years now, so it will be interesting to see what UNC chooses for student blogs.
Second, Simon Brown has released milestone 1 of Pebble 2.0. This new version of Pebble will require Java 5.0, something I wish we could do now with Roller. I read recently that he decided to keep Pebble file-system based, which I think is a good choice. Part of the charm of Pebble is the super-easy install.
Tags:
Blogging
MatisseBlogger
With the final deadline for my book and my JavaOne presentation on Java and REST: Implementing the Atom protocol coming up on the 10th, I've been spending a lot of time with Atom and specifically the Atom protocol (draft 8). I've been tweaking my BlogClient library, which provides an abstract interface over both Atom protocol and he MetaWeblog API. And, you may be surprised to hear that I've also been spending some time with Netbeans Matisse.
I've been working with Matisse to create MatisseBlogger, a Swing GUI that's built on top of my BlogClient library. In a very short amount of time, I've been able to build a pretty nice client. That's it in the screenshot below (click for full-size image).

Today I spent some time in the #atom channel on irc.freenode.net doing Atom protocol interop testing with James Tauber and Joe Gregorio. James has an Atom protocol server named Demokritos and Joe has one called, well, I'm not sure what it's called. Long story short, MatisseBlogger made it's first posts today to two different servers.
In the screenshot above you can see that MatisseBlogger shows your blog accounts as a tree view, with each account having multiple blogs and each blog having an entries and resources collection (except for Joe's which currently only supports entries). So far, I've tested it with Demokritos, Joe's server, Roller, Wordpress (MetaWeblog) and MovableType (also MetaWeblog). It's still got some glitches, but it's almost ready for release. So, I'll include MatisseBlogger and Roller (2.2-dev with Atom Protocol enabled) in the next release of the Blogapps project, perhaps this weekend.
Tags: topic:[Atom Protocol], topic:[Atom], topic:[REST], topic:[MetaWeblog API], topic:[Matisse], topic:[Netbeans], topic:[RSS and Atom in Action]
Tags:
Blogging
Guerilla cannibal team
I wish I was as smart as James Governor seems to think I am. I agree with some of Governor's points about Roller and I'm honored to be on the same page with his A-Team, but I think he's overlooking a lot of very cool work that's going on at Sun and a lot of absolutely brilliant people here who most definitely "get it" in every way.
Tags:
Sun
« Previous page of month (Mar 2006) | Main | Next month (Apr 2006) »