1

このエラーが発生しています:

[OBJRTBLD2] 既存のクラスのオブジェクトは、オブジェクト パターンの is-a 制限を満たすことができません。

次のルールを実行すると:

(defrule update_input "Updateinput1" 
(object (is-a Shmeio) 
(timh ?eis1) 
(onoma "Eisodos 1"))
 => 
(printout t "htane: " ?eis1))

私のコードは次のとおりです。

(defclass Shmeio
(is-a USER)
(role abstract)
(single-slot timh
(type INTEGER)
;+   (cardinality 1 1)
(create-accessor read-write))
(single-slot onoma
(type STRING)
;+   (cardinality 1 1)
(create-accessor read-write))
(multislot input_at
(type INSTANCE)
(allowed-classes Eksartima)
(create-accessor read-write)))
(defclass Shmeio_Eisodou
(is-a Shmeio)
(role concrete))

(definstances facts
; ...............
([Kuklomata_Class10] of Shmeio_Eisodou
(input_at [Kuklomata_Class74])
(onoma "Eisodos 1")
(timh 21))
([Kuklomata_Class36] of Shmeio_Eisodou
(input_at [Kuklomata_Class76])
(onoma "Eisodos 2")
(timh 28))
([Kuklomata_Class45] of Shmeio_Eisodou
(input_at [Kuklomata_Class77])
(onoma "Eisodos 3")
(timh 13))
([Kuklomata_Class54] of Shmeio_Eisodou
(input_at [Kuklomata_Class77])
(onoma "Eisodos 4")
(timh 25))

誰でも私を助けることができますか?私は今何時間も立ち往生しているからです。

4

1 に答える 1