W3C home > Mailing lists > Public > semantic-web@w3.org > August 2006

Re: Is reification allowed in OWL-DL?

From: Ivan Herman <ivan@w3.org>
Date: Fri, 25 Aug 2006 11:14:07 +0200
Message-ID: <44EEBF5F.9070106@w3.org>
To: Alan Wu <alan.wu@oracle.com>
CC: semantic-web@w3.org
Although I do not know Pellet very well (I am sure others who do can
give a more detailed answer), I guess the main issue is that reification
is not really part of the core Semantics of RDF(S) either. Ie, if you
use reification by defining a "statement" using the object, subject,
etc, rdf predicates, it does *not* mean that the corresponding triple
will be part of the triple store under RDFS entailement. I guess that,
as a consequence, pellet does not know anything about the rdf:object
etc, predicates...

Ivan

Alan Wu wrote:
> 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
> 

-- 

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#Me

Received on Friday, 25 August 2006 09:14:22 UTC

This archive was generated by hypermail 2.4.0 : Thursday, 24 March 2022 20:41:00 UTC