Add dedicated constraint type to remove RM types, and clarify occurrences matches 0 rules.

Description

It is not clear how to specify that no instance of a type e.g. COMPANY in the ADL2 example here (https://specifications.openehr.org/releases/AM/latest/ADL2.html#_remove_specified_subtypes) is specified, since the structure
COMPANY[id5] occurrences ∈ {0}
relates only to [id5], which is a particular kind of COMPANY.

To remove COMPANY (and instances of subtypes) we need a construct that does this. Potentially:

prohibit COMPANY
which would be parsed into a new kind of constraint e.g. C_TYPE_PROHIBITION or similar.

Activity

Show:

Pieter Bos January 29, 2019 at 2:12 PM

sounds good! Would prohibit_type be even better to understand, or not necessary at all because what follows is a type anyway?

Also we probably need a new validation that says what it means or if it is allowed that you prohibit a type while there are sibling nodes with the same type. Both in the cases siblings from the same archetype and siblings from the parent archetype :

Details

Reporter

Raised By

Diego Bosca

Original estimate

Components

Affects versions

Created January 29, 2019 at 1:28 PM
Updated November 2, 2020 at 11:41 AM