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

Re: [RDFa] ISSUE-3 @class and @role for rdf:type

From: Ivan Herman <ivan@w3.org>
Date: Thu, 05 Jul 2007 15:58:23 +0200
Message-ID: <468CF8FF.3020001@w3.org>
To: mark.birbeck@x-port.net
CC: Steven Pemberton <steven.pemberton@cwi.nl>, Ben Adida <ben@adida.net>, public-rdf-in-xhtml-tf@w3.org
Well... if you two guys still disagree after all these years, that may
be one more argument _against_ using @role (not necessarily _for_
@class, another attribute might also do...):-)

Mark Birbeck wrote:
> Hi Steven
> On 05/07/07, Steven Pemberton <steven.pemberton@cwi.nl> wrote:
>> On Thu, 05 Jul 2007 13:26:30 +0200, Mark Birbeck
>> <mark.birbeck@x-port.net>
>> wrote:
>> > My argument has always been that something 'playing the role of x', is
>> > not the same as 'something being x', and so @role should not represent
>> > rdf:type.
>> I've never understood this argument, which seems to be based on what
>> things mean in English. Something "being of class X" is also not the same
>> as "something being X". But so what? The question is about the mapping to
>> RDF.
> The rationale for my argument has nothing to do with that slippery
> language English, and everything to do with what things 'mean' in RDF.
> In RDF, if you say something is of type 'x' then all sorts of other
> statements become legitimate. So if I firstly say that 'a toolbar' has
> a property of 'collection of buttons', and then I subsequently say
> that 'the second <div> in my document is a toolbar', then it is
> legitimate to act as if the second <div> in my document has a property
> of 'collection of buttons'.

Mark, for the records, I am not sure this is true. To formalize it in
RDF what you seem to say is that if:

toolbar a rdfs:Class.

collectionOfButtons a rdfs:Property;
    rdfs:domain toolbar.

2ndDiv a toolbar.

then we can deduce that... what? Only that

   2ndDiv collectionOfButtons "something".

is consistent with these, but we _cannot_ deduce that such a triple
exists somewhere.

You can do what you describe with OWL cardinality constraints describing
things on collectionOfButtons...

Actually, we can do something different with those. If the facts are that

toolbar a rdfs:Class.
collectionOfButtons a rdfs:Property;
    rdfs:domain toolbar.
2ndDiv collectionOfButtons "something".

then even in RDFS we can deduce that

2ndDiv a toolbar.

which is somewhat different from what you said.

The second example shows that, indeed, rdf typing may have consequences
(for example if OWL is used), ie, your core argument holds, just the
example does not:-)


> My argument is that to deduce this set of additional statements from
> @role is a step too far, and is more than was ever intended with
> @role. We can certainly safely say 'the second <div> in my document
> _is playing the role_ of a toolbar on this page'. Here we are simply
> saying something about the 'intent' of the mark-up, or its purpose,
> and the following triples capture that:
>  <_:a> xh:role wai:toolbar .
> But that is a world away from saying that the <div> we are dealing
> with is *indistinguishable* from a wai:toolbar, which is what this
> means:
>  <_:a> rdf:type wai:toolbar .
> The thing is we don't lose anything from not defining this as
> rdf:type, and we gain a lot. By only saying that something is 'playing
> the role of', we allow other systems to infer what they think is
> appropriate about those roles. ARIA is a case in point; it has a set
> of statements that are being made about certain resources. But we do
> lose something if we say that @role="wai:toolbar", because that means
> that the <div> is now an actual, real-live toolbar, and that will
> invariably be incorrect or meaningless.
> So in my view, if we want a shorthand for rdf:type, it must be either
> @class or a new attribute.
> Regards,
> Mark


Ivan Herman, W3C Semantic Web Activity Lead
URL: http://www.w3.org/People/Ivan/
PGP Key: http://www.cwi.nl/%7Eivan/AboutMe/pgpkey.html
FOAF: http://www.ivan-herman.net/foaf.rdf

Received on Thursday, 5 July 2007 14:11:38 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 21:50:23 UTC