Toby A Inkster
mail at tobyinkster.co.uk
Fri Jun 27 16:03:39 PDT 2008
It has been documented <http://microformats.org/wiki/rel-tag-other-
evidence> that rel-tag places significant limitations on authors'
choice of tag space.
Many popular blogs (in case you doubt the popularity of these blogs,
they were all in the top 40 results from a Google search for "blog"
at the time of writing) include category links that do not have URIs
suitable for use with rel-tag:
* http://blogs.msdn.com/ie/ (currently using rel-tag incorrectly)
Additionally, authors may wish to use links to searches for terms on
Google or various dictionary/thesaurus sites as tags, but these do
not typically use URIs suitable for rel-tag.
One of the principles <http://microformats.org/wiki/principles> of
microformats is to build around current behaviours and usage
patterns. Microformats involve adding a few class names and rel
values to existing semantic HTML; they should not require major
overhauls in publishing patterns. Requiring authors to fiddle
with .htaccess files (or whatever) to provide themselves with a clean
tagspace raises the barrier to entry too high. The alternative:
asking them to use a third party's tagspace (e.g. link all their tags
to Wikipedia or Technorati or whatever) is unrealistic, and doesn't
fit with existing publishing.
So I propose an extension to rel-tag.
As outlined above, there are many blogs which cannot easily use rel-
tag. However, there are also a large number that can, and already do.
So any extension to rel-tag has to be completely compatible with the
existing specification. Any existing data marked up with several rel-
tags should not find that the meaning of their tags has changed under
the extended format.
My proposed solution is that rel="tag" continues as-is, but
class="tag" is introduced as a parallel mechanism for marking up
tags. When class="tag" is used, the link text is used as the tag
value, subject to value excerption. Like rel="tag", class="tag" will
only be allowed on <a> and <area> tags, and not non-linking elements
such as <span>, nor invisible elements such as <link>.
As per the microformats principles, class="tag" is a use of semantic,
meaningful HTML; it is an example of visible metadata; and of course
it reuses terminology from rel-tag.
<a rel="tag" href="http://example.com/tags/TheTag">NotThis</a>
<a class="tag" href="http://example.com/tags/NotThis">TheTag</a>
For backwards compatibility reasons, when both rel="tag" and
class="tag" attributes are found on the same element, then the
existing rel="tag" parsing rules take precedence.
<a rel="tag" class="tag" href="http://example.com/tags/
Under this proposal, class="tag" would be allowed anywhere that rel-
tag is currently allowed, including hCard categories and xFolk tags.
Toby A Inkster
<mailto:mail at tobyinkster.co.uk>
More information about the microformats-discuss