Rete Rules

Alternative content

Get Adobe Flash player

The Common Knowledge Rete Rules rule format is used to represent business rules in an intuitive and declarative manner and to evaluate those business rules using a forward chaining inference mechanism based on the Rete algorithm. The Rete algorithm was invented by Dr Charles L. Forgy of Carnegie Mellon University in 1979.

Rete based systems are also referred to as "Production Systems". Production systems are used to process a set of "Production Rules". A production rule is a term used to describe a rule that performs a specified set of actions given a specific set of matched input conditions. A production rule has two sides, a left hand side which contains the conditions and the right hand side which contains the actions.

The Rete Rules rule format allows business rules to be represented in Production System format. Rules may also be grouped together into rule sets, which allow for better organisation of large numbers of rules. Execution of Rete Rules by the Common Knowledge SDK is quick and efficient by virtue of a sophisticated implementation of the Rete algorithm.

Rete Rules Rule Format

Like all Common Knowledge Rule rule formats, the Rete Rules rule format seamlessly integrates with Common Knowledge Designer and the Common Knowledge SDK and can be easily combined with other business rule formats to create powerful solutions to complex business rule problems.


The Common Knowledge Rete Rules rule format provides capabilities in a number of areas to enable you to create powerful and flexible inferencing rules to represent the rules that govern your business:

Interactive Editor Standalone execution of Rete Rules entirely within Common Knowledge Designer
Interactive Execution Built on a common "token flow" architecture allowing you to build Workflows, Flow Charts, Statemaps and Ruleflows, or any hybrid of these.
Explanations Add explanations, known within Common Knowledge as Reason Strings, to any rule within the Rete Rules
Documentation Ability to attach custom information to your rules which will be included in generated documentation


The Common Knowledge Rete Rules rule format incorporates an ever-growing list of features that assist you during the design, authoring, execution and testing of your Rete Rules rules. Features include:

Rete Algorithm Inferencing power and permutational capabilities of the Rete algorithm
Organising Rules Group related rules together using Rete Rule rulesets and Rete Rulesets
Rule Priorities Assign execution priorities to rules
Rule Dwell Define rules that will only activate after they have been satisfied for a specified period of time
Business Objects Design custom User Classes to represent facts that will be asserted into the Rete network
Nested Rules Ability to embed execution of any other rulesets anywhere within the Rete Rules
Complex Expressions Ability to specify complex expressions as the conditions and actions within the Rete Rules to perform a range of operations including comparison (set, boolean and arithmetic), maths, statistics, string handling, financial, and date & time
Rule Execution Logging Detailed logging to aid in the understanding of Rete execution
Multiple Actions Specify multiple actions in the consequence of any given rule
One Shot Rules Specify that a rule is "one shot" only; that is, it will activate at most, once
Recursion Control Configure rules to prevent unwanted recursion