anonymous abouts (blank node creation)

Some of the issues in the past days made me thing a bit. I refer here to
 issues like

http://lists.w3.org/Archives/Public/public-rdf-in-xhtml-tf/2007Jul/0143.html
http://lists.w3.org/Archives/Public/public-rdf-in-xhtml-tf/2007Jul/0136.html
http://lists.w3.org/Archives/Public/public-rdf-in-xhtml-tf/2007Jul/0137.html
http://lists.w3.org/Archives/Public/public-rdf-in-xhtml-tf/2007Jul/0142.html

One of the problems we are fighting with is when to generate a new blank
node and how...

I guess we will have something special for about values along the lines
of turtle for blank nodes, right? about="_:blabla" means a blank node
with nodeId (to use the RDF/XML terminology) "blabla". But what is the
meaning of about="_:". Well, mentally, I could say that this means a
blank node hose nodeId I do not care about, just let the system choose
whatever this wants.

What this means is that if I say

<div property="a:b" about="_:">blabla</div>

that would yield

[ a:b "blabla" ]

Or, if there are more things in <div> the blank node would act as a
common subject, because the same rules for @about would apply.

In

http://lists.w3.org/Archives/Public/public-rdf-in-xhtml-tf/2007Jul/0137.html

Mark proposed that

<div instanceof="foaf:Person">
    ...
</div>

would automatically create a blank node and instanceof would apply to
that. In fact, we could say that the real code here is:


<div instanceof="foaf:Person" about="_:">
    ...
</div>

in which case the rule from Mark simply come from our usual rules,
without any exception to instanceof (compared to the usage of @rel, ie,
to what the attribute applies to).

The other issue was to create a list of anonymous blank nodes. Well

<ul instanceof="rdf:List">
<li about="_:" instanceof="foaf:Person" property="foaf:name">A</li>
<li about="_:" instanceof="foaf:Person" property="foaf:name">B</li>
</ul>

would exactly do it. Note that if of the authors have his/her own
resource, than

<ul instanceof="rdf:List">
<li about="_:" instanceof="foaf:Person" property="foaf:name">A</li>
<li about="http://www.a.b.c" instanceof="foaf:Person"
property="foaf:name">B</li>
</ul>

would of course do it, and keep it very symmetrical.

We already have a rule on the creation of 'empty' nodes, ie

<div rel="a:b">....</div>

means setting a new blank node. We could keep that rule, too, I do not
think it would lead to any harm...

This is really just an uncooked idea, may be absolute rubbish. But maybe
it is worth looking at it...

Ivan







-- 

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 Wednesday, 18 July 2007 10:56:10 UTC