Search
K

# What is RuLa?

### Introduction

atfinity's rule language, is what makes it dynamic and perfectly suited to work within the unique demands of your organization. We call it Rule Language for atfinity, or short: RuLa.
Using RuLa, you tell atfinity under which conditions it should ask a question, or leave one out; when, while running a process, it should add or omit a specific document, or a section of a document; and how it can deduct/calculate information down the line from previously submitted answers.
Just like a proper sentence in English needs a minimum number of grammatical elements to make sense (subject + verb at the very least), conditions written in RuLa need to consist of at least two elements, glued together by an operator, to make sense and have an effect.
Here's an example of a condition written in RuLa:
p is Person
p.domicile = ch
Attaching this condition to a document, means that document will be required for every person in the case who has domicile in Switzerland.`=` is the operator that glues the two elements `p.domicile` and `ch` together.

### Boolean Logic

RuLa works mostly using boolean logic.
Boolean logic is very powerful, because it only allows for something to be true or false. There are no nuances, no maybes, no uncertainties. atfinity will do what you told it to do in your rules and conditions without hesitating, throwing curve balls, or missing a beat. Exactly what you need, when dealing with complicated data processes.
In boolean logic, 'True' means the condition you set is met, or: is present, resulting in an execution of the process or inclusion of the document you attached the rule to. 'False', logically, means the opposite.
Example:
Using the rule from the introduction
p is Person
p.domicile = ch
If a client works in Lugano, but has domicile in Italy, the outcome of the rule in the example above is 'false'. The document, or a single information field on a document, to which the rule is attached, will be left out of this client's case.