ILOG JRules User Guide > Integrating Application Data > Getting Started > Overview: Integrating Application Data into the XOM

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

In JRules, a XOM can be generated from native Java classes, or from dynamic classes, derived from XML Schema Definitions (XSDs) and/or Web Service Description Language (WSDL) files. We use the word dynamic because no native Java object is constructed or generated. Instead, dynamic XML objects are created to represent the instances of the dynamic classes.

When looking for a XOM class, the rule engine 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.

images/overview_xom.png

The XOM is represented by the Java class IlrReflect. An instance of this class contains all the classes required for executing IRL rules.

The rule engine accesses XML and WSDL data directly. It does this in two stages:

Note
The use of WSDL files in the XOM is now deprecated. We recommend you use the JAX-WS API instead.

IlrReflect provides the following services:

Rules can thus run directly on dynamic data without the data being converted to Java objects.

For native Java classes, the rule engine uses Java type introspection to apply rules directly to the application objects.

The following diagram shows how the rule engine reads XML schemas and WSDL files directly, through an XML driver.

images/overview_xom2.png

You can define a dynamic XOM in the New Rule Project wizard when you create a new rule project, or add it later using the Rule Project Properties dialog.

Related Concepts

Execution Object Model (XOM)
XML Binding
Web Service Binding
Third Party Data Access

Related Tasks

Using the XML Binding API
Using the Dynamic XOM API

Related Reference

Mapping Between XML Schema and Dynamic Classes
Mapping Between Web Service Data and Dynamic Classes

Related Samples and Tutorials

How to Run Rules Against XML Objects