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:
	http://www.cs.man.ac.uk/~ezolin/dl/
and
	http://iswc2007.semanticweb.org/papers/435.pdf

(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.

Cheers,
Bijan.
Received on Sunday, 3 August 2008 10:12:40 GMT

This archive was generated by hypermail 2.3.1 : Wednesday, 27 March 2013 09:32:56 GMT