W3C home > Mailing lists > Public > public-rdf-in-xhtml-tf@w3.org > August 2007

Re: Display values for RDFa object URLs

From: Mark Birbeck <mark.birbeck@formsPlayer.com>
Date: Thu, 9 Aug 2007 22:13:31 +0100
Message-ID: <a707f8300708091413x583d7480xc6d177324675ca2@mail.gmail.com>
To: "Manu Sporny" <msporny@digitalbazaar.com>
Cc: "RDFa mailing list" <public-rdf-in-xhtml-tf@w3.org>

Hi Manu,

> If we could get rid of that extra <span> around the "A Sample" text...
> that would be great. That would help make the HTML far less verbose...
> is the following what we're talking about doing?
>
> <div about="#song" instanceof="hmedia:Audio">
>  <a rel="hmedia:sample" property="rdfs:label"
>     href="http://www.bitmunk.com/sample/6011101">
>        A Sample
>  </a>
> </div>

The answer to your question will hopefully be the result of my action
item to "work rdfs:label back in". :) This is a reference to the fact
that we used to have support for rdfs:label in early drafts of RDFa,
but it was dropped. However, I think the reversion back to the old
technique of chaining might actually solve this problem (and allow me
to tick off an action item). So I'd appreciate comments from
interested parties, on the following proposal.

First to indicate what I'm trying to achieve. My goal is that by
simply writing this:

  <div about="#song" instanceof="hmedia:Audio">
    <a rel="hmedia:sample" href="http://www.bitmunk.com/sample/6011101">
      A Sample
    </a>
  </div>

the parser will create "A Sample" as an rdfs:label 'for free'.

However, every time I look at this, the problem has been what to
attach this label to. The only option that had any legs was to simply
generate it based on the parent subject:

  <#song>
    [
      rdf:type hmedia:Audio;
      hmedia:sample <http://www.bitmunk.com/sample/6011101>;
      rdfs:label "A Sample"
    ] .

But I was never happy with this because it is labelling the 'song',
rather than the link to the sample (which might be different).
However, in the chaining rules, @href would actually become the
subject for any nested RDFa statements, which means that this:

  <div about="#song" instanceof="hmedia:Audio">
    <a rel="hmedia:sample" href="http://www.bitmunk.com/sample/6011101">
      <span property="rdfs:label">A Sample</span>
    </a>
  </div>

 would give us something which I think is more useful (and logical):

  <#song>
    [
      rdf:type hmedia:Audio;
      hmedia:sample <http://www.bitmunk.com/sample/6011101>
    ] .
  <http://www.bitmunk.com/sample/6011101> rdfs:label "A Sample" .

My proposal would be to *automatically* generate an RDFS label for the
text content of any <a> element. The justification for this is that
this is actually what the author is already doing, and so the
semantics are actually correct. I.e., this is all that is needed:

  <div about="#song" instanceof="hmedia:Audio">
    <a rel="hmedia:sample" href="http://www.bitmunk.com/sample/6011101">
      A Sample
    </a>
  </div>

(One of the main motivations for this approach was actually the use
that could be made of this by search engines.)

Regards,

Mark

-- 
  Mark Birbeck, formsPlayer

  mark.birbeck@formsPlayer.com | +44 (0) 20 7689 9232
  http://www.formsPlayer.com | http://internet-apps.blogspot.com

  standards. innovation.
Received on Thursday, 9 August 2007 21:13:38 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 8 January 2008 14:15:09 GMT