IRelationEvaluator should have an incremental API, and it should have a default implementation that takes a non-incremental evaluator core and wraps it to produce an incremental facade, basically using the wrapper logic that is currently in RelationEvaluatorNode.
Ideally, IRelationEvaluator should be able to optionally express guarantees about its output relation:
functional dependencies
type restrictions on the columns\
These would be added to this interface, and then in turn they would be reflected by the RelationEvaluation PConstraint (see also ITypeInfoProviderConstraint).
| --- | --- | | Bugzilla Link | 580778 | | Status | UNCONFIRMED | | Importance | P3 enhancement | | Reported | Sep 21, 2022 15:15 EDT | | Modified | Sep 22, 2022 05:48 EDT | | Version | 2.8.0 | | Reporter | Tamas Szabo |
Description
In https://bugs.eclipse.org/bugs/show_bug.cgi?id=580745, we have added support for RelationEvaluation. Gabor Bergmann suggested a few ideas for future improvements in https://git.eclipse.org/r/c/viatra/org.eclipse.viatra/+/195861/. This ticket was created, so that we do not forget about those ideas.
IRelationEvaluator should have an incremental API, and it should have a default implementation that takes a non-incremental evaluator core and wraps it to produce an incremental facade, basically using the wrapper logic that is currently in RelationEvaluatorNode.
Ideally, IRelationEvaluator should be able to optionally express guarantees about its output relation: