IBM-ILOG JRules 开发-布署-实例-R4


(查看  4 的更大版本。)

这组步骤为 XOM 中的所有元素创建 BOM 条目,使用默认的语言表达来访问和设置每个 BOM 元素。 5 显示了 Rule Explorer 中的一些 BOM 元素和包。

5. Rule Explorer 中的 BOM 项目


默认的语言表达在大部分情况下已足够了。例如,为 EventCode  value 的设置和获取所生成的语言表达可在 BOM 编辑器中看到,只需双击 BOM 元素即可,如  6 中所示。

6. BOM 编辑器中的语言表达


(查看  6 的更大版本。)

扩展 BOM 并细化词汇表

规则词汇表是一组可用于准确定义一条业务规则的词汇。这些词汇是 BOM 的语言表达。我们常常需要增强 BOM,添加元素或方法来简化规则的编写。例如,Parameter  value 在输入模型中显示为一个字符串。为了将此值与规则中的数字值对比,我们定义在 BOM  Parameter 中定义了一个虚拟合成方法 getNumericValue,它从字符串提取一个双精度值并为它提供一种语言表达。这一步使我们能够编写如下这样的规则:

if the numeric value of this parameter is at least 15

then …

每个 BOM 元素需要最终映射回可执行的 XOM。对于没有相应的 XOM 实现的虚拟方法,此映射通过 BOM XOM 的映射来完成。在运行时,规则引擎分析规则集,使用 BOM XOM 的映射访问 XOM

7  BOM 编辑器中显示了虚拟方法。要定义此虚拟方法,在 BOM 编辑器中执行以下步骤:

1.     Name 设置为 getNumericValue

2.     Type 设置为 java.lang.Double

3.     Member Verbalization 区域,将 Navigation 设置为 {this} {numeric value}

4.     BOM to XOM Mapping 区域,输入以下代码:

        Double d = 0;

        try {

            d = Double.parseDouble(this.value);

        } catch (Exception e) { }

        return d;

7. 添加一个虚拟方法


(查看  7 的更大版本。)

除了虚拟方法,我们还添加了一些虚拟类来实现合成的对象。 8 突出显示了这些虚拟类。(参见 参考资料 获取更多细节。)

8. 实现合成对象的虚拟类


 

创建一个规则项目

从技术上讲,ccc-bom 项目也是一个可包含业务规则的规则项目。但是,我们建议将 BOM 放在它自己的项目中,将业务规则放在不同的项目中。此方法支持在未来将 BOM 重用于其他规则集。因此,我们使用新建规则项目向导来创建一个名为 ccc-rules 的独立规则项目。

9 描绘的一系列步骤可用于将规则项目创建为一个引用 ccc-bom 规则项目的标准规则项目。要创建规则项目,执行以下步骤:

1.    选择 File – New – Rule Project

2.    在打开的窗口中,选择 Standard Rule Project 作为模板并单击 Next

3.    在接下来的窗口中,指定 “ccc-rules” 作为项目名称并单击 Next

4.    选择 Rule Project Reference 中的 ccc-bom 并单击 Finish

9. 创建规则项目

以下文章点击率最高

Loading…

     

如果这文章对你有帮助,请扫左上角微信支付-支付宝,给于打赏,以助博客运营

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注