- From: Ben Adida <ben@adida.net>
 - Date: Fri, 21 Dec 2007 14:04:17 -0800
 - To: Manu Sporny <msporny@digitalbazaar.com>
 - CC: RDFa <public-rdf-in-xhtml-tf@w3.org>
 
Manu Sporny wrote:
> Let's take it step-by-step to see if there is any disagreement on what
> an implementation would do:
> 
> <div about="#q" rel="q:r">
> 
> At this point in the process, we have the following data in the parser:
> 
> <#q> <q:r> [UNKNOWN_HANGING_REL_OBJECT]
> 
> When we process the next line,
> 
> <div instanceof="a:b"/>
> 
> At this point in the process, we have the following data in the parser:
> 
> <#q> <q:r> [UNKNOWN_HANGING_REL_OBJECT].  <---- incomplete triple
> _:x <rdf:type> <a:b>.                     <---- complete triple
> 
> The parser would then, upon seeing a target object for the
> UNKNOWN_HANGING_REL, which is _:x, complete that triple. This would
> result in the following data, and complete triples, in the parser:
> 
> <#q> <q:r> _:x.
> _:x <rdf:type> <a:b>.
> 
> Does that make sense? Mark, Ben, Ralph, was this your understanding of
> the processing rules for @instanceof as well?
Yes, that is exactly the model. The @rel with no object is "left
hanging", waiting for completion. @instanceof always applies to the
current element's subject, which may complete a hanging triple from above.
Specifically, a hanging rel can be completed either by
1) @about on a child node, which then becomes an object of the hanging rel.
or
2) a bnode created by @instanceof on an element with no @about or @src.
or
3) an implied bnode if you just start hanging new properties using
@property and @rel.
Note how this works out nicely, starting with your markup:
  <div about="#q" rel="q:r">
     <div instanceof="a:b" />
  </div>
which yields
  <#q> q:r _:bn0 .
  _:bn0 rdf:type a:b .
and then, if you suddenly choose to give the inner div an @about:
  <div about="#q" rel="q:r">
     <div about="#foo" instanceof="a:b" />
  </div>
it gives you the same RDF graph structure, only now with a named node:
  <#q> q:r <#foo> .
  <#foo> rdf:type a:b .
That's the kind of consistent behavior that convinced me that Mark's
chaining rules are the right model.
-Ben
Received on Friday, 21 December 2007 22:04:25 UTC