83.3. 规则的激活组

分组是一组由同一 激活分组规则属性绑定到一起 的一组规则。在该组中,只能执行一条规则。在满足该组中的规则后,来自该激活组中的所有其他待处理规则执行都将从日程表中删除。

例如,以下 DRL 规则属于指定的激活组,按照所示的顺序列在决策引擎堆栈中:

银行 DRL 规则示例

rule "Print balance for AccountPeriod1"
  activation-group "report"
when
  ap : AccountPeriod1()
  acc : Account()
then
  System.out.println( acc.accountNo +
                      " : " + acc.balance );
end

rule "Print balance for AccountPeriod2"
  activation-group "report"
when
  ap : AccountPeriod2()
  acc : Account()
then
  System.out.println( acc.accountNo +
                      " : " + acc.balance );
end

在本例中,如果执行 "报告" 激活组中的第一条规则,则组中的第二条规则以及日程上的所有其他可执行规则均从日程表中删除。