Changing handling of (illegal) arguments to ObjectInverseOf in OWLAPI.

I discovered that OWLAPI has been improperly allowing ObjectInverseOf to be
applied to arbitrary Object Property Expressions, instead of only allowing
it to be applied to Object Properties.

Changes have been applied to version 4 in github that cause the appropriate
constructors and factory methods to throw exceptions when applied to
arguments of the wrong type, and methods to return the inverse of a
property have been simplified to not return illegal values.

To avoid breaking correct code, method signatures have not been changed;
this does mean that some typing errors will only be detected at runtime.

There doesn't seem to be much code that is affected by this,  and since it
involves extra typing to do something obviously pointless,  I suspect that
any occurrences are likely to be machine generated.

Is anybody using explicit calls to the data factory methods to generate
inverses of arbitrary object property expressions?

Such code should be changed to call inverseProperty on the OPE; this will
work for older and newer versions.

Simon

Received on Wednesday, 19 August 2015 18:30:38 UTC