질문에 중요한 정보가 누락 된 것 같습니다. 게시 한 코드 스 니펫이 올바르게로드되었습니다. FamilyTree deftemplate을 추가하면 설명 된 오류가 발생합니다. 규칙에 deftemplate 사실을 사용하는 경우 슬롯 이름을 지정해야하는 사실을 탈피하기위한 구문을 사용해야합니다.
CLIPS> (clear)
CLIPS>
(defrule Family
(FamilyTree ?L-name ?F-name)
=>
(assert(FamilyTree ?L-name ?F-name(read))
(printout t ?L-name "is parent of" ?F-name crlf)))
CLIPS> (clear)
CLIPS> (deftemplate FamilyTree (slot last-name) (slot first-name))
CLIPS>
(defrule Family
(FamilyTree ?L-name ?F-name)
=>
(assert(FamilyTree ?L-name ?F-name(read))
(printout t ?L-name "is parent of" ?F-name crlf)))
[PRNTUTIL2] Syntax Error: Check appropriate syntax for deftemplate patterns.
ERROR:
(defrule MAIN::Family
(FamilyTree ?L-name
CLIPS>
정확한 오류를 포함해야합니다. – stevesliva
[PRNTUTIL2] 구문 오류 : 패턴 탈형에 적합한 구문을 확인하십시오. – Rana
(Assert (FamilyTree? L-name? F-name (read)) 뒤에 괄호가 누락 되었습니까? – Evans