- From: Bijan Parsia <bparsia@cs.man.ac.uk>
- Date: Mon, 5 Mar 2007 12:51:49 +0000
- To: Matt Williams <matthew.williams@cancer.org.uk>
- Cc: Semantic Web <semantic-web@w3.org>
On 5 Mar 2007, at 10:45, Matt Williams wrote: > > Dear All, > > As I understand, most DL's do not allow for the negation of roles. > > However, given a formula of the form R(x,y) (where R is some role), > since this is equivalent to (R(x,y) & \top(y)) That's not a class expression. The standard negation constructor, e.g., in OWL, applies only to class expresession (i.e., to formulae with at most one free variable). > which could be negated as ¬( R(x,y) & \top(y)), Only if you had negation of arbitrary formulae, which you generally don't. And if you did, you could just say ~R(x, y) :) > is it possible to effectively relax this constraint in some cases > without affecting the logic? So, there are at least two forms of role negation you might consider: negation of *ground* roles and negation of *arbitrary* roles. The former allows you to so say that, e.g., bob does *not* love mary, where as the latter allows you to say that love and hate are disjoint. In OWL, given nominals, you can encode the former, e.g., bob: complementOf(hasValue.love({mary}). In this way, it's clear that nominals are more expressive than aboxes alone. In OWL 1.1, you can express the former directly and you can express the latter at least in the form of disjointness of properties. > I'm interested in rules that have a single role as the head, and > negation of such heads would be useful... Hope this helps. Cheers, Bijan.
Received on Monday, 5 March 2007 12:52:15 UTC