Rule engine Application Programming Interface (API)
The rule engine API controls the interaction between the rule engine, rules, and the application objects.
The rule engine Application Programming Interface (API) manages rulesets using a set of class libraries. The rule engine class defines the methods and fields to which the rules have access. The API controls the interaction between the rule engine, rules, and the application objects.
The deployment artifact for the rule engine is the ruleset archive. The engine provides the API to load an archive in an IlrRuleset.

Rule engine classes
In Decision Server, the rule engine is a Java™ object, an instance of the IlrContext class. This class contains all the methods required to control the rule engine.
An IlrContext object is always attached to an IlrRuleset object. The IlrContext class has two constructors: IlrContext (IlrRuleset ruleset) or IlrContext(). If you use the second constructor (no ruleset argument), the IlrContext instance creates its own ruleset. The IlrRuleset class manages the rules inside the ruleset archive.
An IlrContext object associates a ruleset with application objects and implements the rule engine which controls the relationship between the rule part of the application and the application data. An application can contain several rule engine objects, as direct instances of the IlrContext class or instances of derived classes.
A Rule Designer rule is also a Java object, an instance of the IlrRule class. You can use the IlrRule class to obtain information about a particular rule in the archive. It is always attached to a rule engine object.
Rule engine packages
The Decision Server class library consists of packages that contain classes for different components such as EJB integration, business rule language support, and database support. The package ilog.rules.engine contains the classes IlrRuleset, IlrContext, and IlrRule.
To implement rule engine objects, you use primarily the classes IlrRuleset and IlrContext. Rule Designer rules are instances of the IlrRule class.
To facilitate the parsing of rulesets to your application, Decision Server provides an interface to each ruleset. The interface describes the input parameters required to call the ruleset and the output parameters that are returned by its execution. The interface is saved as a ruleset signature file that contains a description of the ruleset parameters. Using the interface, you can generate a component that implements this signature. The ruleset signature is stored inside a ruleset archive: IlrRulesetArchive. The IlrRulesetParameter class indicates whether the parameter is an in, out, or inout parameter.