A rule is the most important construct in the grammar of openVALIDATION. It consists of a condition and an action. With a validation rule, the action is always an error message. The easiest way to express such a rule is a** IF / THEN** construct.

Keyword | Description |

| Selects the beginning of a rule and the next condition |

| Marks the beginning of an error message |

| Selects the start of a new linked AND condition |

| Selects the start of a new linked OR condition |

Keyword | Description |

| An indicator identifies an expression as a rule. |

| An indicator identifies an expression, as a rule |

Relational operations always has a left and a right operand and the corresponding comparison operator.

Keyword | Description |

| A relational operator '=' for numeric and string operands |

| A relational operator '!=' for numeric and string operands |

| A relational operator '<' for numeric operands |

| A relational operator '>' for numeric operands |

| A relational operator '>=' for numeric operands |

| A relational operator '<=' for numeric operands |

| A relational operator for non-"null" |

| A relational operator for null |

Keyword | Description |

| A mathematical operation for a simple addition |

| A mathematical operation for a simple subtraction |

| A mathematical operation for a simple multiplication |

| A mathematical operation for a simple division |

| A mathematical operation for a simple modulo calculation |

You can write comments in the rulebook. These do not contain any logic.

Keyword | Description |

| A comment |

Keyword | Description |

| Error messages often contain their own error codes for unique identification. |