(Created page with "== Rules DSL == Domain-Specific Language ...") |
Jan Gruteser (talk | contribs) |
||
Line 1: | Line 1: | ||
== Rules DSL == | == Rules DSL == | ||
The B Rules domain-specific language mainly provides operations for data validation. <em>Rules</em> allow checking for expected properties, while <em>computations</em> can be used to define and compute variables based on the successful execution of certain rules. Furthermore you can use <em>functions</em> to compute values multiple times depending on different inputs. | |||
====Setting up a Rules Machine==== | |||
Rules machines are stored in <code>.rmch</code>-files. The general setup for the machine header looks like this: | |||
<pre> | |||
RULES_MACHINE machine name | |||
REFERENCES list of rules machines | |||
</pre> | |||
Below, you can use <code>SETS</code>, <code>DEFINITIONS</code>, <code>PROPERTIES</code> or <code>CONSTANTS</code> as in a normal B machine. Note that <code>VARIABLES</code> are not supported as they are set by rule based computations. |
The B Rules domain-specific language mainly provides operations for data validation. Rules allow checking for expected properties, while computations can be used to define and compute variables based on the successful execution of certain rules. Furthermore you can use functions to compute values multiple times depending on different inputs.
Rules machines are stored in .rmch
-files. The general setup for the machine header looks like this:
RULES_MACHINE machine name REFERENCES list of rules machines
Below, you can use SETS
, DEFINITIONS
, PROPERTIES
or CONSTANTS
as in a normal B machine. Note that VARIABLES
are not supported as they are set by rule based computations.