Default rules engine integration
Integration with IBM® Operational Decision Manager (ODM) is provided as the default rules engine.
The rules engine integration leverages the XU (Execution Unit) Adapter for ODM. The XU Adapter is a resource adapter packaged with IBM Operational Decision Manager.
Important: Appropriate licensing is required for ODM and
the XU Adapter.

The External Rules Framework interacts with the Operational Decision Manager rules through a standardized interface, com.dwl.base.rules.RuleEngine.
JRulesXUEngine is the implementation of the RuleEngine interface.
This adapter enables InfoSphere® MDM to
run Operational Decision Manager rules that are deployed in the Rule
Execution Server (RES). JRulesXUEngine adapter also implements an
additional interface called ODMBOMAdapter through which the rule input
and output data are populated.
- The JRulesXUEngine adapter passes an ArrayList object as an input to the Operational Decision Manager rules. This ArrayList object will contain all rule inputs, such as the fact object.
- The populateODMInputParameters() method will set this ArrayList
to the rule input parameters using the key
MDMFact. The rule will receive this input with the same key ("MDMFact") and type ("ArrayList"). - The populateODMOutputParameters() method will set the rule outputs to the MDM Object, such as the fact object.
- If a user wants to customize the default nature of populating the rule input and output, they can do so by extending JRulesXUEngine class as a CustomJRulesXUEngine and overriding the two ODMBOMAdapter methods.
The rule engine implementation used by the External Rules Framework may be replaced if desired. That is, the Operational Decision Manager XU engine may be replaced with another rules engine as long as an adapter class for the replacement rules engine is created and implements the generalized Rules Engine interface.