Glossary of Terms
"B"
Backtracking
Backward-Chaining
"C"
CLIPS
C Language Integrated Production System. See the FAQ for details.
Conflict (and conflict resolution)
A rule engine works like this: It determines which rules can fire for the currently known facts. If two or more rules can fire, we have a conflict: Which one goes first?
Now conflict resolution comes into play: Several strategies exist, for example:
- Specificity: The more specific rule fire first, that's the one with more conditions.
- Recency: The timestamps of the matching facts determine execution order. The newer the facts the earlier the corresponding rule shall fire.
- Priority: Let users assign priorities (also known as salience) to rules. Makes rulebases much more complex, as users explicitly have to care for priorities.
"D"
Drools
Original project name of the rule-engine that is now called "JBoss-Drools".
DSL
Domain-Specific-Language. In context of (business) rules: Define your own concrete syntax for rules, let the rule-engine convert this to its internal representation. JBoss-Drools allows one to define her own syntax for rules.
"F"
Fact
Forward-Chaining
"J"
JBR
JBoss Drools, formerly known as Drools or JBoss-Rules. As I base many examples on this open-source rule engine, I invented this abbreviation.
JESS
Java Expert System Shell. Java-version of CLIPS, with similar syntax.
"L"
LEAPS
LHS
Left-Hand-Side. Condition part of rules.
"O"
OPS5
Official Production Systems" (OPS) developed at Carnegie Mellon University by Dr. Allen Newell. OPS5 was the first production system language based on the Rete Algorithm.
"P"
Prolog
"R"
RBS
Rule-Based-System. Any software system which uses a rule-engine.
Recognize-Act Cycle
The fundamental execution-cycle of any (serious!) rule-engine: Recognize matching rules first, act afterwards.
You find some more detail here (external link).
RETE
RHS
Right-Hand-Side. Consequence part of rules, which is executed if all conditions on LHS are met AND the appropriate rule is scheduled by the rule-engine to fire.
"S"
Salience
Priority of a rule, used in JBR. See conflict-resolution
Select-Match-Act (SMA)
See the Recognize-Act-Cycle

