Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Learn more about the logical functions AND, OR, NOT, logical values TRUE, FALSE, and the special meta-value UNKNOWN. 

Overview

Function / valueDescription
ANDReturns

Table of Contents
minLevel2
typeflat

Tip
boolean conditions are evaluated from left to the right. There is no order for the logical operators. Use parentheses to create hierarchy in your logical expressions. Example: TRUE OR (TRUE AND FALSE) will evaluate (TRUE AND FALSE) first.

AND

...

TRUE if all its arguments evaluate to TRUE; it returns FALSE if one or more arguments evaluate to FALSE.

Syntax

Code Block
argument1 AND argument2 [AND ...]
  • argument1 - The first boolean condition that you want to evaluate.
  • argument2 - The first boolean condition that you want to evaluate.
  • [AND …] - Additional boolean conditions that you want to evaluate.

Return type

  • boolean

Examples

  • TRUE AND TRUE results in TRUE
  • TRUE AND FALSE results in FALSE
  • TRUE AND ? (= UNKNOWN) results in UNKNOWN
NOTReverses the value of its boolean argument.
ORReturns

OR

...

TRUE if at least one of its arguments evaluates to TRUE; it returns FALSE if none of the arguments evaluate to TRUE.

Syntax

Code Block
argument1 OR argument2 [OR ...]

argument1 - The first boolean condition that you want to evaluate. argument2 - The first boolean condition that you want to evaluate. [OR …] - Additional boolean conditions that you want to evaluate.

Return type

  • boolean

Examples

  • TRUE OR TRUE results in TRUE
  • TRUE OR FALSE results in TRUE
  • TRUE OR ? (= UNKNOWN) results in TRUE
  • FALSE OR ? (= UNKNOWN) results in FALSE (since none of the arguments is TRUE)
UNKNOWNUse the '?' (question mark), representing UNKNOWN, to check if an expression or an attribute has a value.

...

TRUEThis is the boolean value TRUE.
FALSEThis is the boolean value FALSE.

NOT

This operator reverses the value of its boolean argument.

Syntax

Code Block
NOT argument
  • argument - The boolean condition of which you want to reverse its value.

Return type

  • boolean

Examples

  • NOT (TRUE) results in FALSE
  • NOT (TRUE AND FALSE) results in TRUE
  • NOT (? (= UNKNOWN)) results in UNKNOWN
  • NOT (NOT (TRUE)) results in TRUE

UNKNOWN

You can use the '?' (question mark), representing UNKNOWN, to check if an expression or an attribute has a value.

Functions

Include Page
Logical function AND
Logical function AND


Include Page
Logical function OR
Logical function OR


Include Page
Logical function NOT
Logical function NOT


Include Page
Logical function values UNKNOWN, TRUE, FALSE
Logical function values UNKNOWN, TRUE, FALSE

Example

Suppose a model with an entity Person and attributes Person.name and Person.age. In runtime, a user fills out a form and enters his name, but forgets to fill out his age.

As a result

...

Person.name = ? returns FALSE since this attribute is filled out

...