Hi,

Here is a simple question I have in mind. Is reification allowed in OWL-DL?

My understanding is that it is not allowed. After all, is rdf:object an owl:DatatypeProperty
or owl:ObjectProperty? Neither I guess.

I also tried the following experiment using Pellet 1.3 (beta2). Input is the following NTriple file
(migrated from the example in RDF primer).

------------- start of Input ------------
<exproducts:triple12345> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement> .
<exproducts:triple12345> <http://www.w3.org/1999/02/22-rdf-syntax-ns#subject> <exproducts:item10245> .
<exproducts:triple12345> <http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate> <exterms:weight> .
<exproducts:triple12345> <http://www.w3.org/1999/02/22-rdf-syntax-ns#object> "2.4"^^<http://www.w3.org/2001/XMLSchema#decimal> .
<exproducts:triple456> <http://www.w3.org/1999/02/22-rdf-syntax-ns#subject> <exproducts:item10245> .
<exproducts:triple456> <http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate> <exterms:linkTo> .
<exproducts:triple456> <http://www.w3.org/1999/02/22-rdf-syntax-ns#object> <exproducts:item888> .

------------- end of Input ------------

Pellet complains it is not in OWL DL. However it suggests by adding something, it should be DL.
--------------- start of Pellet output --------------
OWL Species: Full
DL Expressivity: AL(D)
Consistent: Yes
Time: 1379 ms (Loading: 1262 Preprocessing: 0 Species Validation: 101 Consistency: 16 )

Non OWL-DL features used:
Multiple Types: Resource rdf:object is defined as a DatatypeProperty but used with values that are OWL individuals
Untyped Class: Assuming rdf:Statement is a class
Untyped Individual: Assuming exproducts:triple456 is an individual
Untyped Individual: Assuming exterms:weight is an individual
Untyped Individual: Assuming exproducts:item10245 is an individual
Untyped Individual: Assuming exterms:linkTo is an individual
Untyped Property: Assuming rdf:object is an datatype property
Untyped Property: Assuming rdf:predicate is an object property
Untyped Property: Assuming rdf:subject is an object property

Add the following statements to make this document OWL DL
<rdf:RDF
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:owl="http://www.w3.org/2002/07/owl#" >
  <rdf:Description rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#object">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#DatatypeProperty"/>
  </rdf:Description>
  <rdf:Description rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#subject">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
  </rdf:Description>
  <rdf:Description rdf:about="exterms:linkTo">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </rdf:Description>
  <rdf:Description rdf:about="exproducts:triple456">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </rdf:Description>
  <rdf:Description rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#predicate">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#ObjectProperty"/>
  </rdf:Description>
  <rdf:Description rdf:about="exterms:weight">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </rdf:Description>
  <rdf:Description rdf:about="exproducts:item10245">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Thing"/>
  </rdf:Description>
  <rdf:Description rdf:about="http://www.w3.org/1999/02/22-rdf-syntax-ns#Statement">
    <rdf:type rdf:resource="http://www.w3.org/2002/07/owl#Class"/>
  </rdf:Description>
</rdf:RDF>

--------------- end of Pellet output --------------



After converting the above XML serialization to NTriple and add those ntriples into the
original file, and use Pellet again, I got

--------------- start of Pellet output --------------
 WARN [main] (OWLLoader.java:1054) - Ignoring object value used with DatatypeProperty: exproducts:triple456 @rdf:object exproducts:item888
Input file: file:/net/stagf07/scratch/alwu/pellet/pellet-1.3-beta2/zhe/reification.combined
OWL Species: Full
DL Expressivity: AL(D)
Consistent: Yes
Time: 1432 ms (Loading: 1309 Preprocessing: 0 Species Validation: 107 Consistency: 16 )

Non OWL-DL features used:
Multiple Types: Resource rdf:object is defined as a DatatypeProperty but used with values that are OWL individuals

Add the following statements to make this document OWL DL
This ontology cannot be converted to OWL DL.
.
--------------- endof Pellet output --------------

Thanks in advance for your reply.

Zhe (Alan) Wu
Oracle