Using the Business Rule Language

SmartMode allows you to customize rules and messages for a particular user or situation using the Business Rule Language (BRL). BRL allows IF/THEN testing on certain information available when the rules execute. You can include your own cancel messages within the rules you create by using special message variables.

BRL is a non-procedural, high-level application development language that allows you to develop sophisticated programs with less effort than conventional programming languages. BRL rules consist of three parts:

  1. Rule name, which serves as a comment or description.

  1. Supporting condition (antecedent) or procedure statement.

  2. Conclusion.

The procedure and conclusion are expressed through IF-THEN statements. When a rule is executed, SmartMode determines whether these IF-THEN statements lead to a specified goal. Every BRL rule file, or knowledge base, must have at least one goal statement describing a conclusion that can be reached by your rules and that will affect governing decisions, deciding whether the query is to be canceled or run. The final goal statement pre-established for all SmartMode rules is DBA Rules Concluded, but you may also specify additional sub-goals within your customized rule file.

SmartMode uses a process called backward chaining, which involves starting with the final goal and working backward through the sub-goals expressed within the rules to arrive at the final goal. Since BRL is non-procedural, the order of rules is not important unless there are multiple rules concluding the same thing, such as DBA Rules Concluded. In that case the rules are executed sequentially in order of appearance. SmartMode executes all the rules as many times as necessary until the conditions of the query have been determined. You can add rules at any time and anywhere in the rule file.

The following section describes the types of information that can be contained within BRL IF-THEN statements.


Information Builders