我正在设计一个简单的规则引擎。让我从概述开始。
引擎使用配置文件初始化,该配置文件指定要运行的规则以及这些规则打算使用的参数。
例子:
我有一个传入的订单对象,我想对其进行一些完整性检查,例如订单数量不能大于某个数量 X(x 作为参数传递给引擎。)这是一个参数的简单示例通过了。
一个复杂的例子:
一些订单类型.一些地区.一些办公桌.订单数量 = X
一些订单类型.一些地区.一些柜台.一些交易者.数量 = y。
一些订单类型.一些地区.一些产品.每日交易量 = A
一些订单类型.一些地区.一些办公桌.每日交易量 = B
很多像这样的参数用于初始化引擎,这些参数打算被规则使用。
问题:
这些初始化参数应该如何传递给 API?——JSON、XML ???
表示、处理和存储这些参数的最佳软件设计实践是什么,以便规则可以使用这些信息(比如交易者组允许的数量是多少?对传入的订单对象进行完整性检查)
我打算在 C++ 中实现它
提前致谢