diff --git a/docs/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md b/docs/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md
index 2d25770805..6522611d83 100644
--- a/docs/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md
+++ b/docs/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md
@@ -32,6 +32,8 @@ string(date("2012-12-25"))
Parses the given string to a number.
+Returns `null` if the string is not a number.
+
**Function signature**
```feel
@@ -72,6 +74,9 @@ context([{"key":"a", "value":1}, {"key":"b", "value":2}])
Returns a date from the given value.
+Returns `null` if the string is not a valid calendar date. For example, `"2024-06-31"` is invalid because June has
+only 30 days.
+
**Function signature**
```feel
@@ -100,6 +105,9 @@ date(date and time("2012-12-25T11:00:00"))
Returns a date from the given components.
+Returns `null` if the components don't represent a valid calendar date. For example, `2024,6,31` is invalid because
+June has only 30 days.
+
**Function signature**
```feel
@@ -179,6 +187,9 @@ time(14, 30, 0, duration("PT1H"))
Parses the given string into a date and time.
+Returns `null` if the string is not a valid calendar date. For example, `"2024-06-31T10:00:00"` is invalid because
+June has only 30 days.
+
**Function signature**
```feel
diff --git a/docs/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md b/docs/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md
index 32b931e2b6..3d0bbe0fc7 100644
--- a/docs/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md
+++ b/docs/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md
@@ -23,11 +23,15 @@ The `start position` starts at the index `1`. The last position is `-1`.
```feel
substring("foobar", 3)
// "obar"
+
+substring("foobar", -2)
+// "ar"
```
## substring(string, start position, length)
-Returns a substring of the given value starting at `start position`.
+Returns a substring of the given value, starting at `start position` with the given `length`. If `length` is greater than
+the remaining characters of the value, it returns all characters from `start position` until the end.
**Function signature**
@@ -42,6 +46,12 @@ The `start position` starts at the index `1`. The last position is `-1`.
```feel
substring("foobar", 3, 3)
// "oba"
+
+substring("foobar", -3, 2)
+// "ba"
+
+substring("foobar", 3, 10)
+// "obar"
```
## string length(string)
diff --git a/docs/components/modeler/feel/language-guide/feel-temporal-expressions.md b/docs/components/modeler/feel/language-guide/feel-temporal-expressions.md
index 84625be793..a8ba21dcaf 100644
--- a/docs/components/modeler/feel/language-guide/feel-temporal-expressions.md
+++ b/docs/components/modeler/feel/language-guide/feel-temporal-expressions.md
@@ -40,9 +40,11 @@ duration("P3M")
@"P3M"
```
+The value is `null` if a date or date-time literal doesn't represent a valid calendar date. For example, `@"2024-06-31"` is invalid because June has only 30 days.
+
### Addition
-Adds a value to another value. The operator is defined for the followings types.
+Adds a value to another value. The operator is defined for the following types.
If a value has a different type, the result is `null`.
diff --git a/docs/components/modeler/feel/language-guide/feel-unary-tests.md b/docs/components/modeler/feel/language-guide/feel-unary-tests.md
index 3c66b8bf92..756853e053 100644
--- a/docs/components/modeler/feel/language-guide/feel-unary-tests.md
+++ b/docs/components/modeler/feel/language-guide/feel-unary-tests.md
@@ -9,10 +9,10 @@ entries of a decision table (i.e. the conditions of a rule).
A unary-tests expression returns `true` if one of the following conditions is fulfilled:
-- The expression evaluates to `true` when the input value is applied to it.
-- The expression evaluates to a list, and the input value is equal to at least one of the values in
- that list.
+- The expression evaluates to `true` when the input value is applied to the unary operators.
+- The expression evaluates to `true` when the input value is assigned to the special variable `?`.
- The expression evaluates to a value, and the input value is equal to that value.
+- The expression evaluates to a list, and the input value is equal to at least one of the values.
- The expression is equal to `-` (a dash).
### Comparison
@@ -129,13 +129,14 @@ not(2, 3)
### Expressions
-Evaluates an expression that returns a boolean value. For example, [invoking a function](/components/modeler/feel/language-guide/feel-functions.md#invocation).
+When a unary operator is not enough to express the condition, any expression that returns a boolean value can be used,
+such as [invoking a function](/components/modeler/feel/language-guide/feel-functions.md#invocation).
-The input value can be accessed in the expression by using the symbol `?` (a question mark).
+In the expression, the input value can be accessed by the special variable `?`.
```feel
contains(?, "good")
-// check if the input value (string) contains "good"
+// checks if the input value (string) contains "good"
ends with(?, "@camunda.com")
// checks if the input value (string) ends with "@camunda.com"
diff --git a/versioned_docs/version-8.2/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md b/versioned_docs/version-8.2/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md
index 2d25770805..6522611d83 100644
--- a/versioned_docs/version-8.2/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md
+++ b/versioned_docs/version-8.2/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md
@@ -32,6 +32,8 @@ string(date("2012-12-25"))
Parses the given string to a number.
+Returns `null` if the string is not a number.
+
**Function signature**
```feel
@@ -72,6 +74,9 @@ context([{"key":"a", "value":1}, {"key":"b", "value":2}])
Returns a date from the given value.
+Returns `null` if the string is not a valid calendar date. For example, `"2024-06-31"` is invalid because June has
+only 30 days.
+
**Function signature**
```feel
@@ -100,6 +105,9 @@ date(date and time("2012-12-25T11:00:00"))
Returns a date from the given components.
+Returns `null` if the components don't represent a valid calendar date. For example, `2024,6,31` is invalid because
+June has only 30 days.
+
**Function signature**
```feel
@@ -179,6 +187,9 @@ time(14, 30, 0, duration("PT1H"))
Parses the given string into a date and time.
+Returns `null` if the string is not a valid calendar date. For example, `"2024-06-31T10:00:00"` is invalid because
+June has only 30 days.
+
**Function signature**
```feel
diff --git a/versioned_docs/version-8.2/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md b/versioned_docs/version-8.2/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md
index a00122e390..59308327d0 100644
--- a/versioned_docs/version-8.2/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md
+++ b/versioned_docs/version-8.2/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md
@@ -23,11 +23,15 @@ The `start position` starts at the index `1`. The last position is `-1`.
```feel
substring("foobar", 3)
// "obar"
+
+substring("foobar", -2)
+// "ar"
```
## substring(string, start position, length)
-Returns a substring of the given value starting at `start position`.
+Returns a substring of the given value, starting at `start position` with the given `length`. If `length` is greater than
+the remaining characters of the value, it returns all characters from `start position` until the end.
**Function signature**
@@ -42,6 +46,12 @@ The `start position` starts at the index `1`. The last position is `-1`.
```feel
substring("foobar", 3, 3)
// "oba"
+
+substring("foobar", -3, 2)
+// "ba"
+
+substring("foobar", 3, 10)
+// "obar"
```
## string length(string)
diff --git a/versioned_docs/version-8.2/components/modeler/feel/language-guide/feel-temporal-expressions.md b/versioned_docs/version-8.2/components/modeler/feel/language-guide/feel-temporal-expressions.md
index ef362c84cf..9d90e4bdbf 100644
--- a/versioned_docs/version-8.2/components/modeler/feel/language-guide/feel-temporal-expressions.md
+++ b/versioned_docs/version-8.2/components/modeler/feel/language-guide/feel-temporal-expressions.md
@@ -40,6 +40,8 @@ duration("P3M")
@"P3M"
```
+The value is `null` if a date or date-time literal doesn't represent a valid calendar date. For example, `@"2024-06-31"` is invalid because June has only 30 days.
+
### Addition
diff --git a/versioned_docs/version-8.2/components/modeler/feel/language-guide/feel-unary-tests.md b/versioned_docs/version-8.2/components/modeler/feel/language-guide/feel-unary-tests.md
index 8d2a3a0482..b271c1666f 100644
--- a/versioned_docs/version-8.2/components/modeler/feel/language-guide/feel-unary-tests.md
+++ b/versioned_docs/version-8.2/components/modeler/feel/language-guide/feel-unary-tests.md
@@ -9,10 +9,10 @@ entries of a decision table (i.e. the conditions of a rule).
A unary-tests expression returns `true` if one of the following conditions is fulfilled:
-- The expression evaluates to `true` when the input value is applied to it.
-- The expression evaluates to a list, and the input value is equal to at least one of the values in
- that list.
+- The expression evaluates to `true` when the input value is applied to the unary operators.
+- The expression evaluates to `true` when the input value is assigned to the special variable `?`.
- The expression evaluates to a value, and the input value is equal to that value.
+- The expression evaluates to a list, and the input value is equal to at least one of the values.
- The expression is equal to `-` (a dash).
### Comparison
@@ -128,13 +128,14 @@ not(2, 3)
### Expressions
-Evaluates an expression that returns a boolean value. For example, [invoking a function](/docs/components/modeler/feel/language-guide/feel-functions#invocation).
+When a unary operator is not enough to express the condition, any expression that returns a boolean value can be used,
+such as [invoking a function](/components/modeler/feel/language-guide/feel-functions.md#invocation).
-The input value can be accessed in the expression by using the symbol `?` (a question mark).
+In the expression, the input value can be accessed by the special variable `?`.
```feel
contains(?, "good")
-// check if the input value (string) contains "good"
+// checks if the input value (string) contains "good"
ends with(?, "@camunda.com")
// checks if the input value (string) ends with "@camunda.com"
diff --git a/versioned_docs/version-8.3/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md b/versioned_docs/version-8.3/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md
index 2d25770805..6522611d83 100644
--- a/versioned_docs/version-8.3/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md
+++ b/versioned_docs/version-8.3/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md
@@ -32,6 +32,8 @@ string(date("2012-12-25"))
Parses the given string to a number.
+Returns `null` if the string is not a number.
+
**Function signature**
```feel
@@ -72,6 +74,9 @@ context([{"key":"a", "value":1}, {"key":"b", "value":2}])
Returns a date from the given value.
+Returns `null` if the string is not a valid calendar date. For example, `"2024-06-31"` is invalid because June has
+only 30 days.
+
**Function signature**
```feel
@@ -100,6 +105,9 @@ date(date and time("2012-12-25T11:00:00"))
Returns a date from the given components.
+Returns `null` if the components don't represent a valid calendar date. For example, `2024,6,31` is invalid because
+June has only 30 days.
+
**Function signature**
```feel
@@ -179,6 +187,9 @@ time(14, 30, 0, duration("PT1H"))
Parses the given string into a date and time.
+Returns `null` if the string is not a valid calendar date. For example, `"2024-06-31T10:00:00"` is invalid because
+June has only 30 days.
+
**Function signature**
```feel
diff --git a/versioned_docs/version-8.3/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md b/versioned_docs/version-8.3/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md
index a00122e390..59308327d0 100644
--- a/versioned_docs/version-8.3/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md
+++ b/versioned_docs/version-8.3/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md
@@ -23,11 +23,15 @@ The `start position` starts at the index `1`. The last position is `-1`.
```feel
substring("foobar", 3)
// "obar"
+
+substring("foobar", -2)
+// "ar"
```
## substring(string, start position, length)
-Returns a substring of the given value starting at `start position`.
+Returns a substring of the given value, starting at `start position` with the given `length`. If `length` is greater than
+the remaining characters of the value, it returns all characters from `start position` until the end.
**Function signature**
@@ -42,6 +46,12 @@ The `start position` starts at the index `1`. The last position is `-1`.
```feel
substring("foobar", 3, 3)
// "oba"
+
+substring("foobar", -3, 2)
+// "ba"
+
+substring("foobar", 3, 10)
+// "obar"
```
## string length(string)
diff --git a/versioned_docs/version-8.3/components/modeler/feel/language-guide/feel-temporal-expressions.md b/versioned_docs/version-8.3/components/modeler/feel/language-guide/feel-temporal-expressions.md
index 84625be793..bf7ce7cc2b 100644
--- a/versioned_docs/version-8.3/components/modeler/feel/language-guide/feel-temporal-expressions.md
+++ b/versioned_docs/version-8.3/components/modeler/feel/language-guide/feel-temporal-expressions.md
@@ -40,6 +40,8 @@ duration("P3M")
@"P3M"
```
+The value is `null` if a date or date-time literal doesn't represent a valid calendar date. For example, `@"2024-06-31"` is invalid because June has only 30 days.
+
### Addition
Adds a value to another value. The operator is defined for the followings types.
diff --git a/versioned_docs/version-8.3/components/modeler/feel/language-guide/feel-unary-tests.md b/versioned_docs/version-8.3/components/modeler/feel/language-guide/feel-unary-tests.md
index 8d00e20121..756853e053 100644
--- a/versioned_docs/version-8.3/components/modeler/feel/language-guide/feel-unary-tests.md
+++ b/versioned_docs/version-8.3/components/modeler/feel/language-guide/feel-unary-tests.md
@@ -9,10 +9,10 @@ entries of a decision table (i.e. the conditions of a rule).
A unary-tests expression returns `true` if one of the following conditions is fulfilled:
-- The expression evaluates to `true` when the input value is applied to it.
-- The expression evaluates to a list, and the input value is equal to at least one of the values in
- that list.
+- The expression evaluates to `true` when the input value is applied to the unary operators.
+- The expression evaluates to `true` when the input value is assigned to the special variable `?`.
- The expression evaluates to a value, and the input value is equal to that value.
+- The expression evaluates to a list, and the input value is equal to at least one of the values.
- The expression is equal to `-` (a dash).
### Comparison
@@ -129,13 +129,14 @@ not(2, 3)
### Expressions
-Evaluates an expression that returns a boolean value. For example, [invoking a function](/docs/components/modeler/feel/language-guide/feel-functions#invocation).
+When a unary operator is not enough to express the condition, any expression that returns a boolean value can be used,
+such as [invoking a function](/components/modeler/feel/language-guide/feel-functions.md#invocation).
-The input value can be accessed in the expression by using the symbol `?` (a question mark).
+In the expression, the input value can be accessed by the special variable `?`.
```feel
contains(?, "good")
-// check if the input value (string) contains "good"
+// checks if the input value (string) contains "good"
ends with(?, "@camunda.com")
// checks if the input value (string) ends with "@camunda.com"
diff --git a/versioned_docs/version-8.4/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md b/versioned_docs/version-8.4/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md
index 2d25770805..6522611d83 100644
--- a/versioned_docs/version-8.4/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md
+++ b/versioned_docs/version-8.4/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md
@@ -32,6 +32,8 @@ string(date("2012-12-25"))
Parses the given string to a number.
+Returns `null` if the string is not a number.
+
**Function signature**
```feel
@@ -72,6 +74,9 @@ context([{"key":"a", "value":1}, {"key":"b", "value":2}])
Returns a date from the given value.
+Returns `null` if the string is not a valid calendar date. For example, `"2024-06-31"` is invalid because June has
+only 30 days.
+
**Function signature**
```feel
@@ -100,6 +105,9 @@ date(date and time("2012-12-25T11:00:00"))
Returns a date from the given components.
+Returns `null` if the components don't represent a valid calendar date. For example, `2024,6,31` is invalid because
+June has only 30 days.
+
**Function signature**
```feel
@@ -179,6 +187,9 @@ time(14, 30, 0, duration("PT1H"))
Parses the given string into a date and time.
+Returns `null` if the string is not a valid calendar date. For example, `"2024-06-31T10:00:00"` is invalid because
+June has only 30 days.
+
**Function signature**
```feel
diff --git a/versioned_docs/version-8.4/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md b/versioned_docs/version-8.4/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md
index a00122e390..59308327d0 100644
--- a/versioned_docs/version-8.4/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md
+++ b/versioned_docs/version-8.4/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md
@@ -23,11 +23,15 @@ The `start position` starts at the index `1`. The last position is `-1`.
```feel
substring("foobar", 3)
// "obar"
+
+substring("foobar", -2)
+// "ar"
```
## substring(string, start position, length)
-Returns a substring of the given value starting at `start position`.
+Returns a substring of the given value, starting at `start position` with the given `length`. If `length` is greater than
+the remaining characters of the value, it returns all characters from `start position` until the end.
**Function signature**
@@ -42,6 +46,12 @@ The `start position` starts at the index `1`. The last position is `-1`.
```feel
substring("foobar", 3, 3)
// "oba"
+
+substring("foobar", -3, 2)
+// "ba"
+
+substring("foobar", 3, 10)
+// "obar"
```
## string length(string)
diff --git a/versioned_docs/version-8.4/components/modeler/feel/language-guide/feel-temporal-expressions.md b/versioned_docs/version-8.4/components/modeler/feel/language-guide/feel-temporal-expressions.md
index 84625be793..bf7ce7cc2b 100644
--- a/versioned_docs/version-8.4/components/modeler/feel/language-guide/feel-temporal-expressions.md
+++ b/versioned_docs/version-8.4/components/modeler/feel/language-guide/feel-temporal-expressions.md
@@ -40,6 +40,8 @@ duration("P3M")
@"P3M"
```
+The value is `null` if a date or date-time literal doesn't represent a valid calendar date. For example, `@"2024-06-31"` is invalid because June has only 30 days.
+
### Addition
Adds a value to another value. The operator is defined for the followings types.
diff --git a/versioned_docs/version-8.4/components/modeler/feel/language-guide/feel-unary-tests.md b/versioned_docs/version-8.4/components/modeler/feel/language-guide/feel-unary-tests.md
index 8d00e20121..756853e053 100644
--- a/versioned_docs/version-8.4/components/modeler/feel/language-guide/feel-unary-tests.md
+++ b/versioned_docs/version-8.4/components/modeler/feel/language-guide/feel-unary-tests.md
@@ -9,10 +9,10 @@ entries of a decision table (i.e. the conditions of a rule).
A unary-tests expression returns `true` if one of the following conditions is fulfilled:
-- The expression evaluates to `true` when the input value is applied to it.
-- The expression evaluates to a list, and the input value is equal to at least one of the values in
- that list.
+- The expression evaluates to `true` when the input value is applied to the unary operators.
+- The expression evaluates to `true` when the input value is assigned to the special variable `?`.
- The expression evaluates to a value, and the input value is equal to that value.
+- The expression evaluates to a list, and the input value is equal to at least one of the values.
- The expression is equal to `-` (a dash).
### Comparison
@@ -129,13 +129,14 @@ not(2, 3)
### Expressions
-Evaluates an expression that returns a boolean value. For example, [invoking a function](/docs/components/modeler/feel/language-guide/feel-functions#invocation).
+When a unary operator is not enough to express the condition, any expression that returns a boolean value can be used,
+such as [invoking a function](/components/modeler/feel/language-guide/feel-functions.md#invocation).
-The input value can be accessed in the expression by using the symbol `?` (a question mark).
+In the expression, the input value can be accessed by the special variable `?`.
```feel
contains(?, "good")
-// check if the input value (string) contains "good"
+// checks if the input value (string) contains "good"
ends with(?, "@camunda.com")
// checks if the input value (string) ends with "@camunda.com"
diff --git a/versioned_docs/version-8.5/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md b/versioned_docs/version-8.5/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md
index 2d25770805..6522611d83 100644
--- a/versioned_docs/version-8.5/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md
+++ b/versioned_docs/version-8.5/components/modeler/feel/builtin-functions/feel-built-in-functions-conversion.md
@@ -32,6 +32,8 @@ string(date("2012-12-25"))
Parses the given string to a number.
+Returns `null` if the string is not a number.
+
**Function signature**
```feel
@@ -72,6 +74,9 @@ context([{"key":"a", "value":1}, {"key":"b", "value":2}])
Returns a date from the given value.
+Returns `null` if the string is not a valid calendar date. For example, `"2024-06-31"` is invalid because June has
+only 30 days.
+
**Function signature**
```feel
@@ -100,6 +105,9 @@ date(date and time("2012-12-25T11:00:00"))
Returns a date from the given components.
+Returns `null` if the components don't represent a valid calendar date. For example, `2024,6,31` is invalid because
+June has only 30 days.
+
**Function signature**
```feel
@@ -179,6 +187,9 @@ time(14, 30, 0, duration("PT1H"))
Parses the given string into a date and time.
+Returns `null` if the string is not a valid calendar date. For example, `"2024-06-31T10:00:00"` is invalid because
+June has only 30 days.
+
**Function signature**
```feel
diff --git a/versioned_docs/version-8.5/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md b/versioned_docs/version-8.5/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md
index a00122e390..59308327d0 100644
--- a/versioned_docs/version-8.5/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md
+++ b/versioned_docs/version-8.5/components/modeler/feel/builtin-functions/feel-built-in-functions-string.md
@@ -23,11 +23,15 @@ The `start position` starts at the index `1`. The last position is `-1`.
```feel
substring("foobar", 3)
// "obar"
+
+substring("foobar", -2)
+// "ar"
```
## substring(string, start position, length)
-Returns a substring of the given value starting at `start position`.
+Returns a substring of the given value, starting at `start position` with the given `length`. If `length` is greater than
+the remaining characters of the value, it returns all characters from `start position` until the end.
**Function signature**
@@ -42,6 +46,12 @@ The `start position` starts at the index `1`. The last position is `-1`.
```feel
substring("foobar", 3, 3)
// "oba"
+
+substring("foobar", -3, 2)
+// "ba"
+
+substring("foobar", 3, 10)
+// "obar"
```
## string length(string)
diff --git a/versioned_docs/version-8.5/components/modeler/feel/language-guide/feel-temporal-expressions.md b/versioned_docs/version-8.5/components/modeler/feel/language-guide/feel-temporal-expressions.md
index 84625be793..bf7ce7cc2b 100644
--- a/versioned_docs/version-8.5/components/modeler/feel/language-guide/feel-temporal-expressions.md
+++ b/versioned_docs/version-8.5/components/modeler/feel/language-guide/feel-temporal-expressions.md
@@ -40,6 +40,8 @@ duration("P3M")
@"P3M"
```
+The value is `null` if a date or date-time literal doesn't represent a valid calendar date. For example, `@"2024-06-31"` is invalid because June has only 30 days.
+
### Addition
Adds a value to another value. The operator is defined for the followings types.
diff --git a/versioned_docs/version-8.5/components/modeler/feel/language-guide/feel-unary-tests.md b/versioned_docs/version-8.5/components/modeler/feel/language-guide/feel-unary-tests.md
index 3c66b8bf92..756853e053 100644
--- a/versioned_docs/version-8.5/components/modeler/feel/language-guide/feel-unary-tests.md
+++ b/versioned_docs/version-8.5/components/modeler/feel/language-guide/feel-unary-tests.md
@@ -9,10 +9,10 @@ entries of a decision table (i.e. the conditions of a rule).
A unary-tests expression returns `true` if one of the following conditions is fulfilled:
-- The expression evaluates to `true` when the input value is applied to it.
-- The expression evaluates to a list, and the input value is equal to at least one of the values in
- that list.
+- The expression evaluates to `true` when the input value is applied to the unary operators.
+- The expression evaluates to `true` when the input value is assigned to the special variable `?`.
- The expression evaluates to a value, and the input value is equal to that value.
+- The expression evaluates to a list, and the input value is equal to at least one of the values.
- The expression is equal to `-` (a dash).
### Comparison
@@ -129,13 +129,14 @@ not(2, 3)
### Expressions
-Evaluates an expression that returns a boolean value. For example, [invoking a function](/components/modeler/feel/language-guide/feel-functions.md#invocation).
+When a unary operator is not enough to express the condition, any expression that returns a boolean value can be used,
+such as [invoking a function](/components/modeler/feel/language-guide/feel-functions.md#invocation).
-The input value can be accessed in the expression by using the symbol `?` (a question mark).
+In the expression, the input value can be accessed by the special variable `?`.
```feel
contains(?, "good")
-// check if the input value (string) contains "good"
+// checks if the input value (string) contains "good"
ends with(?, "@camunda.com")
// checks if the input value (string) ends with "@camunda.com"