Understand which API to use

Understand which API to use

 

What do you want to do?

Embed determinations inside another application

Create a custom interview client

Take action while rules are being processed

Change the format of returned data values

 

Embed determinations inside another application

If you want to make use of determinations within your application the best choices are the API to the Determinations Engine, or the Determinations Server.

The Determinations Engine API provides a direct programming solution for Java or C#, allowing you to quickly integrate determinations without the need to confirm to a service communication medium (like XML in the case of the Determinations Server). Accessing the Determinations Engine in this way is also very fast, because values can be got and set directly (again, without the need to communicate via XML).

The disadvantage of using the API for integration is that the engine can only provide determinations services within the virtual machine (Java or .NET for C#) of the application; it is not able to act as a service. Additionally, even though the engine is fast and efficient, it will be difficult to scale as the demand for determinations increases, as it must continue to exist within the virtual machine of your application.

Currently the Determinations Engine only supports Java and C# (for .NET).

Oracle Determinations Server provides a way to make use of determinations within your application by accessing them as a service. Communication with the Determinations Server is done though SOAP/XML over HTTP protocol. This allows many different applications to include determinations, although this will incur a communications overhead, which is necessarily less efficient than direct integration via the Determinations Engine API.

Because the Determinations Server communication is done through XML over HTTP, any application can use this service, regardless of the language it was written in, as long as it can process XML and use the HTTP protocol.

Also, using the Determinations Server allows you to centrally control, update and administer the rules and rulebases deployed as well as allowing for simple scalability through clustering and load balancing across multiple Determinations Servers.

Key attributes for Engine API vs Determinations Server.

Determination Engine API (direct integration)
Determination Server (determinations as a service)

 

For more information on using the Engine API or the Determinations Server, see the documentation for Oracle Policy Automation Java or .NET.

Create a custom interview client

For a description of the process involved in creating a custom interview client, go to the topic, Create a custom interview user experience. For further guidance refer to the API documentation in the Help subdirectory of your Oracle Policy Automation installation (this should be your primary source of information when performing customization).

Take action while rules are being processed

Events are fired by the triggering of an event rule. They are typically used for informing the rule-based application that something important has happened that might require action.

A common use for events is checking values entered by a user. A rule could be written that tests if the applicant's date of birth is after today's date, and if so triggers an event describing the error.

Change the format of returned data values

The Oracle Determinations Engine provides the capability to load the custom function and custom formatters directly into the session itself, thereby creating a unified configuration method for all client applications including the:

 

Go to the Rulebase configuration file  topic for details on how configure the Oracle Determinations Engine to load these custom components. Note that Web Determinations for Java requires custom formatters and custom functions to be configured via its unique configuration method.