PermaLinks, Purple Numbers, and the Semantic Web
By Eric Armstrong on Jan 14, 2008
I recently found the pages on Microformats, which led me to the discussion of "Plain Old Semantic Web" (POSH). (That's by far the best discussion I've seen on the subject. It doesn't even mention the idiotically arbitrary non-distinction between <b> and <strong>, instead focusing on far more important distinctions for semantic processing.)
On the page that talks about using id attributes, it mentions that they function as anchors! (I of course knew of the syntax, but only just know found out about the semantics.) Using them cleans up the HTML considerably,
especially if you use rollover effects for links and forget to close an anchor tag (the rollover applies to
all text from <a name=""... until the next <a...).
The page then goes on to illustrate the addition of a permalink, using a tag at the end of an entry:
<div class="entry" id="e000501">
<a href="#e000501" title="Permalink" rel="bookmark">#</a>
(Interestingly, rel="bookmark" is recommended--perhaps because it distinguishes that link from navigational
links. But there is no discussion of the use case that makes it important.)
The hashmark, of course, had its origin in Doug Engelbart's "purple numbers", originally showcased in his 1968 demo! In 2004, or thereabouts, Chris Dent led the charge to bring purple numbers to the web in a big way. The Purple Wiki pages at Eugene Kim's BlueOxen site also used that strategy.
But creating numbers for things gets to be a pain--especially when you make revisions and have to figure out the next available number to use. So someone came up with the "purple pilcrow" (a reversed paragraph mark that turns out to be one of the special characters you can specify with a number). I'm not sure if it was Tim Bray's invention, but he certainly blogs about why using that character makes more sense than a number. (He uses them, too. They're almost invisible. But if you look hard, you'll see them.)
The lost somewhere in the mists of time, someone came up with the idea of using a hash mark . That seems to be
the winning idea, since it is a standard keyboard character that means "number" in many settings. So just in case you were wondering where they came from, now you know!
- Microformats: http://microformats.org/wiki/Main_Page
- POSH: http://microformats.org/wiki/posh#The_POSH_Process
- Anchors: http://tantek.com/log/2002/11.html#L20021128t1352
- Doug Engelbart's Bootstrap Org: http://www.bootstrap.org/
- Chris Dent's original purple numbers: http://www.burningchrome.com/~cdent/mt/archives/000388.html
- Blue Oxen Purple Wiki: http://purplewiki.blueoxen.net/cgi-bin/wiki.pl
- Tim Bray's purple pilcrows: http://www.tbray.org/ongoing/When/200x/2004/05/29/PurpleNumbers
- Discussion of purple hash marks: http://collab.blueoxen.net/forums/tools-yak/2004-02/msg00030.html