W3C home > Mailing lists > Public > public-owl-dev@w3.org > July to September 2008

Re: Intersection of properties?

From: Bijan Parsia <bparsia@cs.man.ac.uk>
Date: Sun, 3 Aug 2008 11:11:58 +0100
Message-Id: <0FC83664-D71B-42A9-9955-477F5F141C0A@cs.man.ac.uk>
Cc: Michael Schneider <schneid@fzi.de>, public-owl-dev@w3.org
To: Jeff Thompson <jeff@thefirst.org>

On Aug 3, 2008, at 2:19 AM, Jeff Thompson wrote:

> Michael Schneider wrote:
>> Bijan Parsia answered to Jeff Thompson:
>>>> Consider the rule that if X desires Y and X can_do Y, then X  
>>>> does Y.
>>>> In Prolog, this would be:
>>>> does(X, Y) :- desires(X, Y), can_do(X, Y).
>>>> This is really defining 'does' as the intersection of the
>>>> properties 'desires' and 'can_do'.
>>>> I couldn't find something like this in the OWL use cases.  Is there
>>>> a way to do this in OWL2?
>>> does subPropertyOf desires.
>>> does subPropertyOf can_do.
>>> ?
>>> Cheers,
>>> Bijan.
>> I think Jeff is mainly interested in the other direction:
>>   (desires and can_do) subPropertyOf does
> Yes.

Ooops, sorry , brain fart.

>   Consider the simpler example "if Y is Desirable and Y is Doable
> then Y is Done".   In OWL 2 with class intersections:
> SubClassOf(ObjectIntersectionOf(Desirable Doable) Done)
> Thus if
> ClassAssertion(action Desirable)
> ClassAssertion(action Doable)
> we can conclude
> ClassAssertion(action Done)
> In Prolog:
> 'Done'(Y) :- 'Desirable'(Y), 'Doable'(Y).
> I am asking about the same thing with properties.

Yeah, doubtful and not obvious.  You can add boolean operators on  
roles in a lot of cases but it generally makes things harder. See:

(You might also look at ALC_{reg} and PDL.)

If you are willing for this not to (directly) affect subsumptions,  
then DL Safe rules will do the job.

Received on Sunday, 3 August 2008 10:12:40 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 20:58:17 UTC