Skip to content
This repository has been archived by the owner on Jul 11, 2019. It is now read-only.

Rules flattening

Compare
Choose a tag to compare
@pieterbos pieterbos released this 16 Jun 14:07
· 66 commits to master since this release
9e76e94

Now the rules are flattened and added to operational templates.

  • when specializing rules, both the original and specialized rules are added to the resulting flat archetype, original rules first
  • rules with the same tag name are overwritten (TODO: this is NOT according to specs, we later found out, this will likely be reverted in the future)
  • when using archetype roots to compose an archetype out of other archetypes, the rules are added to the combined flattened operational template. All path references are prefixed with the correct paths to make them work in the resulting operational template.

flattening rules, and operational templates with rules have been tested both with automated tests and by hand with a number of archetypes.

Also it is now possible to serialize and deserialize operational templates. One change to the grammar has been made to support this: archetype roots can now optionally have a matches { section with children, conforming to the ADL 2 specs.

other improvements and bug fixes:

  • a rule in the pattern AND <other_fixable_rule> is now treated as two fixable rules
  • apath queries with a dot in the id code (eg [id2.1]) now work