CINXE.COM

Be Unique And Use RSS Guid Like Everybody Else

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"> <head> <!-- Google tag (gtag.js) --> <script async src="https://www.googletagmanager.com/gtag/js?id=G-J80V1HPMKT"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-J80V1HPMKT'); </script> <title>Be Unique And Use RSS Guid Like Everybody Else</title> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="alternate" type="application/rss+xml" title="RSS Advisory Board" href="http://feeds.rssboard.org/rssboard" /> <link rel="preconnect" href="https://fonts.googleapis.com"> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link href="https://fonts.googleapis.com/css2?family=Anton&family=Lisu+Bosa:wght@700&display=swap" rel="stylesheet"> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" crossorigin="anonymous"> <style type="text/css" media="screen"> @import url("https://www.rssboard.org/images/stylesheet.css"); </style> <meta name="robots" content="noodp" /><meta name="description" content="Winter scenes: Snowflakes by Theodor Horydczak If you publish an RSS feed, you should do a solid for the developers of" /><link rel="canonical" href="https://www.rssboard.org/news/217/unique-and-use-rss-guid-like-everybody" /> </head> <body> <!-- ukey="13C1F4FD" --> <!-- Begin Page --> <div class="container page"> <div class="row"> <div class="col col-md-12 banner"> <h1 class="bannerhead"><a href="/">RSS Advisory Board</a></h1> <h2 class="bannersubhead">Really Simple Syndication specifications, tutorials and discussion</h2> </div> </div> <div class="row"> <div class="col col-md-10"><!-- Begin Google AdSense --> <div align="center"> <p><script type="text/javascript"><!-- google_ad_client = "pub-8378161688790357"; /* RSS Board, 728x90, created 10/30/10 */ google_ad_slot = "8997688149"; google_ad_width = 728; google_ad_height = 90; //--> </script> <script type="text/javascript" src="//pagead2.googlesyndication.com/pagead/show_ads.js"> </script></p> </div> <!-- End Google AdSense --><!-- Begin Main Content --> <!-- Begin Entries --> <div class="entries"> <a name="217"></a><div class="entryhead"><p><a href="https://www.rssboard.org/news/217/unique-and-use-rss-guid-like-everybody">Be Unique And Use RSS Guid Like Everybody Else</a></p></div><div class="entry"><figure class="text-center"><img src="https://www.rssboard.org/images/rss-guid-unique-snowflake.jpg" alt="Black and white photo of 12 snowflakes from the Library of Congress taken by Theodor Horydczak to illustrate that all snowflakes are unique" class="img-fluid img-thumbnail" width="564" /><figcaption class="figure-caption"><i>Winter scenes: Snowflakes by Theodor Horydczak</i></figcaption></figure> <p>If you publish an RSS feed, you should do a solid for the developers of RSS readers by including a <a href="https://www.rssboard.org/rss-profile#element-channel-item-guid">guid</a> in each item. The guid's job is to be a unique identifier that helps software downloading your feed decide whether it has seen that item before. Here's the guid for an item on the arts and technology blog Laughing Squid:</p> <p><code>&lt;guid isPermaLink="false">https://laughingsquid.com/?p=914660&lt;/guid></code></p> <p>No other item on Laughing Squid will ever have this guid value. It's a URL that loads a blog post with the title <a href="https://laughingsquid.com/elephant-pretends-to-eat-hat/">Playful Elephant Pretends to Eat Woman's Hat</a>. If you load the guid's URL <a href="https://laughingsquid.com/?p=914660">https://laughingsquid.com/?p=914660</a>, it redirects to the permanent link of the post. Because the guid is not the permanent link, there's an <code>isPermaLink</code> attribute with a value of <code>false</code>.</p> <p>Most guid values in RSS feeds are the permanent link of the item, as in this example from the world news site Semafor:</p> <p><code>&lt;guid>https://www.semafor.com/article/07/07/2023/us-jobs-data-what-experts-make-of-the-new-numbers&lt;/guid></code></p> <p>A drawback of using the permalink is that if any part of the URL changes -- such as the title text or the domain name -- the guid changes and RSS readers will think this is a new item to show the feed's subscribers, when it's actually a repeat.</p> <p>A guid doesn't have to be a URL. It can be any string that the feed publisher has chosen to be unique. Here's the guid from the RSS Advisory Board's feed for this blog post:</p> <p><code>&lt;guid isPermaLink="false">tag:rssboard.org,2006:weblog.217&lt;/guid></code></p> <p>Our guid follows the <a href="http://www.faqs.org/rfcs/rfc4151.html">TAG URI scheme</a>, a simple way to assure uniqueness by putting these five components together in this order:</p> <ol> <li>The text "tag"</li> <li>A domain owned by the feed provider</li> <li>A year the provider owned that domain</li> <li>A short name for the feed different from any other feed on the site</li> <li>The internal ID number of the post</li> </ol> <p>There's different punctuation between each component. The year 2006 was when the board began using the domain rssboard.org. No one else used that domain that year, so any feed reader that stores "tag:rssboard.org,2006:weblog.217" as this item's guid should never encounter that value in any other item on any other feed.</p> <p>To see how RSS 2.0 feeds are using guid, several thousand feeds were downloaded this evening from an RSS aggregator that publicly shares the OPML subscription lists of its users.</p> <p><table class="table"> <thead> <tr> <td><b>Category</b></td> <td><b>Total</b></td> <td><b>Percentage</b></td> </thead> <tbody> <tr> <td>Total number of feeds</td> <td>4,954</td> <td>--</td> </tr> <tr> <td>Feed using guid</td> <td>4,777</td> <td>96.4%</td> </tr> <tr> <td>Feeds using non-permalinks in guid</td> <td>752</td> <td>15.2%</td> </tr> </tbody> </table> <p>The term guid means "globally unique identifier," but RSS 2.0 does not require global uniqueness in guids. Because the TAG URI scheme does a good job of serving that purpose, Blogger, Flickr, MetaFilter, SoundCloud and The Register are among the sites using it in their feeds.</p><a name="more"></a><div class="entryfooter">Posted by Rogers Cadenhead at 2023/07/10 10:30 PM | 3 COMMENTS | <a href="https://www.rssboard.org/news/217/unique-and-use-rss-guid-like-everybody">permalink</a></div></div> <div class="dateheader">Comments</div><a name="discuss"></a> <div class="entry"><a name="94972"></a><p>BlockBlast's anomaly detection - Spot trending micro-niches from raw feed data<br /> </p><div class="entryfooter">Posted by <a href="https://blockblast.link/" rel="nofollow">block blast game</a> at <a href="#94972">2025-03-01 09:23 PM</a></div></div><div class="entry"><a name="94973"></a><p>HappyGlass's visual parser - Transform XML into interactive media cards<br /> </p><div class="entryfooter">Posted by <a href="https://happyglass.online" rel="nofollow">HappyGlass</a> at <a href="#94973">2025-03-01 09:24 PM</a></div></div><div class="entry"><a name="94974"></a><p>ColorBox CSS injector - Brand feeds without breaking validator rules<br /> </p><div class="entryfooter">Posted by <a href="https://colorbox-mustard.online" rel="nofollow">ColorBox</a> at <a href="#94974">2025-03-01 09:24 PM</a></div></div> <a name="reply"></a><form method="post" action="https://www.rssboard.org/news/217/unique-and-use-rss-guid-like-everybody#respond"> <table width="100%" cellspacing="0" cellpadding="2"> <tr valign="top"><td><label for="author">Name</label>: </td><td><input type="text" size="50" name="author" id="author" value="" tabindex="1" /></td></tr> <tr valign="top"><td><label for="link">Web Site</label>: </td><td><input type="text" size="50" name="link" id="link" value="" tabindex="2" /></td></tr> <tr valign="top"><td colspan="2"><label for="feedback_11">Comment</label>: </td></tr> <tr valign="top"><td colspan="2"><p><textarea name="feedback" id="feedback" cols="70" rows="18" tabindex="3"></textarea> <p><div class="entryhead" id="comment_preview_head"><p id="comment_preview"></p></div></td></tr> <tr valign="top"><td></td><td><input type="hidden" name="dex" value="" /><!-- <input type="text" name="abuseflag" value="8-222-208-146" size="30" /> --><input type="hidden" name="dkey" value="062" size="30" /><input type="submit" name="submit" value="Preview Comment" tabindex="4" /><input type="hidden" name="dkey" value="062" SIZE="30"></td></tr> </table> </form> <!-- End Entries --> </div><!-- End Main Content --> </div> <div class="col col-md-2 sidebar"> <!-- Begin Sidebar --> <p class="text-center"> <a href="/"><img src="/images/rss-feed-icon-96-by-96.png" width="96" alt="RSS icon" class="img-fluid"></a> </p> <div class="sidebargroup"> <div class="sidebartitle">Main Menu</div> <div class="sidebarlink"><a href="https://www.rssboard.org/">RSS Advisory Board</a></div> <div class="sidebarlink"><a href="https://www.rssboard.org/rss-specification">RSS Specification</a></div> <div class="sidebarlink"><a href="https://www.rssboard.org/rss-profile">RSS Profile</a></div> <div class="sidebarlink"><a href="https://www.rssboard.org/rss-validator/">RSS Validator</a></div> <div class="sidebarlink"><a href="https://www.rssboard.org/rss-autodiscovery">RSS Autodiscovery</a></div> <div class="sidebarlink"><a href="https://www.rssboard.org/advisory-board">Board Members</a></div> <div class="sidebarlink"><a href="https://www.rssboard.org/charter" rel="nofollow">Charter</a></div> <div class="sidebarlink"><a href="https://groups.google.com/g/rss-public">RSS-Public Mailing List</a></div> <div class="sidebarlink"><a href="https://www.rssboard.org/rss-language-codes">RSS Language Codes</a></div> <div class="sidebarlink"><a href="https://www.rssboard.org/rsscloud-interface">RSSCloud Interface</a></div> <div class="sidebarlink"><a href="https://www.rssboard.org/rss-history">RSS History</a></div> </div> <div class="sidebargroup"> <div class="sidebartitle">RSS Feeds</div> <div class="sidebarrsslink"><a href="http://feeds.rssboard.org/rssboard" rel=\"nofollow\"><img src="/images/rss-icon.png" alt="Subscribe to Really Simple Syndication" border="0" width="16" height="16" /></a> <a href="http://feeds.rssboard.org/rssboard" rel=\"nofollow\">This Weblog</a></div> </div> <div class="sidebargroup"> <div class="sidebartitle">Social Media</div> <div class="sidebarlink"><a rel="me" href="https://mastodon.social/@rssboard">Mastodon</a></div> </div> <div class="sidebargroup"> <div class="sidebartitle">Spec Library</div> <div class="sidebarlink"><a href="https://www.rssboard.org/rss-specification">RSS 2.0 (Current)</a></div><div class="sidebarlink"><a href="https://www.rssboard.org/rss-2-0">RSS 2.0</a></div><div class="sidebarlink"><a href="https://www.rssboard.org/rss-0-9-2">RSS 0.92</a></div><div class="sidebarlink"><a href="https://www.rssboard.org/rss-0-9-1">RSS 0.91</a> (UserLand)</div><div class="sidebarlink"><a href="https://www.rssboard.org/rss-0-9-1-netscape">RSS 0.91</a> (Netscape)</div><div class="sidebarlink"><a href="https://www.rssboard.org/rss-0-9-0">RSS 0.90</a></div> <div class="sidebarlink"><a href="https://www.rssboard.org/rss-change-notes">RSS Change Notes</a></div> </div> <div class="sidebargroup"> <div class="sidebartitle">Namespaces</div> <div class="sidebarlink"><a href="https://www.rssboard.org/creative-commons">Creative Commons</a></div> <div class="sidebarlink"><a href="https://www.rssboard.org/media-rss">Media RSS</a></div> <div class="sidebarlink"><a href="https://www.rssboard.org/trackback">Trackback</a></div> </div> <div class="sidebargroup"> <div class="sidebartitle">Archive</div> <div class="sidebarlink"><a href="https://www.rssboard.org/site-index" rel="nofollow">Site Index</a></div> </div> <div class="sidebargroup"> <div class="sidebartitle">Board Members</div> <div class="sidebarlink">Rogers Cadenhead</div> <div class="sidebarlink">Sterling "Chip" Camden</div> <div class="sidebarlink">Simone Carletti</div> <div class="sidebarlink">James Holderness</div> <div class="sidebarlink">Jenny Levine</div> <div class="sidebarlink">Eric Lunt</div> <div class="sidebarlink">Randy Charles Morin</div> <div class="sidebarlink">Ryan Parman</div> <div class="sidebarlink">Jake Savin</div> <div class="sidebarlink">Jason Shellen</div> <div class="sidebarlink">Paul Querna</div> </div> <div class="sidebargroup"> <div class="sidebartitle">Other Formats</div> <div class="sidebarlink"><a href="https://datatracker.ietf.org/doc/html/rfc4287" rel="nofollow">Atom</a></div> <div class="sidebarlink"><a href="http://web.resource.org/rss/1.0/" rel="nofollow">RDF Site Summary</a></div> </div> <!-- End Sidebar --> </div> </div> <div class="row top10header"> <div class="col"> <h2 class="top10">Popular Pages on This Site</h2> </div> </div> <div class="row"> <div class="col"> <ul> <li><a href="https://www.rssboard.org/rss-validator/">RSS Validator</a></li> <li><a href="https://www.rssboard.org/media-rss">Media RSS Specification (Current)</a></li> <li><a href="https://www.rssboard.org/rss-specification">RSS 2.0 Specification</a></li> <li><a href="https://www.rssboard.org/rss-profile">RSS Best Practices Profile</a></li> <li><a href="https://www.rssboard.org/redirect-rss-feed">How to Redirect an RSS Feed</a></li> </ul> </div> <div class="col"> <ul> <li><a href="https://www.rssboard.org/rss-language-codes">RSS Language Codes</a></li> <li><a href="https://www.rssboard.org/rss-enclosures-use-case">Payloads for RSS</a></li> <li><a href="https://www.rssboard.org/rss-encoding-examples">RSS Encoding Examples</a></li> <li><a href="https://www.rssboard.org/rss-autodiscovery">RSS Autodiscovery</a></li> <li><a href="https://www.rssboard.org/news/212/read-rss-feed-php-using">How to Read an RSS Feed with PHP Using SimplePie</a></li> </ul> </div> </div></div> <!-- End Page --> <div class="footer"> <p><a href="/">RSS Advisory Board</a> | <a href="http://feeds.rssboard.org/rssboard">RSS Feed</a> | <a href="https://www.rssboard.org/rss-specification">RSS Specification</a> | Hosted by <a href="https://workbench.cadenhead.org/">Workbench</a></p> </div> </div> <script src="https://code.jquery.com/jquery-3.4.1.slim.min.js" integrity="sha384-J6qa4849blE2+poT4WnyKhv5vZF5SrPo0iEjwBvKU7imGFAV0wwj1yYfoRSJoZ+n" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js" integrity="sha384-wfSDF2E50Y2D1uUdj0O3uMBJnjuUD4Ih7YwaYd1iqfktj0Uod8GCExl3Og8ifwB6" crossorigin="anonymous"></script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10