OWL comment - blank nodes in OWL DL

This is a comment about blank nodes in OWL DL on behalf of the Jena team.

- We would like it to be possible to name dataranges

- It is natural in Jena to permit the java objects
  representing blank nodes which
  represent descriptions and restrictions to be
  used more than once, and hence as the object of
  more than one triple.

  A rationale for not permitting this in OWL DL
  should be given, preferably as a test case in OWL Full
  showing an OWL Full non-entailment that would hold in
  OWL DL if such triples were permitted.
  Below is an example such a test case, which we believe is an
  OWL Full entailment. If on the contrary it were a
  non-entailment, that would satisfy this comment.

- The RDF support within Jena permits users to:
  - use annonymous nodes as the object of
    more than one triple
  - have cycles of anonymous nodes
  While the syntactic restrictions between, for example,
  unnamed individuals and descriptions are understandable,
  it is not clear why OWL DL has not permitted, for example,
  an unnamed individual to be the object of more than
  one triple, or an unnamed individual to be the object
  of a triple of which it is the subject.
  Please either relax this constraint or offer a rationale.

Dave Reynolds, for the Jena team

Test Case Example:

<owl:Thing rdf:about="eg:a">
 <rdf:type>
  <owl:Restriction>
   <owl:onProperty rdf:about="eg:p"/>
   <owl:allValuesFrom>
    <owl:Class>
     <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="eg:C"/>
     </owl:intersectionOf>
    </owl:Class>
   </owl:allValuesFrom>
  </owl:Restriction>
 </rdf:type>
</owl:Thing>
<owl:Thing rdf:about="eg:b">
 <rdf:type>
  <owl:Restriction>
   <owl:onProperty rdf:about="eg:p"/>
   <owl:allValuesFrom>
    <owl:Class>
     <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="eg:C"/>
     </owl:intersectionOf>
    </owl:Class>
   </owl:allValuesFrom>
  </owl:Restriction>
 </rdf:type>
</owl:Thing>

OWL Full entails

<owl:Thing rdf:about="eg:a">
 <rdf:type>
  <owl:Restriction rdf:nodeID="a">
   <owl:onProperty rdf:about="eg:p"/>
   <owl:allValuesFrom>
    <owl:Class>
     <owl:intersectionOf rdf:parseType="Collection">
      <owl:Class rdf:about="eg:C"/>
     </owl:intersectionOf>
    </owl:Class>
   </owl:allValuesFrom>
  </owl:Restriction>
 </rdf:type>
</owl:Thing>
<owl:Thing rdf:about="eg:b">
 <rdf:type>
  <owl:Restriction rdf:nodeID="a"/>
 </rdf:type>
</owl:Thing>

Received on Friday, 9 May 2003 10:38:25 UTC