0

我有一个包含 JESS 中的多槽的 deftemplate,如果触发规则,我想删除多槽中的一个变量。例如:

(deftemplate Person (slot name)
                    (multislot friends))
(assert (Person (name John)(friends Jimmy Joe Jessica)))

现在我想从朋友槽中删除 Jimmy。

非常感谢阿里

4

1 回答 1

1

我已经修复了您问题中的一些遗漏,假设模板名称是Person.

此规则将 Jimmy 从所有friendsPerson 中删除。

(defrule KillJimmy
    ?p <- (Person (friends $?a Jimmy $?b))
=>
    (modify ?p (friends (create$ $?a $?b)))
)
于 2014-10-28T17:49:29.347 回答