Skip to content

Write rules

Write rules control whether users are allowed to create, modify, or delete data.

They are evaluated whenever a write operation is attempted and provide feedback based on the result.

Write rules are always attached to classifications. The classification determines whether the rule applies.

What a write rule is

A write rule is a constraint that is checked when a change to data is attempted.

The classification is evaluated first and produces a boolean result.
The write rule then determines whether it applies based on the classification result and the rule’s When True setting.

If the rule applies, it produces feedback with a defined severity level.

Only rules with severity Error prevent the write operation from completing.

Multiple write rules may exist for the same table, and all applicable rules are evaluated during a write operation.

Trigger condition

The table below shows when a write rule applies, based on the classification result and the When True setting.

Classification result When True Rule applies
true checked yes
true unchecked no
false checked no
false unchecked yes

If the rule applies, it produces feedback with the configured severity.
If the rule does not apply, it has no effect on the write operation.

Severity levels

When a write rule applies, it produces feedback with one of the following severity levels:

Severity Effect on write operation
Error Blocks saving and shows an error message
Warning Allows saving and shows a warning message
Info Allows saving and shows an informational message
Confirmation Allows saving and shows a confirmation message

Only Error prevents a write operation.
Other severity levels provide feedback but allow the change to be saved.

Violation computation model

Write rules only block violations introduced by the current change.

If a rule violation already existed before the edit, it will be reported but will not prevent saving, as long as the current edit does not introduce new violations.

This approach ensures that:

  • existing data issues do not block unrelated changes
  • users can gradually correct historical problems
  • the system prevents new invalid states from being introduced