Predefined ruleset and RuleApp properties

Using some ruleset or RuleApp properties, Decision Warehouse captures and stores execution trace data.

Ruleset properties apply to individual rulesets. You can set ruleset properties or RuleApp properties in one of the following ways:

Ruleset properties

Restriction: You cannot rename ruleset properties. Instead, you must remove the property and create a new one.

The following table provides the list of predefined ruleset properties.

Table 1. Predefined ruleset properties
Name Valid values Default value Description Classic rule engine only
ilog.rules.engine.cacheRuleflowData true, false false Use this property when you execute the ruleset in loops. When you set its value to true, the data generated for a rule flow task is kept in memory from one execution to another. Yes
ilog.rules.engine.hasherGeneration true, false false You can use this property only if the ruleset property ruleset.optimization.enabled is set to true. Yes
ilog.rules.engine.rete5Task true, false false This property replaces the default algorithm with the JRules 5.1 Rete algorithm for every task in the ruleset. Yes
ilog.rules.engine.useJIT true, false false This property defines the activation of the dynamic rule compilation. To apply Just-In-Time compilation, you must set the value of this property to true. Yes
ilog.rules.engine.useStaticAgenda true, false false To use static optimization of the agenda, you must set the value of this property to true. Yes
ilog.rules.engine.useReteSharing true, false false This property defines the activation of the property flag that controls sharing in the RetePlus execution mode. Yes
ilog.rules.engine.wmModifiedByCode true, false false You can use this property only if the ruleset property ruleset.optimization.enabled is set to true. Yes
ilog.rules.teamserver.baseline A string from Decision Center   This property contains the Decision Center baseline name if the ruleset is deployed from Decision Center. No
ilog.rules.teamserver.permalink.project A URL as a string   This property contains the URL to access to the Decision Center project that contains the deployed rules. No
ilog.rules.teamserver.permalink.report A URL as a string   This property contains the URL to access to the Decision Center report. No
monitoring.enabled true, false false Set this ruleset property to true to enable monitoring of ruleset execution for Decision Warehouse. For more information, see Viewing and managing rulesets. No
monitoring.filters

A comma-separated list of strings of filters set to true or false: FILTER_NAME=<value>, FILTER_NAME2=<value>, ...

Example: INFO_TOTAL_RULES_FIRED=TRUE, INFO_TOTAL_TASKS_EXECUTED =TRUE, INFO_EXECUTION_EVENTS=TRUE

  Use this property to select what is stored within a ruleset execution trace for Decision Warehouse. For more information, see Monitoring ruleset execution. No
monitoring.inout.filters A comma-separated list of class names: ClassName1,className2, ...   The valid value is a string to filter the contents of serialized in/out parameters. Use this property to select what is stored within a ruleset execution trace for Decision Warehouse. The class name or attributes in this list are not traced in Decision Warehouse. For more information, see Monitoring ruleset execution. No
ruleset.bom.enabled true, false true
This property enables BOM-based execution features for rulesets.
  • BOM serialization of input and output parameters for storage in Decision Warehouse
  • Execution using BOM-serialized input and output parameters

For more information, see Setting ruleset monitoring options and Testing ruleset execution.

No
ruleset.managedxom.uris

A comma-separated list of URIs. For example:

resuri://common-classes.jar/1.0,resuri://LoanValidation.jar

No default value

This ruleset property controls Java™ XOM management. It locates the Java XOM resources for the ruleset.

  • If you do not set this property and the ruleset uses a Java XOM, the Java classes are loaded by the application class loader.
  • If you set this property (as a list of URIs) for a ruleset, the execution unit (XU) creates and stores a dedicated class loader for the execution of the ruleset. Each URI must target a Java Archive .jar file or a .zip archive of classes and resources for Java execution.

Only internal URIs are supported: resuri and reslib protocol

No
ruleset.maxIdleTime

Three possible values:

  • -1 or undefined: the ruleset is removed from the cache, depending on its usage by the JCA Connection Pool.
  • =>0: the ruleset is removed from the cache after the timeout (in seconds) is reached and no SPI connections reference it any more.
  • 0: the ruleset is never removed from the cache except if the ruleset is redeployed.
 

This property enforces the ruleset pool policy on a ruleset. A ruleset stays in memory until the maximum idle time (in seconds) has reached the specified value set for this property. To avoid ruleset reparsing, you can use the special value of 0 to ensure that the ruleset is never released from memory.

Attention: Use the 0 value with caution as it might introduce a significant memory leak if the ruleset is not used any more.
No
ruleset.sequential.trace.enabled true, false false

This property enables or disables the rule engine trace mode for sequential processing.

Set this ruleset property to true to enable monitoring of ruleset execution for Decision Warehouse. This property applies to rulesets that contain tasks for which the sequential or Fastpath execution mode has been selected.

No (always activated for decision engine archives)
ruleset.sequential.trace.tasks A comma-separated list of task names   This property enables trace for that set of tasks. Yes
ruleset.shareable true, false   This property specifies whether the ruleset instance can be shared. Yes
ruleset.trace.enabled true, false   This property enables or disables the rule engine trace mode. No
ruleset.optimization.enabled true, false   When this value is set to true, the optimize(IlrRulesetOptimConfig config) method is called on each ruleset to execute the automatic optimization in the engine. Yes
ruleset.xmlDocumentDriverPool.maxSize >=0 1

The 0 value means that an XMLDocumentDriver instance is created for each XMLObject transformation.

Use a strictly positive value to specify the maximum size of the IlrXMLDocumentDriver pool, that is, the maximum number of used and unused IlrXMLDocumentDriver objects per ruleset.

No
ruleset.xmlDocumentDriverPool.reserveTimeout >=0   This property specifies the number of milliseconds after which the call to reserve an IlrXMLDocumentDriver instance times out. No

RuleApp properties

RuleApp properties apply to individual RuleApp. The following table lists the predefined RuleApp properties.
Table 2. Predefined RuleApp properties
Name Description
ruleapp.interceptor.classname The full name of the ruleset execution interceptor to be used
ruleapp.interceptor.description A description of the ruleset execution interceptor class