Rules Language

CER is a language for defining questions that can be asked, and the rules for determining the answers to those questions.

Each question specifies:

The answer to a question can be as simple as yes or no, e.g. the question "Is this person eligible to receive benefit?"; however, CER lets you define answer types to be as complex as you need, e.g. the question "Which groups of people in the household have an urgent need?" would be answered by providing a list of household groups, with each household group containing a list of people.

The rules for determining the answer to a question again can be as simple or as complex as you need, e.g. the rule for the answer to the question "What is the claimant's date of birth?" is likely to (trivially) be "the date that the claimant declared their date of birth to be", whereas the rule for answering the question "Is this person eligible to receive a benefit?" is likely to involve further questions such as "What level of income does this person have?" and/or "How many children does this person have?".

CER has its own terminology for these concepts:

1 Since Cúram V6, rule sets are no longer stand-alone. A class in one rule set can extend a rule class from another rule set; the data type of a rule attribute in one rule set can be a rule class from another rule set; and expressions to read or create rule objects can use rule classes from other rule sets.