UEL Expressions

Some process elements and form elements support the use of immediate evaluation expressions that are written in the Unified Expression Language (UEL). Immediate evaluation UEL expressions use the ${} syntax.


You can use expressions to dynamically read data in process variables or form variables and perform arithmetic or logical operations. For example, if you have a form that contains a text box whose variable is named text, you can use the expression ${text} to read the value entered in the text box, or ${text == \"hello\"} to check if the value entered by the user is “hello”. Arithmetic, logical, and relational operators are some of the common operators used in UEL expressions.


For more information about writing UEL expressions, refer to the Java EE tutorials by Oracle.

Common Expressions

The following table lists some of the more common expressions that you can use in process elements and form elements.

Description Expression
Get the value that is stored in the variable. ${myVariable}
Get the value that is stored in the variable. This expression does not throw an error when the variable does not exist. ${variableContainer.getVariable('myVariable')
Get the user ID of the logged in user. ${authenticatedUserId}
Get the user ID of the process starter. ${initiator}
Get the process ID of a running process. Do not use this expression in a HTTP task that is located immediately after the None Start Event as the process ID may not have been initialized yet. ${_processInstanceId}
Check if the variable is equals to “hello”. ${myVariable == "hello"} or ${myVariable == 'hello'}
Check if the variable is not equals to “hello”. ${myVariable != "hello"} or ${myVariable != 'hello'}
Check if the variable is less than 1. ${myVariable < 1}
Check if the variable is greater than 1. ${myVariable > 1}
Check if the sum of two variables is greater than 1. ${myVariable1 + myVariable2 > 1}

Note

Only integers are supported for greater than and less than operations.

Advanced Expressions

The following table lists some of the advanced expressions that you can use only in Connector conditions and HTTP tasks.

Description Expression
Check if the variable is equals to “hello”. ${var:get(myVariable) == 'hello'}
Check if the variable is equals to 10. ${var:equals(myVariable,10)}
Check if the variable is less than 10. ${var:lessThan(myVariable, 10)}
Check if the variable is less than or equals to 10. ${var:lessThanOrEquals(myVariable, 10)}
Check if the variable value is greater than 10. ${var:greaterThan(myVariable,10)}
Check if the variable value is greater than or equals to 10. ${var:greaterThanOrEquals(myVariable,10)}
Check if the variable value is not equals to 10. ${var:notEquals(myVariable,10)}
Get the variable value or the specified default value. ${var:getOrDefault(myVariable,140)}
Check if the variable exists. ${var:exists(myVariable)}
Check if the variable value is not empty. ${var:notEmpty(myVariable)}
Check if the variable value is empty. ${var:empty(myVariable)}

Note

Only integers are supported for greater than and less than operations.