LogoLogo
User DocsAPI Docsatfinity.swiss
  • 🚀Atfinity: No-Code Process Automation
  • Guides
    • Getting Started
      • Introduction
      • 1. Create Ontologies and Roles
      • 2. Create Information
      • 3. Create and Configure a Document
      • 4. Create a Rule
      • 5. Create a Process
      • 6. Put Live
      • Summary and Next Steps
    • Advanced Topics
      • Extending a Workflow
      • Customizing Names of Cases and Instances
      • Automatically Calculating Information Values
      • Using Built in Integrations
    • Troubleshooting
      • Why is a question not asked?
      • Why is a question asked?
      • The value of my calculated field has a strange format
      • Why is my Proof never asked for?
      • Why is my Rule not executed?
      • Why are some options missing in a dropdown?
      • Case Errors
    • Glossary
      • Case
      • Process
      • Workflow
      • Ontology
      • Instance
      • Role
      • Information
      • Document
      • Document Section
      • Document Template
      • Rules
      • Scheduled Rules
      • Information Types
      • Tab
      • Category
      • Taxonomy
      • Proof
      • RuLa Functions
      • Constants
  • Rule Language (RuLA)
    • ℹ️What is RuLa?
    • Declarations
      • is
      • is with where
      • is all
      • is all with min max
      • Role Choices
    • Expressions
    • Operators
      • Boolean Operators
        • =
        • !=
        • >
        • >=
        • <
        • <=
        • and
        • and then
        • not
        • or
        • or else
        • matches (~=)
      • Date Operators
        • NOW
        • IS_DATE
        • TODAY
        • FORMAT_DATE
        • DAYS
        • WEEKDAYS
        • ADD_DAYS
        • ADD_WEEKDAYS
        • ADD_MONTH
        • ADD_YEARS
        • SUBTRACT_YEARS
        • AFTER
        • DATE_EQUAL
        • DATETIME_EQUAL
        • AFTER_EQUAL
        • BEFORE
        • BEFORE_EQUAL
        • DAYS_AGO
        • MONTHS_AGO
        • YEARS_AGO
      • Known Operators
        • unknown
        • known
        • SNEAKY
        • AVG_OF_ANY
        • LIST_OF_ANY
        • MAX_OF_ANY
        • MIN_OF_ANY
        • SUM_OF_ANY
        • CONCAT_OF_ANY
        • UNION_OF_ANY
        • JOIN_OF_ANY
      • List Operators
        • [ , ] (create)
        • [] (access)
        • in
        • not in
        • contains
        • contains any
        • contains only
        • COUNT
        • SORT
        • CUSTOM_MAX
        • REVERSE
        • FIRST_ELEMENT
        • ALL
        • SOME
        • UNION (or |)
        • SET_DIFFERENCE
        • INTERSECTION
        • MAP
        • FILTER
        • FILTER_FALSE
        • FILTER_UNKNOWN
        • SET
      • Dictionary Operators
        • {} (create)
        • [] (access)
        • in
        • keys()
        • FLATTEN
      • Mathematical Operators
        • + - / *
        • %
        • **
        • //
        • AVG
        • CEIL
        • FLOOR
        • MAX
        • MIN
        • ROUND
        • SUM
        • SUM_PRODUCT
        • SQRT
      • String Operators
        • LEN
        • LOWER
        • UPPER
        • TRIM
        • TRIM_LEFT
        • LEFT
        • RIGHT
        • SLICE
        • REPLACE
        • REPLACE_CHARS
        • format
        • calculated_name
        • CONCAT
        • markdown_table
        • make_filename
        • JOIN
        • uuid
      • Special Operators
        • :=
        • ensure
        • get_attr
        • get_translated_attr
        • has_attr
        • get_properties
        • instances
        • instances_exist
        • is
        • ontology
        • Translate (.$)
        • translate_string
        • roles
        • self
        • name_and_log (debug)
    • Conditional Expressions
      • case
      • if-then-else
      • switch
    • Comments
    • Information about the case
    • Accessing the outcome instance
    • Information about documents
    • Recipes
  • Document XML (ADX)
    • ℹ️What is ADX?
    • ADX Elements
      • Body
      • Text
      • Image
      • Columns
      • Field
      • Checkbox
      • Table
      • Rect
      • Line
      • Space
      • KeepTogether
      • Template
      • Style
      • Page Number
      • QR Code
      • HR Code
    • Jinja Templating
      • Instances
      • Case Meta Information
      • Custom Translations
      • Functions
      • Jinja filters
    • Font support
  • API
    • ℹ️What is the Atfinity API?
    • Generate API Keys
    • API Documentation
    • Calling your APIs within Cases
    • External Data Sources (e.g. CRM)
  • Deploying
    • Deploying on-site
      • Kubernetes
      • Docker Compose
    • Management commands
    • Security Logging
    • LDAP User Backend
    • Single Sign On
  • Integrations
    • Avaloq
    • Worldcheck
  • Releases
    • Release Notes
      • Version 11.x
      • Version 10.x
      • Version 9.x and earlier
    • Release Schedule
