TOPICS×
Operators
There are two kinds of operators: unary operators and binary operators. There are lefthand unary operators and righthand unary operators.
// lefthand unary operators <operator> <operand> // operand is an expression not (@{LobbyBeacon.endUserIDs._experience.emailid.id}=="example@adobe.com") // righthand unary operators <operand> <operator> // operand is an expression @{LobbyBeacon.endUserIDs._experience.emailid.id} is not null // binary operators <operand1> <operator> <operand2> (@{LobbyBeacon.endUserIDs._experience.emailid.id}=="example1@adobe.com") or (@{LobbyBeacon.endUserIDs._experience.emailid.id}=="example2@adobe.com")
Here is the list of supported operators:
Logical
Operator  Literal Expression  Example 

and  <expression1> and <expression2>Both <expression1> and <expression2> must be boolean. The result is boolean.  3.14 > 2 and 3.15 < 1 
or  <expression1> or <expression2> Both <expression1> and <expression2> must be boolean.
The result is boolean.
 3.14 > 2 or 3.15 < 1 
not  not <expression> <expression> must be boolean.
The result is boolean.
 not 3.15 < 1 
Comparison
Operator  Literal Expression  Example 

is null  <expression> is null The result is boolean.
Note that null means the expression has no evaluated value.
 @{BarBeacon.location} is null 
is not null  <expression> is not null The result is boolean.
Note that null means the expression has no evaluated value.
 @ is not null 
has null  <expression> has null<expression> must be a list. The result is boolean.
Useful to identify that a list contains at least one null value.
 ["foo", "bar", null] has nullreturns true ["foo", "bar", ""] has nullreturns false because "" is not considered as null. 
==  <expression1> == <expression2> Both <expression1> and <expression2> must have the same data type.
The result is boolean.
 3.14 == 42 "foo" == "bar" 
!=  <expression1> != <expression2> Both <expression1> and <expression2> must have the same data type.
The result is boolean.
 3.14 != 42 "foo" != "bar" 
>  <expression1> > <expression2> Datetime can be compared with Datetime.
Datetimeonly can be compared with Datetimeonly.
Both integer or decimal can be compared with both integer or decimal.
Any other combination is forbidden.
The result is boolean.
 3.14 > 42 
>=  <expression1> >= <expression2> Datetime can be compared with Datetime.
Datetimeonly can be compared with Datetimeonly.
Both integer or decimal can be compared with both integer or decimal.
Any other combination is forbidden.
The result is boolean.
 42 >= 3.14 
<  <expression1> < <expression2> Datetime can be compared with Datetime.
Datetimeonly can be compared with Datetimeonly.
Both integer or decimal can be compared with both integer or decimal.
Any other combination is forbidden.
The result is boolean.
 42 < 3.14 
<=  <expression1> <= <expression2> Datetime can be compared with Datetime.
Datetimeonly can be compared with Datetimeonly.
Both integer or decimal can be compared with both integer or decimal.
Any other combination is forbidden.
The result is boolean.
 42 <= 3.14 
Arithmetic
Operator  Literal Expression  Example 

+  <expression1> + <expression2> Both expressions must be numeric (integer or decimal).
The result is also numeric.
 1 + 2 Returns 3

  <expression1>  <expression2> Both expressions must be numeric (integer or decimal).
The result is also numeric.
 2  1Returns 1 
/  <expression1> / <expression2> Both expressions must be numeric (integer or decimal).
The result is also numeric.
<expression2> must not be equal to 0 (returns 0).
 4 / 2Returns 2 
*  <expression1> * <expression2> Both expressions must be numeric (integer or decimal).
The result is also numeric.
 3 * 4Returns 12 
%  <expression1> % <expression2> Both expressions must be numeric (integer or decimal).
The result is also numeric.
 3 % 2Returns 1. 
Math
Operator  Literal Expression  Example 

is numeric  <expression> is numeric The type of the expression is integer or decimal.
 @ is numeric 
is integer  <expression> is integer The type of the expression is integer.
 @ is integer 
is decimal  <expression> is decimal The type of the expression is decimal.
 @ is decimal 
String
Operator  Literal Expression  Example 

+  <string> + <expression> <expression> + <string> It concatenates two expressions.
One expression must be a chained string.
 "the current time is " + (now())Returns "the current time is 20190923T09:30:06.693Z" (now()) + " is the current time"Returns "20190923T09:30:06.693Z is the current time" "a" + "b" + "c" + 1234Returns "abc1234". 
Date
Operator  Literal Expression  Example 

+  <expression + <duration> Append a duration to a dateTime, a dateTimeOnly or a duration.
 toDateTime("20111203T15:15:30Z") + toDuration("PT15M") Returns 20111203T15:30:30Z
toDateTimeOnly("20111203T15:15:30") + toDuration("PT15M")Returns 20111203T15:30:30 now() + toDuration("PT1H") Returns a dateTime (with UTC time zone) one hour later from current time
toDuration("PT1H") + toDuration("PT1H") Returns PT2H
