Instapundit, Radio and Permalinks

I’ve noticed for some time that Instapundit’s feed and Radio don’t quite get along. You can read Instapundit just fine in Radio, but there are no permalinks to individual posts.

A few minutes of experimentation reveals the problem. Here is an excerpt from Instapundit’s feed:

<item>
<title></title>
<link>http://www.instapundit.com/archives/011222.php</link>
<description>TODAY'S MY BIRTHDAY, [snip snip snip] … </description>
<guid isPermaLink=”false”>11222@http://www.instapundit.com/ </guid>
<dc:subject></dc:subject>
<dc:date>2003-08-27T08:28:07-05:00</dc:date>
</item>

(note to regexp hackers: this will display slightly differently in Internet Explorer and Mozilla, which mangle the XML string representation of the XML as they see fit).

Now, the problem comes from the mix of empty title and a guid with isPermaLink set to false. Empirically it looks like Radio will display the permalink icon (#) at the right if the feed is RSS 2.0 and the guid is a permalink. Alternatively, it will hyperlink the item’s title with the link‘s url if both are present. But since Instapundit doesn’t set the title, there is nothing to hyperlink and we have to go to http://www.instapundit.com/ to read individual stories.

I’ll point the various parties to this post to see if we can get things fixed. In the meantime, here is a short Unix incantation that makes the feed more Radio-friendly:

wget -O – http://www.instapundit.com/index.xml | sed -e ‘s/<title></title&gt/<title>#</title>/g’ > radio-friendly-instapundit.xml

ps Happy Birthday Instapundit!

6 thoughts on “Instapundit, Radio and Permalinks”

  1. This isn’t mangling the XML, this is conformant with the spec. XML documents aren’t strings…

  2. Thanks XML Geek….heh heh lots ‘O experts these days, very few mechanics. Tired of people parsing XML with Perl and THEN bitching about the results.

  3. Okay, okay, I give in. You’re right. XML documents are not strings. I’ve updated the post replacing “XML” with “string representation of the XML”.

    The XMLish way to do this is to decide whether to parse it as DOM or SAX, then to load the feed as an XML document, and finally to implement the proper query or handler to delete empty titles. Regexps provided a cheap solution to a (hopefully) temporary problem. I was just trying to point out a potentially confusing discrepancy between what the feed says and what the browser says.

  4. As a side note, what I was really reacting to here is IE’s tendency to manipulate. As another example, save a Web page from IE sometime and compare the contents of the saved file with View Source. Both will display the same way in a browser, sure, but the changes can be very annoying for someone coding HTML.

Comments are closed.