- From: Bijan Parsia <bparsia@cs.man.ac.uk>
- Date: Sun, 3 Aug 2008 11:11:58 +0100
- To: Jeff Thompson <jeff@thefirst.org>
- Cc: Michael Schneider <schneid@fzi.de>, public-owl-dev@w3.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 UTC