规则类型¶
规则集¶
规则集(.rs.xml)是最基础的规则类型,包含多条 if-then-else 规则。
适用场景:简单的条件判断和赋值逻辑。
如果 FlightInfo.passenger_count > 200 AND FlightInfo.is_international
那么 GateResult.gate_type = "近机位"; GateResult.reason = "国际航班优先"
支持两种编辑方式:
- 向导式 — 通过表单逐项配置条件和动作
- REA 文本编辑器 — 用表达式语法直接编写,效率更高(参考 REA 表达式)
决策表¶
决策表(.dt.xml)以矩阵形式组织规则,行是条件组合,列是输出。
适用场景:条件组合较多、需要直观对比的场景。
| 航班类型 | 旅客数 | 机位类型 | 原因 |
|---|---|---|---|
| 国际 | > 200 | 近机位 | 大客流国际航班 |
| 国际 | ≤ 200 | 近机位 | 国际航班优先 |
| 国内 | > 300 | 近机位 | 超大客流 |
| 国内 | ≤ 300 | 远机位 | 普通国内航班 |
决策树¶
决策树(.dtree.xml)以树形结构组织条件分支。
适用场景:条件有明显的层级关系,先判断大类再细分。
决策流¶
决策流(.rl.xml)通过可视化流程图编排多个规则节点。
适用场景:复杂业务逻辑需要多个规则协作,按顺序或条件分支执行。
决策流是最常用的对外调用方式,通过 /process/{project}/{packageId}/{flowId} 接口触发。
评分卡¶
评分卡(.sc)用于评分模型,每个条件对应一个分值,最终汇总得分。
适用场景:信用评分、风险评估等需要加权打分的场景。
脚本决策表¶
脚本决策表(.dts.xml)在决策表基础上支持脚本表达式,适合需要计算逻辑的场景。