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