Documentation / Miscellaneous / Rule syntax

Rule syntax

The decision logic is specified in multiple rules.

Rule

A rule consists of a list of one or more statements.

Statement

A statement always ends with a ‘;’ semi-colon. Multiple statements can be combined.

Example:

<statement> ; <statement> ;

or:

<statement> ;
<statement> ;

There are 2 kinds of statements:

  • if-statement
  • assignment

The “if” statement

An “if” statement can have the following forms ;

if( <expression> ) { <statements> } else { <statements> };

if( <expression> ) { <statements> } ;

The else part is optional.

If the expression evaluates to non-zero the first statements will be executed.

If the expression evaluates to zero the next list of statements will be executed. The ‘else’ part of the if statement.

For example:

if( temp > 10 ) {
    fan = 1 ;
} else {
    fan = 0 ;
}

Expression

An expression can be a single item or a combination of expressions.

Constants, for example:

10
12345

Variables, for example:

temp
fan

Operator expressions are formed as:

<expression> <operator> <expression>

For example, arithmetic expressions:

a + z
b / c
d * e
f - g

Boolean expressions:

a < 10
b < c
c > d
e == f

Assigment

A assignment consists of a left part and a right part combined with an ‘=’ (equal) sign. The left part should always be a variable reference. The right part is an expression.

<variable> = <expression> ;

For example:

temp = temp2 - 10 ;