In InsRel we find a function to 'align' an insrel if it was made the wrong
way around (according to TypeRel).
This is a rather strange feature, but the actual implementation is actually
_very_ strange. Because it is like this:
If a relation was made which is not allowed according to typerel, it is
_always_ inversed, also if the other direction is _also not allowed_:
if (! typeRel.reldefCorrect(snumber, dnumber, rnumber) )
I propose to change it like this:
if (! typeRel.reldefCorrect(snumber, dnumber, rnumber)
&& typeRel.reldefCorrect(dnumber, snumber, rnumber)
) {
So that the relation is only inversed if the the created direction is
disallowed but the inverse direction _is_ allowed.
I think most of us were aware of this absurd behaviour, but I don't remember
why, and am suprized that, it was not changed earlier. If nobody can come up
with a reason after all, perhaps we'd change it now?
Michiel
--
Michiel Meeuwissen
Mediapark C101 Hilversum
+31 (0)35 6772979
nl_NL eo_XX en_US
mihxil'
[] ()