我怎样才能对每个事实只执行一次规则?
(defrule clean
?li<-(VISUAL::removedLine ?line)
?cr<-(point (x ?px) (y ?py &: (< ?py ?line)))
=>
(modify ?cr (x ?px) (y (+ 1 ?py))))
当我执行此规则并进行修改时,它将创建一个新点并为该新点执行规则。
例如:
point (x 1) (y 2)
执行规则
point (x 1) (y 3)
执行规则
point (x 1) (y4)
我只想让它执行一次,如下所示:
point (x 1) (y 2)
执行规则
point (x 1) (y 3)