Link Relationships Revisited, Part 2

As I mentioned in part 1, I plan to discuss major modification to my original link relationships proposal taking into account feedback and ideas received from a variety of sources. For this, I am currently writing, and will soon publish, the first working draft for a link relationship profile called “Web Communication Link Relationships”. The aim is to define link relationships that will facilitate web communication through increased linking semantics. This proposal, rather than focussing on rating systems, focuses on the semantics of the links to be used by user agents in ways that will most benefit the user.

The criteria I will use to determine which relationships are appropriate and to make improvements includes:

  • Link Relationships should express semantics to indicate at least one of:
    • The semantic relationship between resources.
    • The type of resource.
    • The purpose of the link
  • Relationship semantics should make sense in the context of any number of user agents.
  • Relationship names should accurately represent the semantics of the relationship, and
  • Relationship semantics should avoid expressing user-agent-implementation specific functionality.

From those criteria, I determined that the number and type of categories I originally included (user feedback, quality, accuracy, accessibility, rating and endorsement) were mostly very inappropriate. I decided that the categories: quality, accuracy, accessibility and rating should be removed entirely because they don’t meet the criteria, nor were they particularly useful. This left only the values from user feedback and endorsement; however, user feedback is being renamed to user contribution because a contribution may not necessarily be the result of feedback, but rather the start of a new thread, for example.

User Contribution

The user contribution category is designed to identify links which have been published as a result of user contribution. It is common for several different kinds of links to be published as a result of user contribution including user identification (eg. User’s homepage or e-mail address), the use of a referral mechanism (eg. Pingback or Trackback) or links contained within the user’s contribution. As a result, I have the following relationships defined for this category:

  • user
  • referral
  • pingback
  • trackback
  • contribution

Note: Both pingback and trackback are implementation specific referral mechanisms, but are included because their mechanisms are so widespread and several interoperable implementations of each already exist. See the Pingback 1.0 and Trackback specifications.


The original endorsement category is being included with the same relationships, though their definitions are being revised. The relationships in this category will be:

  • advert
  • endorsed
  • unendorsed
Communication Tracking

A few months ago, Derek Featherstone had an interesting discussion about tracking the spread of ideas. In it, he discusses the common attribution method called the “via” link, used among web-logs (in particular, link-logs) and other similar sites for indicating where an interesting resource was found. The aim of which is to not only find out who is linking to a particular resource, but from whereabouts people have located it.

This is an interesting concept because news travels rather quickly around the blogosphere, but with little indication of the communication paths. As a result, I am including the via link within this proposal, but I’m also extending it slightly to address some other related issues including related links.

In the article, Derek mentions that it is difficult to semantically associate a “via” link with the resource and illustrates a possible solution using the for attribute, yet notes that it is also invalid markup according to the HTML specification. To address this problem, I have decided that rather than trying to explicitly associate the “via” link with the resource, it may be possible to implicitly do so. The full details of how will be discussed in the draft specification, but the relationships being included within this category include:

  • resource
  • related
  • related-to
  • via
Resource Tracking

The final category includes relationships for identifying and tracking resources commonly used in web communication, such as web-logs and news sites. Usually, each article has permanent link associated with it and archival indexes are provided for the articles. Many sites also have facilities, and designate pages/areas, for user contributions (comments). Finally most blogs, and increasingly news sites, provide syndication feeds for their articles, link logs and occasionally comments. For these purposes, I’ve defined the following relationships:

  • permalink
  • comments
  • archive
  • feed
Other Suggestions

Several other relationships have been suggested and considered, but so far rejected for various reasons including not meeting the criteria or their usefulness. Some of these include:

Technorati defines, and uses, user-agent-implementation specific functionality and it seems to be inappropriately named.
Generic version of tag, but not sure how it could be defined and used more appropriately.
Suggested to indicate links to external sites, but not sure how useful it is.

Feedback is welcome and I will still incorporate suggestions and revisions into the Web Communications Link Relationship working draft before I publish it in a few days.

2 thoughts on “Link Relationships Revisited, Part 2

  1. Hi Lachlan — looking forward to seeing the details.

    Just one quick point about the link rel=”via” and semantically associating it with the appropriate resource. I think I’ve found a way that is much simpler than what I had proposed in my original article – it will make it easy to create the association and for machines to parse so that it is actually usable.

    I’ll try to write it up later on and pass it by you…

  2. There is a more formal definition of the tag spec and you should also see my blog posts on the topic.

    Most of these ‘rel’s are rather vague. Why have rel=”related” ?

    rel=”bookmark” is the existing semantic for a permalink.
    rel=”alternate” with a type descriptor the standard for a feed.

    contributions might be better handed with <blockquote cite=””

Comments are closed.