[protege-owl] Longstanding problem with instance editor

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[protege-owl] Longstanding problem with instance editor

Mark Feblowitz
This one's subtle but very inconvenient:

I have an individual "ind" in class A and also in class B, and an
object property A p1 R.

The range constraints defined for A p1 R help users populate  ind p1
r, so that r conforms to those constraints.

Say, for example, that R is LatLongLocation - when the user populates
ind p1 r (via the I* button), r is automatically instantiated as an
individual in LatLongLocation.

That works fine, until I save the ontology and come back to edit it later.

When I reopen the ontology file, the range constraints on "r" are no
longer active - r is no longer constrained to being an individual in
LatLongLocation.

That's because - and here's the subtlety - the serialization of the
ontology file did not preserve the order of instantiation, ind is in
A and in B. Reloading the ontology brings ind back, but now ind is in
B and also in A.

That reversal makes all of the difference. If I remove the assertion
that ind is in B and then reassert it, the range constraints are reactivated.

It would seem that the problem is not the order of class affiliation
- that should be irrelevant. It's that the individual editor seems
only to take its constraints from the first class encountered. It
might be fixed by pegging the instantiation ordering, but that would
probably be a hack.

Any idea whether this is something that can be repaired?

Thanks,

Mark

_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03