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

Re: telecon Thursday, 1600 UTC

From: Ben Adida <ben@adida.net>
Date: Fri, 21 Dec 2007 14:04:17 -0800
Message-ID: <476C3861.3060609@adida.net>
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 GMT

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