Jess在Web与Java应用中的应用指南
1. Jess在Web中的应用
1.1 查询中的变量声明
查询可以包含变量声明,变量声明会列出查询的参数。提供给 run-query 函数的参数会绑定到模式中同名的变量,这样就能在运行时指定查询模式应匹配的具体值。例如,列出订单中所有项目的查询:
(defquery items-for-order
(declare (variables ?order))
(line-item (order-number ?order) (part-number ?part))
(product (part-number ?part)))
该查询返回的每个匹配项都包含一个项目编号事实和相关的产品事实,这些信息可用于计算订单总价、打印发货清单等。类似的, recommendations-for-order 查询如下:
(defquery recommendations-for-order
(declare (variables ?order))
(recommend (order-number ?order) (part-number ?part))
(product (part-number ?part)))
此查询列出与给定订单相关的所有推荐。在这两个查询中, ?part 是内部变量,仅用于在查询模式中进
超级会员免费看
订阅专栏 解锁全文
70

被折叠的 条评论
为什么被折叠?



