如何删除 CLIPS 中的一个事实?事实将由一个人输入并与存在的基础进行比较,它会删除。
我试过这样:
(defrule Deleting::ruleDeleteOneSynSoftgoal "This rule delete one synsoftagoal found in the basis of fact."
(declare (salience 42))
(printout t "Enter below the two softgoals field that want to be deleting:" crlf crlf
"the synonyms of the <[TYPE]QUALITY ATTRIBUTE> and the <[TOPIC]SUBJECT/OBJECT LAL> need to be entered one per line." crlf crlf)
(bind ?dsyntype (readline))
(bind ?dsyntopic (readline))
?fact3 <- (synSoftgoal
(ttId ?ttId3)
(syntopic ?syntopic3)
(syntype ?syntype3)
)
(test (and (eq ?dsyntopic ?syntopic3) (eq ?dsyntype ?syntype3)))
=>
(retract ?fact3
)
但是,它显示了这个错误:
[PRNTUTIL2] Syntax Error: Check appropriate syntax for defrule.
ERROR:
(defrule Deleting::ruleDeleteOneSynSoftgoal "This rule delete one synsoftagoal found in the basis of fact."
(declare (salience 42))
(printout t "Enter below the two softgoals field that want to be deleting:" crlf crlf "the synonyms of the <[TYPE]QUALITY ATTRIBUTE> and the <[TOPIC]SUBJECT/OBJECT LAL> need to be entered one per line." crlf crlf)
(bind ?dsyntype (
你能帮助我吗?