[RDFa] non-binding resolutions

Hi all,

Mark, Ralph and I had a very productive chat today where we agreed on
some non-binding resolutions. Our next steps are to

A) update the test cases
B) update the implementations
C) update the RDFa syntax doc (yes, we can start on this!)


Why non-binding? Because we were only 3 on the call and the resolutions
will be best achieved by *trying* them out in actual implementations,
rather than theorizing on them endlessly.

So, here they are, your non-binding resolutions.

1) @instanceof is the attribute name for rdf:type

2) @id does *not* play a role in RDFa triple generation.

3) @rel, @rev, and @instanceof cause chaining (aka striping), whether or
not there is @href/@resource on the element.


(2) and (3) cause changes to the rules I laid out a few days ago, so I
will restate the rules completely now.


- @rel (conversely @rev) creates triples with the given predicate. The
object of @rel (conversely the subject of @rev) is the "RDF identity" of
the current element, and the subject of contained elements is implicitly
set to that same "RDF identity."

- @instanceof applies to the "RDF identity" of the current element, and
sets of the subject of contained elements to this same "RDF identity."

- the RDF identity of an HTML element is, in order of precedence
	- @resource
	- @href
	- @src if it's an IMG
	- @about
	- a new bnode

(NOTE how @id is not present in this list anymore.)

Thus, here are some examples:



<div about="#me" rel="foaf:knows" instanceof="foaf:Person">
  <span property="foaf:name">Mark</span>
</div>

<#me> foaf:knows [ rdf:type foaf:Person ; foaf:name "Mark" ] .




<div about="#me" rel="foaf:knows" instanceof="foaf:Person"
     href="http://example.org/~mark">
  <span property="foaf:name">Mark</span>
</div>

<#me> foaf:knows <http://example.org/~mark> .
<http://example.org/~mark>
  rdf:type foaf:Person ;
  foaf:name "Mark" .




<div about="#me" instanceof="foaf:Person">
  <span property="foaf:name">Ben</span>
</div>

<#me> rdf:type foaf:Person .
      foaf:name "Ben" .




<div instanceof="foaf:Person">
  <span property="foaf:name">Ben</span>
</div>

_:div0 rdf:type foaf:Person ;
       foaf:name "Ben" .



<img about="#me" rel="foaf:image" src="ben.jpg" />

<#me> foaf:image <ben.jpg> .




And in any of these cases, adding @id doesn't change a thing about the
RDFa triples generated.

-Ben

Received on Thursday, 26 July 2007 17:03:46 UTC