Underspecified when ranges may include a qualified name for the endpoint, which resolves to null
Source: Red Hat ( Matteo Mortari)
It is underspecified when the ranges may include a qualified name for the endpoint, which resolves to null.
This was identified by Greg McCreath and Octavian Patrascoiu during TCK contributions.
Ranges' Endpoints can be either a literal or a qualified name. If the qualified name resolves to null, and the endpoint inclusivity flag is false, it is semantically equivalent to the case of single-endpoint-range. This leads to ambiguity in Table 55: Semantics of decision table syntax
This also requires the typo fix in https://issues.omg.org/browse/INBOX-1337
With reference to examples in Table 42: Examples of range properties values
Instead of (1..10]
do consider (x..10]
if x resolves to null
then this is semantically equivalent to <=10.
However, Table 55, row 9, cites:
e1 in (e2..e3] is equivalent to e1 > e2 and e1<=e3 // exercise by hand.. e1 in (x..10] is equivalent to e1 > x and e1<=10 // if x resolves to null.. e1 in (null..10] is equivalent to e1 > null and e1<=10 e1 > null and e1<=10
which is NOT equivalent to e1<=10, hence the ambiguity.
Reported: DMN 1.3 — Sun, 5 Sep 2021 07:18 GMT
Disposition: Deferred — DMN 1.4
This Issue was not resolved in this Task Force and was automatically deferred to the next Task Force
Updated: Tue, 16 Aug 2022 08:59 GMT