Today I found a problem regarding evaluation of logical functions and boolean va

Today I found a problem regarding evaluation of logical functions and boolean variables with null values. The function "and(null())" evaluates to "true", "or(null())" evaluates to "false" and "not(null())" tells me that null parameters are not allow. Adding some true() or false() values to the and() and or() functions return correct values.

When I bring the if() function into play which always handles null() values to false() the whole behaviour looks quite inconsistent to me. I think that "and(null())" as well as "or(null())" should evaluate to "false". The function "not()" should take null() values as "false" and for consistency "not(null())" should evaluate to "true"....

OriginalPostID-125072

OriginalPostID-125072

  Discussion posts and replies are publicly visible

Parents
  • For the logical functions: AND OR, null values that are part of input arrays are filtered out before evaluation. In both cases, since the null value is removed; the AND, OR functions return their default value when faced with an empty array. For AND, that value is true, and for OR, that value is false.

    NOT works a little differently then the preceding 2 functions, as you had noticed. NOT requires a boolean value since it needs to be able to convert to its complement. That is why there is an error generated when null() is used in NOT, whereas AND OR functions return outputs.
Reply
  • For the logical functions: AND OR, null values that are part of input arrays are filtered out before evaluation. In both cases, since the null value is removed; the AND, OR functions return their default value when faced with an empty array. For AND, that value is true, and for OR, that value is false.

    NOT works a little differently then the preceding 2 functions, as you had noticed. NOT requires a boolean value since it needs to be able to convert to its complement. That is why there is an error generated when null() is used in NOT, whereas AND OR functions return outputs.
Children
No Data