- From: Ben Adida <ben@adida.net>
- Date: Wed, 19 Sep 2007 16:06:42 -0700
- To: RDFa <public-rdf-in-xhtml-tf@w3.org>
Hi all, So we haven't yet resolved the issue of what @instanceof refers to when there is both @about and @resource/@href on an element. We should take it to a vote, but before we do, I was asked to clarify my point that @resource overriding @about is actually based on logic, not just preference. Mark's point is that @instanceof applies to "the node that corresponds to the element" on which @instance of is written. I actually agree with that. At the same time, we agree that <div resource="#ben" instanceof="foaf:Person> </div> yields <#ben> rdf:type foaf:Person . So, in this case, as per Mark's point, the node that corresponds to the div is <#ben>, the value of @resource. It seems clear that @resource is thus a valid candidate for the subject of @instanceof. Otherwise, we're making a weird exception to Mark's rule about "the node that corresponds to the element" for the above triple. Now, here's how one can logically think of @resource overriding @about. Consider the following markup: <div about="photo.jpg" rel="foaf:depicts" resource="#ben"> <span property="foaf:name">Ben Adida</span> </div> The triples are: <photo.jpg> foaf:depicts <#ben> . <#ben> foaf:name "Ben Adida" . Now if we take @resource away: <div about="photo.jpg" rel="foaf:depicts"> <span property="foaf:name">Ben Adida</span> </div> the chaining node becomes a blank node: <photo.jpg> foaf:depicts _:bnode0 . _:bnode0 foaf:name "Ben Adida" . And if we take @rel away, chaining collapses, and foaf:name's subject now goes "further up" the tree and finds the @about: <photo.jpg> foaf:name "Ben Adida" . Logically speaking, for contained elements, @rel creates a bnode that overrides @about, and @resource overrides that bnode and, thus, transitively, @about. Now, we already established that @resource *is* a valid subject for @instanceof when no other attributes are present. And we even mentioned that @instanceof is actually syntactic sugar for a child element. This must mean that @instanceof should be considered "deeper down the tree" than @resource. How, then, can we logically justify that @about overtakes @resource in the case of @instanceof, when precisely the opposite happens for child elements? In my mind, adding @rel and @resource squeezes the new chaining subject between @about and child elements, and @instanceof is, in fact, equivalent to a child element. There may well be a different reasoning that justifies the other point of view, but the above is meant to show that there is very much a logical approach to assuming that @resource overrides @about as the subject of @instanceof, not the other way around. Now we can take an informed vote :) -Ben
Received on Wednesday, 19 September 2007 23:06:50 UTC