Feature #3689: Extend the DseML to enable expressions to specifiy non-existing elements and attributes
Extend the DseML for VariablePropertyLiterals and a generic Property Lookup method for binding functions of two elements
- Add a "VariablePropertyLiteral" to enable specifying non-existing attributes of model elements.
- Add a generic binding function to specify lookups of properties of one model element from another one.
#15 Updated by Alexander Diewald 8 months ago
- Assignee changed from Alexander Diewald to Marco Volpe
- % Done changed from 30 to 60
The functional style ModelElementPropertyLiterals are done now and can be reviewed. They are now named IPropertyLiterals --> ArithmeticPropertyLiteral / BooleanPropertyLiteral.
As discussed before, I'd ask you to review this one for an intermediate merge such that this branch does not diverge again.
Please review the code as-is and define some Objective(s) and Constraint(s) and execute both the task mapping and scheduling. Please also import one of your old models (with objectives/constraints defined) to verify that the migrator is operating correctly.
#16 Updated by Marco Volpe 7 months ago
Tested and reviewed. It seems to work fine. I also tried on some old model.
Only found problems in importing models where some timing constraint is defined by using StartTimeDummy or DurationDummy variables, e.g., the enclosed one.
But maybe we can live with that.
#18 Updated by Alexander Diewald 7 months ago
Thanks! The intermediate merge is done.
The StartTimeDummy and DurationDummy annotations were just stubs to denote the variable parameters to be explored. They are constructed on-the-fly when launching an exploration and do not even have an assigned value after exploration. Hence, they only appear in the DseML formulation that is saved with the solutions, but they do not provide any value there such that we can just ignore them.