Comment on semantics doc, Appendix B

Pat,

I'm currently implementing inference rules for RDFS based on the graph 
closure rules, which gives rise to the following comments:

With reference to:
   http://www.ihmc.us/users/phayes/RDF_Semant_Edit_Weak.html
   "@@Editors Draft with Weak RDFS conditions and rules June 26"

I notice that the closure rules 'rdf2' and 'rdfs1' use the 'allocated to' 
terminology as defined for simple entailment, but qualified with "by this 
rule".  In these cases, it would be easier if allocating *any* new blank 
node would be sufficient, but I can't see how to make that work.

Considering the case:

     ex:s1 ex:p1 "lll" .
     ex:s2 ex:p2 "lll" .

then by rdfs2 we have:

     ex:s1 ex:p1 _:lll .
     ex:s2 ex:p2 _:lll .
     _:lll rdf:type rdfs:Literal

but NOT:

     ex:s1 ex:p1 _:llla .
     _:llla rdf:type rdfs:Literal
     ex:s2 ex:p2 _:lllb .
     _:lllb rdf:type rdfs:Literal

I further note that the definition of 'vvv' in the description of simple 
entailment means that it does not provide a proof for the following simple 
entailment:

     ex:s1 ex:p1 _:n1
|=
     ex:s1 ex:p1 _:n2

I think this is an omission.

That (together with subgraph entailment) would provide a deduction between 
the literal entailments noted above.

(I note that using the 'allocated to' logic here makes it a pain for me to 
implement directly.  I'm deliberately trying to stay as close to the spec 
as I can.  I've ended up treating simple entailment very differently from 
the closure rules, and I think I'll end up having to do the same for rdf2 
and rdfs1.)

#g



-------------------
Graham Klyne
<GK@NineByNine.org>
PGP: 0FAA 69FF C083 000B A2E9  A131 01B9 1C7A DBCA CB5E

Received on Tuesday, 1 July 2003 10:23:21 UTC