[uf-discuss] Microformats and RDFa not as far apart as previously
thought
Toby A Inkster
mail at tobyinkster.co.uk
Sat Jun 28 17:24:38 PDT 2008
Benjamin Hawkes-Lewis:
> If you want to to use RDF in an HTML context, look to eRDF
eRDF is an interesting experiment, but not particularly practical.
Probably the biggest practical problem with it is the use of the id
attribute to indicate that (by the attribute's mere presence) an
element is the subject of any data found in descendant elements. This
makes it difficult to add eRDF to existing documents which are
usually already sprinkled liberally with id attributes.
For example, if you have a side bar on a page and want to use it to
provide some supplementary information about the main body of text,
you might expect something like this to work:
<div id="sidebar">
<h2>About this page</h2>
<div class="dc-title">Foo bar</div>
<div class="dc-creator">Joe Bloggs</div>
</div>
However, this actually says that the title of <#sidebar> (i.e. not of
the whole page) is "Foo bar", and that <#sidebar> was created by Joe
Bloggs. Yes, you can rejig things a bit, make your sidebar use a
class instead of an id, but adding eRDF to existing pages a pain -
especially if they're not simple static pages, and you would need to
go through thousands of lines of server side code to find all those
id attributes.
If you're writing an eRDF page from the ground up, this will probably
not bother you as much.
The other serious concern is that any information you wish to state
about a resource which is not a physical anchor on the current page
needs to be made within a link. So if Alice wants to link to Bob's
page and mention the title of Bob's page, and when it was last
updated, she would need to write something along the lines of:
<a href="http://bob.example.net">
<span class="dc-creator">Bob</span>'s blog
<span class="dc-title">Groovin' with Bob</span>
was updated <span class="dc-date" title="20080629">today</span>
</a>
whereas without eRDF, most normal people would probably only want to
link the blog's title, not the whole phrase. This gets pretty awkward
if you want to say substantial amounts of information about an off-
page resource. (It's possible to work around it by using an id
attribute somewhere, saying the information about the id attribute
instead of saying it about the link, and then using owl:sameAs to say
that the link and the id attribute are the same thing. But that is a
hack.)
Final annoyance: varying between dots and hyphens to separate the
QName prefix and suffix, seemingly at random.
Yes, it's quite impressive what they managed to achieve, bringing
most of the RDF stack to HTML 4, without adding any new attributes or
elements. Yet when it comes to implementing it on real life pages,
it's annoying.
RDFa is a much nicer solution to work with.
--
Toby A Inkster
<mailto:mail at tobyinkster.co.uk>
<http://tobyinkster.co.uk>
More information about the microformats-discuss
mailing list