首页 > 解决方案 > 在剪辑中调用另一个规则

问题描述

我想知道是否有可能从另一条规则的 RHS 中触发一条规则。例如,

rule 1:
(defrule printHello
=>
(printout t " Hello World" crlf ))

rule 2:
(defrule printName
=> 
/* tigger rule 1 */)

标签: rulesrule-engineclips

解决方案


专家系统是知识表示引擎。他们使用知识(静态和动态)来表示他们的内部状态。在 CLIPS 中,动态知识用事实来表示。

您可以为此使用自定义的专用事实。

(defrule printHello
  (print hello)
=>
  (printout t " Hello World" crlf))

(defrule printName
=>
  (assert (print hello)))
  

推荐阅读