Powered by GitBook
On this page

Was this helpful?

  1. Rule Language (RuLA)

Operators

PreviousExpressionsNextBoolean Operators

Last updated 4 years ago

Was this helpful?

Just as a sentence means nothing without a verb, anything you write in means nothing without operators. They make it possible for a variable to be defined, for a condition to work and for a rule to make sense.

The table below lists all available operators in alphabetical order, with a brief description. For a more extensive description of each individual operator, plus examples, click on it or visit the sub-pages in the menu on the left.

Available Operators and Keywords

Operator

Category

Description

Compares. Evaluates to either true or false, delivering different outcomes.

Compares, true for 'is not equal to'.

Compares, true for 'greater than'.

Compares, true for 'equal to or greater than'.

Compares, true for 'less than'.

Compares, true for 'equal to or less than'.

Assignment, which can have any kind of expression on the right side of the operator.

Perform basic mathematical calculations.

Creates a new list from single values, allowing other list operators to perform actions on the new list.

Takes a date and adds a specified number of years to it.

Takes two dates, and checks if the first one comes after the second one.

Takes two dates, and checks if the first one comes after, or is the same as, the second one.

Evaluates if all values in a list are true.

Sets as condition that both expressions have to be true to have the entire expression evaluate to 'true'.

Similar as above, but when using 'and then', the second question is only asked when the first evaluates to 'true'.

Calculates the average value.

Calculates the average of available values.

Takes two dates, and checks if the first one comes before the second one.

Takes two dates, and checks if the first one comes before, or is the same as, the second one.

Accesses the calculated name of an instance.

Returns the value of the given parameter, rounded up to a whole number.

Combines two values into one new value, specifying what should separate the two.

Goes over a list, which is given on the left of the operator. Evaluates to 'true' if the single value on the right is present in the given list.

Expressions with this operator will only evaluate to 'true' if all values from the list on the right side are present in the list on the left side.

Going over a list, given on the left side of the operator, this operator has the expression evaluate to true if any value from that list is present in a list or the single value given on the right side.

Returns the number of occurrences of the given parameter.

Makes sure a case contains at least, for example, 1 Person. (replaces create)

Returns the first element from a list.

Returns the value of the given parameter, rounded down to a whole number.

Gives access to named properties of an instance using expressions.

Returns specific information on an instance's properties.

Checks if a value is present in a taxonomy.

Returns all instances of the given type(s) living on the platform.

Basic assignment of a variable.

Combines a list of values into one new value by appending them.

Sets a condition for when a property is not unknown.

Builds a list of only the values that are available out of all the values it is given.

Performs the same action on each individual value in a list.

Returns the highest value.

Returns the highest out of available values.

Returns the lowest value.

Returns the lowest out of available values.

A negation.

Evaluates to true if the given value is absent from the specified taxonomy.

Current date and time.

Sets a condition based on the type of ontology.

The rule can accept, but will not require, for example, a third person.

When just one of the two given expressions is true, the entire expression evaluates to 'true'.

Similar to above, but the second question is only asked if the first has been answered.

Sets a condition based on role(s).

Returns the value of the given parameter, rounded to a whole number.

Wrapping an expression with SNEAKYhas the system ignore the expression, if the information used in it is not available.

Evaluates if any value in a list is true.

Takes a date and subtracts a specified number of years to it.

Adds up numbers.

Adds available numbers.

Multiplies values in one list with values on the same index in another list. Returns the sum of the multiplications.

Combines the elements of two sets into one single set.

Creates a combined list of the available values and lists out of all values and lists you provide.

Sets a condition for when a property is unknown.

Calculates the number of years since a given date.

, , , ,

Refers to the current where you use it.

RuLa
optional
=
Boolean
!=
Boolean
>
Boolean
>=
Boolean
<
Boolean
<=
Boolean
:=
Special
+
-
/
*
%
Mathematical
[ , ]
List
ADD_YEARS
Date
AFTER
Date
AFTER_EQUAL
Date
ALL
List
and
Boolean
and then
Boolean
AVG
Mathematical
AVG_OF_ANY
Known
BEFORE
Date
BEFORE_EQUAL
Date
calculated_name
String
CEIL
Mathematical
CONCAT
String
contains
List
contains all
List
contains any
List
COUNT
List
ensure
Special
FIRST_ELEMENT
List
FLOOR
Mathematical
get_attr
Special
get_properties
Special
in
List
instances
Special
is
Special
JOIN
String
known
Known
LIST_OF_ANY
Known
MAP
List
MAX
Mathematical
MAX_OF_ANY
Known
MIN
Mathematical
MIN_OF_ANY
Known
not
Boolean
not in
List
NOW
Date
ontology
Special
Special
or
Boolean
or else
Boolean
roles
Special
ROUND
Mathematical
self
Special
instance
SNEAKY
Known
SOME
List
SUBTRACT_YEARS
Date
SUM
Mathematical
SUM_OF_ANY
Known
SUM_PRODUCT
Mathematical
UNION
List
UNION_OF_ANY
Known
unknown
Known
YEARS_AGO
Date