Source: Goldman Sachs ( Octavian Patrascoiu)
According to the ItemDefinition specification, an ItemDefinition can be defined in two ways:
- reference to a built-in or imported typeRef
- composition of ItemDefinition via itemComponents
According to the metamodel in Figure 7.6 and Table 23 typeRef is optional and itemComponent has [0..*] cardinality.
That means an ItemDefinition can be defined as
<itemDefinition id="1234" name="name"/>
What is the actual semantics of this type? Is it some sort of a root type in a type system?
To make the semantics more readable and fix some some typos or missing info, I suggest the following:
1. Add missing cardinality for ItemDefintion.itemComponent in Figure 7.6. (missing info)
2. In Table 23 change cardinality of typeRef to be [0..1] to match the metamodel (typo).
3. Add an extra constraint in Table 23 itemComponent row:
When typeRef is missing, itemComponent has at least one ItemDefinition.
Reported: DMN 1.1 — Wed, 6 Dec 2017 13:13 GMT
Disposition: Resolved — DMN 1.2
Improve type checking semantics
see attached word doc v8
Updated: Wed, 3 Oct 2018 14:17 GMT