Search Mailing List Archives
[protege-owl] Problem of "sameAs" working with individuals
tar at ISI.EDU
Tue May 20 08:57:08 PDT 2008
On May 20, 2008, at 8:11 AM, Sisi Xuanyuan wrote:
> Hi all,
> I have a problem of "sameAs" when I use it to determining whether
> two individuals are same. The rule is:
> Class_1(?c1) ∧ Class_2(?c2) ∧ differentFrom(?c1, ?c2)
> ∧ Property(?p1) ∧ Property(?p2) ∧ hasProperty(?
> c1, ?p1) ∧ hasProperty(?c2, ?p2) ∧ sameAs(?p1, ?p2)
> → theExclusiveViolated(?c1, ?c2)
> The background is: c1 is an individual of Class_1, c2 is an
> individual of Class_2, and they are different; c1 has property p1,
> c2 has property p2, and both p1 and p2 are individuals of Property;
> I want to check if p1 is same as p2, then the new property
> theExclusiveViolated will be asserted.
This seems to me to be a pretty unusual constraint. Is it really true
in your domain that each property can only be attached to a SINGLE
individual of the classes 1 and 2? In that case, it would seem that
you would also run into problems because this rule itself can result
in more than one individual having "theExclusiveViolated" property
asserted about it.
You also realize that by treating properties as individuals (by using
the sameAs property on property individuals, that you have an OWL-Full
ontology. It may be the case that the SWRL reasoner doesn't handle
classes and properties as individuals. Perhaps Martin O'Connor can
> I have already added the list of (p1, p2) and (c1, c2) to an
> allDifferents set. The Jess result shows no property is asserted. If
> I take out the "sameAs(?p1, ?p2)" restriction, this rule works. But
> it is not what I want, so I must add the "sameAs" restriction.
More information about the protege-owl