Jess规则编写与管理全解析
1. Jess规则基础操作
在Jess中,我们可以进行一系列基础操作来定义和执行规则。以下是一些示例代码:
Jess> (clear)
TRUE
Jess> (do-backward-chaining item-number)
TRUE
Jess> (do-backward-chaining price)
TRUE
Jess> (defrule price-check
(do-price-check ?name)
(price ?name ?price)
=>
(printout t "Price of " ?name " is " ?price crlf))
TRUE
Jess> (defrule find-price
(need-price ?name ?)
(item-number ?name ?number)
=>
(bind ?price (fetch-price-from-database ?number))
(assert (price ?name ?price)))
TRUE
Jess> (defrule find-item-number
(need-item-number ?name ?)
=>
(bind ?number (fetch-number-from-database ?name))
(assert (item-number ?name ?number)))
TRUE
Je