Sam Newman's site, a Consultant at ThoughtWorks

A friend of mine pointed out that under “RSS Bandit”:, links to my posts are broken. I took a look, and it seems as though it is using the @@ element from my RSS 2.0 feed as a link, rather than the more usual @@. My @@’s are fairly standard (in an MT sense), and look a little like this:


Thinking that RSS Bandit was misusing this value, I thought I’d do a little research.

A quick google on the @@ element gives us this description:

guid stands for globally unique identifier. It’s a string that uniquely identifies the item. When present, an aggregator may choose to use this string to determine if an item is new.

If the guid element has an attribute named “isPermaLink” with a value of true, the reader may assume that it is a permalink to the item, that is, a url that can be opened in a Web browser, that points to the full item described by the element. An example:

isPermaLink is optional, its default value is true. If its value is false, the guid may not be assumed to be a url, or a url to anything in particular.

So what seems to be happening is that RSS Bandit is ignoring the @isPermaLink=”false”@ in my feed. I’m undecided as yet as to whether or not I’ll just change the @@ to be a proper permalink so it will work, but either way just how useful is a @@ which isn’t a permalink? More to the point, if we already have @@, why do we need @@? And why is RSS Bandit using @@ instead of @@? This RSS stuff is mighty strange…

9 Responses to “RSS Bandit mis-using RSS guid?”

  1. jsled does this as well, unfortunately. They provide the <link> content at the bottom of the post, too, but use <guid> for the anchor used for the title of the post, which breaks the UI. :/

  2. Phil Wilson

    You could move domain and republish the same items. This would break your [link] elements but you could keep your GUIDs the same so that aggregators wouldn’t duplicate all your entries.

    Among other things.

    I’m pretty surprised that this is broken in RSS Bandit as Dare should know the spec inside-out. Maybe it’s an old version? It’s a sourceforge project though, so you can “submit a bug”: .

  3. Sam Newman

    Yeah – I wondered about it being an old version as an item in the support forums mentioned in passing that RSS Bandit should only use the guid as a link if @isPermaLink@ is set to false, so someone over there obviously knew. Anyway I’ll grab the latest and retest.

  4. Sam Newman

    Confirmed that yes, bloglines also incorrectly uses my feed’s guid. I’ll file a bug with them also. As for @guid@’s working after a domain move, I’m struggling to think how this would work in the real world, but can at least understand it. I still think the RSS spec is horribly bloated though ๐Ÿ™‚

  5. Brent Simmons

    To answer the question “if we already have , why do we need ?”

    It’s because there’s nothing that says that the is a permalink. It may be, but it may not be. It may not even be unique in the feed. It might even link to some other site entirely.

    The tag addresses the problem of item identity in a way that doesn’t. When a guid is also a permalink, that’s even better — because otherwise there’s *no way* for an aggregator to know for sure what the permalink for an item is.

  6. Sam Newman

    Well, Is described as the “URL of the item”. If isn’t a permalink, then at some point it _stops_ being a link to the item, therefore is no longer correct according to the specification.

    I can understand the being used as some internal marker – and certainly some aggregators use as a way of determining if a post is new or not which seems perfectly sane. However I’m trying to think of a situation where I would use a as a permalink, but have it point to something other than what the is pointed to.

  7. l.m.orchard

    Sam: The phrasing “URL of the item” goes back to mixed usage of RSS– that is, some RSS feeds are lists of commentary on links pointing at other sites. And, more recently (relatively speaking) RSS feeds contain and refer to full-blown, independant pieces of content.

    The “URL of the item” in the first case refers to a news item (say from CNN or the BBC) about which the RSS feed’s author was commenting.

    The “URL of the item” in the second case refers to the full-blown piece of original content.

    If I recall, it’s this mishmash of uses that called for the GUID tag’s isPermaLink distinction.


Leave a Reply to jsled Cancel reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Basic HTML is allowed. Your email address will not be published.

Subscribe to this comment feed via RSS

%d bloggers like this: