| ILOG JRules User Guide > Integrating Application Data > Getting Started > Overview: Integrating Application Data into the XOM |
Overview: Integrating Application Data into the XOM |
PREVIOUS NEXT |
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.
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:
IlrReflect to manage the XOM.
| 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.
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.
| Copyright © 1987-2008 ILOG S.A. All rights reserved. Legal terms. Documentation homepage. | PREVIOUS NEXT |