Я увеличиваю переменную внутри объекта клипов на некоторое число в RHS.
Правило работает, но входит в бесконечный цикл.
Я попытался запустить его без изменения переменной внутри объекта, он входит в RHS один раз, но с изменением он входит в цикл.
(defrule modify
"modify"
(step 0)
?EA <- (object (is-a ALERT)
(ID ?RID&:(or(eq ?ID "R") (eq ?RID "Q")))
(TIME ?T)
)
=>
(bind ?time (send ?EA get-TIME))
(bind ?newTime (+ 86399 ?time))
(send ?EA put-TIME ?newTime)
(log_info (str-cat "old time is " ?time ", new time is " ?newTime "event time is " (send ?EA get-TIME)))
)
Я ожидаю, что журнал будет напечатан один раз, даже после изменения содержимого внутри объекта.
Спасибо.