0

CLIPS (6.3) には次の deftemplates があります。

(deftemplate A ( slot a ) (slot b) )
(deftemplate forSearch (slot property)(slot value))

入力からペアを読み取り、スロットの値が で(property, value)ある事実を見つける必要があります。Apropertyvalue

私がこのようなことをすると:

(defrule r2
(forSearch (property ?c)(value ?d))
(A (?c ?d))
=>
(printout t "debug" crlf)
)

次のエラーが表示されます。

[PRNTUTIL2] Syntax Error:  Check appropriate syntax for deftemplate patterns.

ERROR:
(defrule MAIN::r2
   (forSearch (property ?c) (value ?d))
   (A (?c

私は今どうすればいい?

4

1 に答える 1

0

ルールのパターン マッチング部分のスロット名に書き込む必要があります。

正しいシンタックスは次のとおりです。

(defrule r2
     (forSearch (property ?c)(value ?d))
     (A (a ?c) (b ?d))
     =>
     (printout t "debug" crlf)
)

あなたが何を達成したいのか理解できません。遅れていることは承知していますが、お役に立てば幸いです。

于 2013-04-06T10:33:04.823 に答える