You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@jena.apache.org by Dave Reynolds <da...@gmail.com> on 2011/10/19 09:05:40 UTC

Re: infer an object property from two datatypepropertiesā€¸

On Tue, 2011-10-18 at 15:39 +0200, Luigi Selmi wrote: 
> Hi all,
> 
> I have two data type properties and one object property defined in my ontology: hasBirthCityToponym, hasToponym, hasBirthCity respectively. I have some instances and the assertions:
> 
> <person_1> :hasBirthCityToponym "London" .
> <city_1> :hasToponym "London" .
> 
> From these two I would like the following binary relation to be inferred:
> 
> <person_1> :hasBirthCity <city_1> .
> 
> 
> I know that these can be inferred using a simple SPARQL CONSTRUCT query or using some other rule language (Jena Rule, SWRL) but I would like to know whether it is possibile to obtain the same inference using OWL.

In OWL 2 (which Jena doesn't support) there is a notion of property
chains which comes close. You could almost say:

    SubPropertyOf( 
       ObjectPropertyChain(
           :hasBirthCityToponym 
            ObjectInverseOf(:hasToponym) ), 
       :hasBirthCity )

except that your properties aren't Object Properties. If you were able
to change your modelling so that the toponyms were represented by
resources (e.g. SKOS:Concepts with skos:preflabel to denote the label)
then this should work.

There may be some indirect way of using OWL 2 to achieve this or it may
be that OWL 2 with RDF semantics (i.e. OWL 2 analogue of OWL Full) would
simply work anyway if you can find a reasoner for that.

Try asking on the owl-dev list.

Dave