posted by Adam S on Tue 7th Nov 2006 12:58 UTC
IconWe are on the brink of a very exciting time. The buzzword-friendly "Web 2.0" is here, and it's most punctuated by three terms: social networking, AJAX, and RSS. Nothing about these things is inherently new - AJAX existed as an ActiveX control present in Microsoft's Outlook Web Access long ago, social networking has existed for some time via sites like Friendster, and RSS is just a style of XML, which has been floating around in mainstream tech circles for about 10 years. But Web 2.0 is here, like it or not. The question is, as use of these technologies begins to become more widespread, how are we going to shape these technologies, and who is going to make those decisions?

Some time ago, I started playing with styled RSS on my website. I used standard CSS, rather than the more advanced XSLT ("Extensible Stylesheet Language Transformations"), because all I needed was style, not the amazing transformations that XSL can accomplish, which actually includes introducing a dynamic element that appears to add javascript-like functionality. The purpose was twofold - one, to prove I could do it. This is very often the motivation behind things I code: to do it just to have done it. This is the entire reason my website has an API, just because I wanted to experiment with handling blogger/metaweblog API requests.

The second reason for styled RSS was a proof of concept for an internal application for my company. The idea was a search engine on top of some of our internal databases that returned styled XML (either RSS or Atom) to the client. This way, our other internal apps could query the same exact page, but parse the data reliably. What a novel concept: interacting applications, user friendly search, and half the code for a single interface. Perfect.

Things were coming along nicely, until I tried Firefox 2. I realized very quickly that Firefox 2 decided to override my style in favor of its own stylesheet. As far as I could tell, there was no way to shut it off. So I opened a bug in Mozilla's Bugzilla database. As you can see, the developers marked it WONTFIX, meaning, they didn't consider it a bug and won't fix it. Luckily, after some time and several angry posts, it was reopened.

Now, lest anyone think I'm taking advantage of my status at OSNews to gripe publicly about my personal bug, there's a point to this beyond this bug, so bear with me.

The developers had made their stance on this bug known and suggested moving the conversation to USENET. Before moving off line, I decided to check in with other popular browsers. I fired up IE6 to test. As expected, IE 6 displays the RSS feed properly styled, as expected. Next was the new Internet Explorer version 7, and found that sure enough, IE7 overrides my style as well. IE7, however, is different in three major ways:

  1. Like Safari, IE7 is a full featured feed reader: you can subscribe in the browser and manage read/unread feeds. This shifts the action from viewing a single feed to a secondary goal of the application, feed management.
  2. IE7 adds additional functionality beyond that offered by simply RSS, such as the ability to search, organize and reorder via date or title, and search within the active feed and the feed history (XSLT can also accomplish some of these things, but not all of them).
  3. Most importantly, IE7's so-called "feed view" can be turned off in the browser preferences (Tools > Internet Options > Content) and you can view the feed with the intended style.

An RSS feed in IE7 An RSS feed in IE7
IE7's default feed view, and the same page with the xml-stylesheet applied properly
(note that some CSS2 is still missing, such as :after { content: }).

Next, I checked out Opera to see how it handles XML feeds. Opera is also a full-featured feed reader that allows you to subscribe to and read feeds from within the browser. When visiting a feed, an alert window, much a like a Javascript alert, pops up and asks you if you'd like to subscribe to the feed. In the meantime, the feed is rendered in the background with the XML style properly applied. Unfortunately, if there is no stylesheet, it renders it normally, which is the ugliest of the three. It doesn't even present a DOM tree for unstyled XML, which was the default behavior of Firefox and IE before their current versions.

Table of contents
  1. "The Future of XML, Part I"
  2. "The Future of XML, Part II"
  3. "The Future of XML, Part III"
e p (4)    24 Comment(s)

Technology White Papers

See More