Help me add link type values to O'Reilly Developer weblog links
by Bob DuCharme
In an earlier weblog entry, I bemoaned the lack of link typing out there. There are several link type taxonomies, but they're like database schemas without databases: hardly anyone has actually put these taxonomies into practice, assigning the types to any realistic collection of links.
So I started assigning some link types to a bunch of links. Because weblogs, as a new class of content, have inspired new linking applications such as Technorati and Weblog Bookwatch, and because weblog entries often cite each other, it seemed like a good subset of the web to use. For an even more focused subset, I just went with O'Reilly Developer weblogs.
Assigning types to the links within my own weblog entries was easy; that's what the HTML A element's REL attribute is for. See the source of this weblog posting or my last few for examples.
To assign types to links created by other O'Reilly Developer webloggers, RDF was a no-brainer—if you can't use it to add metadata to resources that can be identified by URLs, you can't use it for anything. (And, the necessary RDF turned out to be remarkably simple and straightforward.) For the link type values, I used the link taxonomy from Randall Trigg's 1983 Phd thesis, augmented with more types that I came up with myself to suit the world of weblogging: Blog Link Types, or BLT. I also threw in a few of the suggested values for the REL attribute.
Technorati.com and Weblog Bookwatch are only the beginning of potential new linking applications built around weblog content. Just imagine the possibilities if a large amount of the links in weblogs had link type indicators. When you know why links were created, and can look for patterns in those motivations, all kinds of interesting information can emerge. For example, according to Weblog Bookwatch, Ann Coulter's "Treason" is the most commonly mentioned book after the new Harry Potter. We can assume that many people admire her book and others consider it badly-documented lies; wouldn't it be nice to know exactly how many people liked her book (indicated with a link type value of "blt:Resource-good"), how many thought her arguments were simplistic ("tt:Pt-simplistic"), based on strawman arguments ("tt:A-strawman"), based on dubious data ("tt:D-dubious"), and so forth? (I use "tt" as a namespace prefix for Trigg's types—he has quite a rich set of negative link types to choose from.) Wouldn't it be great to see how those numbers change from week to week? Or to have an SVG-generated pie graph next to each book on Bookwatch showing the relative proportions of types assigned to all of the links to a given book?
So join me! Go to my Blog Link Types (blt) home page to learn more about what I've done so far. Then, add types to your own links. Add types to any links on the web that you want (to add out-of-line link typing entries to my RDF file, I have a form you can fill out), but particularly to weblog links, and especially O'Reilly Developer weblogs. Let me know the URLs of pages where you've added REL attributes, or of the URLs of RDF files if you've created new files of out-of-line link typing.
If enough are added to O'Reilly Developer weblogs, we'll have the data to experiment with an interesting new class of linking applications.
Have you added types to any links following the Blog Link Types guidelines? Or is my whole idea a waste of time?
Whuffie Link Attributes
There's been a debate about links as endorsement that seems to be a real need in the blog world. The idea is to add a vote attribute indicating positive or negative affect. See:
Looking forward to your thoughts on Purple Numbers
Before I posted http://www.oreillynet.com/pub/wlg/3189, I e-mailed Kim to ask his opinion, and never got a reply. I think that his purple numbers were a good idea, but that along with the a/@name attribute they are no longer necessary now that the popular browsers can address points within a document when @id values are specified instead of @name values. (For example, http://www.snee.com/foo.html#bar to point to an element in foo.html for which id="bar".)