知识库操作
先说个小伎俩。
在VIP中打开geni.prj,菜单选Options,打开Application Expert,点击Other Options,
点击Project Directories,点击Output,在Final文本框填入d:\Apache2.2\htdocs\GENI
这个目录是GENI虚拟主机所在之处。
这样做的目的,是编译后geni.exe会自动存入上述目录,省去了人工搬运的麻烦。
开始今天的话题,进行知识库操作。
下一步是执行GOAL段的子句consult_kb(ParmList,ParmList1)。
这个子句的流模式是(i,o),也就是说,ParmList已被约束,
值为[parm("knowledgebase","animal")],
而ParmList1是自由变量,未被约束,值为空。
子句consult_kb(ParmList,ParmList1)比较简单直观。
consult_kb([parm("knowledgebase",KB)|Rest],Rest):- assert(kb(KB)), filenameext(Name,KB,".gni"), syspath(ExeStartupPath,_ProgName), filenamepath(FullName,ExeStartupPath,Name), consult(FullName,geni),!. consult_kb(_,[]):- errorexit.
稍作解释。