Search Mailing List Archives
[protege-owl] Complement Classes
tar at ISI.EDU
Fri Jan 8 09:06:54 PST 2010
On Jan 7, 2010, at 4:02 PM, Adonis Damian wrote:
> Hi All,
> I trying to figure out how complements and open world reasoning work.
> Here is a simple example:
> I have a
> ClassAWithName – which should be the individuals of ClassA which
> have a property “name”
> ClassAWithoutName – which should be the complement of
> ClassAWithName – the individuals that don’t have a property “name”
> How should I model ClassAWithName and ClassAWithoutName so
> individuals with property name will be inferred under
> ClassAWithName and individuals without property “name” will be
> inferred under ClassAWithoutName?
> The problem that I see is that if for an individual i_1, the “name"
> property is not asserted then doesn’t mean the it doesn’t have the
> “name” property. Meaning that the inference engine doesn’t see that
> i_1 doesn’t has property name as provable false but only
> satisfiable false.
You have grasped the situation correctly.
Open world reasoning will always have difficulty with negation (the
absence of something) and also similarly with maximum cardinality and
allValuesFrom restrictions. This is precisely because there could
always be some other property value that is not known that make it
impossible to prove the complement (maximum, allValuesFrom).
So the reasoning you will get is generally asymmetric.
Inference of ClassAWithName will succeed easily.
Inference of ClassAWithoutName will not happen because of open
world. There aren't a lot of solutions, but what you essentially
have to do is explicitly tell the system that the individual doesn't
have a name. Yes, that sort of defeats part of the purpose of
inference, but you don't really have much of an option with open
world semantics. It must be possible to prove that the individual
CANNOT have a name for it to be inferred as belonging to the
More information about the protege-owl