Overview: Dynamic execution object model (XOM)

The dynamic execution object model (XOM) can be generated from native Java™ classes or from XML data. The rule engine accesses XML directly.

The execution object model (XOM) is an object model against which rules are run. Business rules are written against the Business Object Model (BOM), and then translated into the ILOG® Rule Language (IRL) and run against the XOM. The rule engine evaluates the rules against the application objects and runs them when appropriate.

In Decision Server, a XOM can be generated from native Java classes or from dynamic classes, or derived from XML schema definitions (XSDs). The word dynamic means that no native Java object is constructed or generated. Instead, dynamic XML objects are created to represent the instances of the dynamic classes.
  • A XOM generated from native Java classes is known as a Java XOM.
  • A XOM generated from dynamic classes is known as a Dynamic XOM.

When the rule engine looks for XOM classes, it looks first in the dynamic XOM, then in the Java XOM.

The following diagram shows the mapping between a XOM and Java classes and dynamic classes.

Mapping between a XOM and classes