税务表单顾问应用开发全解析
1. 系统模板的确定
在开发税务表单顾问应用时,首先要确定系统所需的模板。以下是一些可能的模板及其含义:
- deduction :减少应纳税所得额的方式。
- credit :减轻税收负担的方式。
- dependent :用户照顾的人。
- question :系统可能向用户提出的问题。
- answer :用户给出的答案。
- recommendation :系统推荐特定表单的提示。
这些模板是系统的候选组成部分。大部分事实代表物理或概念对象,为了表示对象及其属性,可以使用无序事实,通过 deftemplate
声明多个插槽,每个插槽对应一个属性。
例如,用户模板可以这样定义:
(deftemplate user
(slot income)
(slot dependents))
不过,需要注意默认插槽值的问题。Jess的数学函数在传入非数字参数时会抛出异常。空插槽的值为 nil
,若在规则左侧使用数学函数匹配空插槽,会在模式匹配时抛出异常。因此,对于需要存储数字值的插槽,应添加数字默认值,修改后的用户模板如下: