Integrate Web Determinations with another application

What do you want to do?

Initialize an interview with data from an outside source

Pass interview data, conclusions and decision reports to an external application

Use an external data store for Web Determinations resources

 

Integration with another application will most likely involve use of the Oracle Web Determinations Data Adaptor plugin which allows the current Web Determinations Session to use an arbitrary data source for loading and saving session data.

 

If you wish to incorporate events into the process, then refer to the Events and Event Handlers topic for information on events, platform events and implementing event handlers.

Initialize an interview with data from an outside source

You can initialize an interview by pre-seeding it with data from an outside source in instances where:

 

To enable pre-seeding, do the following:

  1. Create the Data Adaptor for the Web Determinations web application that is to run the pre-seeded interview.
  2. Proceed to the Web Determinations interview via a constructed link that defines the Case ID for the user; this case ID is then used by the Data Adapter to retrieve the necessary data from the external data source.
  3. Commence the Web Determinations interview with the pre-seeded data.

 

The URL that will direct the user to the pre-seeded interview allows the client system to specify a Case ID that the Data Adaptor will use to retrieve data from the external datasource.  The URL format is:

http://<webserver address>/<web determinations web app name>/startsession/<rulebase name>/<locale ID>?caseID=<caseID#>&user=guest

 

The client system needs the following information in order to construct the URL:

 

To build the Data Adaptor that will load the data from the datasource to the target rulebase you first need to determine what data is to be extracted from the datasource, and how it will map to the rulebase as instance data. 

Pass interview data, conclusions and decision reports to an external application

In the event of the data being inferenced from a Web Determinations interview session needing to be saved to an external data source, you must first take the following action in order to determine what action will be taken to save the data:

 

A Data Adaptor needs to be developed for the client system so that when the 'save' action is issued, the custom-developed Data Adaptor will persist the specific Web Determinations interview session data into the external datasource. 

This scenario also has variations/extensions, which are:

 

Note that when calling the Data Adaptor save, only the Case ID and interview session data is passed in. 

Auto-saving data during a Web Determinations interview

Auto-saving data during a Web Determinations interview can be driven by Event Handler plugins. 

Auto-saving will use the 'save' capability of the loaded Data Adaptor. To persist Web Determinations interview data into an external datasource see "Saving data from a Web Determinations Interview to an external data source"

Below are common triggers for auto-save, and the Event to use:

 

More complex scenarios can combine the above so that, for example, auto-save per screen is performed and also when the goal is reached.

Because Case ID and interview session data is the only data passed through to the Data Adaptor, design of the Event Handler and Data Adaptor must take this into account. This means that the Data Adaptor must be able to operate based on information available in the Interview Session data passed - i.e. the Event Handler cannot tell the Data Adaptor if the save is for a completed screen, or a completed goal.

With this design restriction, the Data Adaptor needs to be able to persist the data based on the actual instance value together with the rulebase model data.

Use an external data store for Web Determinations resources

There are situations where rulebases of an Oracle Web Determinations implementation need to be stored and accessed from a custom datasource. The Rulebase Service Plug-in is an Interview Engine plugin that allows usage of custom datasources to store and retrieve rulebases from. Also it lets the implementer customize the rulebase service functionality. For information on how to create a Rulebase Service plug-in, go to the topic Create a Rulebase Service.