We're updating the issue view to help you get more done.Learn more

Archetype-level assertions

Currently assertions can be created in any block in an archetype. This complicates parsing
somewhat, and makes archetype less readable than if there were simply one set of assertions
per archetype. This makes an archetype more similar to an object-oriented class definition.
The use of symbolic path definitions in an archetype would allow archetype-level invariants
to be efficiently expressed, without the encumbrance of long path names.






Change Description

A new invariant section is added to the ADL archetype. All invaraints are expressed in this section only; full paths have to be used to ensure that the relevant nodes are correctly referred to. An additional declarations section (not part of this CR) could be used to define symbolic names for paths. These probably need to be coded. We need to investigate whether node_ids in archetypes are unique across the whole archeytpe or just within the scope of a child node - i.e. does a node id on its own specify a node, or a path, as it does currently?

Approved By



Fix versions