Is your feature request related to a problem? Please describe.
The order in which the rules are called may cause unnecessary inconsistencies (i.e., a valid result could have been got, but it was not because another rule generated an invalid situation). This is true specially for the OWAf world assumption.
Describe the solution you'd like
Scior could implement a stack of modifications. Every time a type is asserted to a class, a stack is created and checked if it results in a consistent result. If it results in an invalid result, the rule that originated the stack is jumped and another one is performed.
Describe alternatives you've considered
Probably just adjusting the implementation to first execute rules that assert higher-level types (e.g., not leaf classifications) must be enough to solve most of the cases.
Additional context
The most complete solution will require a great computational effort (memory and processing).
Is your feature request related to a problem? Please describe.
The order in which the rules are called may cause unnecessary inconsistencies (i.e., a valid result could have been got, but it was not because another rule generated an invalid situation). This is true specially for the OWAf world assumption.
Describe the solution you'd like
Scior could implement a stack of modifications. Every time a type is asserted to a class, a stack is created and checked if it results in a consistent result. If it results in an invalid result, the rule that originated the stack is jumped and another one is performed.
Describe alternatives you've considered
Probably just adjusting the implementation to first execute rules that assert higher-level types (e.g., not leaf classifications) must be enough to solve most of the cases.
Additional context The most complete solution will require a great computational effort (memory and processing).