Data Service (v12.2.18)

The data services a web service connector provides allow SOAP requests for seeding and submitting data to be sent from a determinations server. Requests include name of tables, attribute and links to request data for, attachments and audit reports. Responses from the web service connector include data which is used to define existing links and populate values of attributes of tables.

 

WSDL

Download the Current Version of the Web Service Connector WSDL

Namespaces

http://xmlns.oracle.com/connector/webservice/12.2.13/data/types

http://xmlns.oracle.com/policyautomation/hub/12.2.18/metadata/types

Actions

Load, Save, SetCheckpoint, GetCheckpoint, ExecuteQuery

Headers

Security

Load

This action is sent at the start of an interview to request data for each of the tables, links and attributes which were mapped to in a policy model. The response returned by the web service connector is expected to contain values for each of the requested items.

The web service will receive a SOAPAction of Load with a security header (if the connection was configured with a username and password) with information about the policy model such as the global input table, localization information, tables, links and attributes which were mapped, and any additional parameters that may have been specified by the start session url. The response must not contain any tables, links or fields which were listed in the request, or the interview will fail to start and the error will be logged.

Request

Parameter Type Description
root xsd:string The name of the table which was mapped to Global input. (optional)
region xsd:string The deployment's region code. The connector may need to utilize this information if it is responsible for formatting currency, dates or other values to a field designated as a STRING field. Values passed as DECIMAL, DATE, DATETIME or TIMEOFDAY will be formatted in the interview according to the settings of the policy model. (see Localization – Region)
language xsd:string The deployment's language code. Useful if the connector is responsible for returning data in different languages, i.e. string values for fields which were described by the metadata as STRING data types.
timezone xsd:string The timezone attribute is the Timezone as specified in the deployment. This affects all Date and Time Policy Modeling attributes as the value mapped out will carry this Timezone value. Any Date and Time values in the response must already be converted to the project's Timezone.
request-context RequestContext This element contains additional parameters specified on the start session url. See Data Integration.
tables SeedDataDescription An element containing a list of Tables for the request. (optional)

Response

Parameter Type Description
user-role UserRoleType The role of the user that initiated the interview. If the user has multiple roles, the value must define the role the user is acting in for the interview session. (optional)
user-id xsd:string The unique identifier for the user that initiated the interview. The same unique value must be returned for every interview session initiated by the same user. (optional)
tables LoadData An element containing the list of Tables retrieved by the request.

Errors

If the response of a Load action contains unexpected values or structure will be logged. Depending on the severity of the issue, the interview may fail to start, be aware that an interview that starts did not necessarily start without errors.

If an error is raised by the web service connector, the body of the response may instead consist of a RequestFault. This defined fault structure allows the Hub log to display the error in a cleaner format, as opposed to a stack trace.

Save

The Save action may be called during an interview with a defined Global output table. The request will include data for tables, links and fields which were mapped for output on, as well as any audit reports. The response looks similar to a Load response because some attributes are populated with data only after a Submit occurs.

Rows that were loaded in at the start that are included in the Save response will have action="update", but rows that did not exist will have action="create".

When the Load response contains the expected Global table, but the Global table has no rows, it will be logged in the Message logs, but the interview will proceed anyway. If the web service connector developer wants to prevent this, they should make sure to validate that a Global row exists otherwise throw a RequestFault.

Request

A save-request.

Parameter Type Description
root xsd:string The name of the table which was mapped to Global output.
region xsd:string The deployment's region code. The connector may need to utilize this information if it is responsible for formatting currency, dates or other values to a field designated as a STRING field. Values passed as DECIMAL, DATE, DATETIME or TIMEOFDAY will be formatted in the interview according to the settings of the policy model. (see Localization – Region)
language xsd:string The deployment's language code. Useful if the connector is responsible for returning data in different languages, i.e. string values for fields which were described by the metadata as STRING data types.
timezone xsd:string The timezone attribute is the Timezone as specified in the deployment. This affects all Date and Time Policy Modeling attributes as the value mapped out will carry this Timezone value. Any Date and Time values in the response must already be converted to the project's Timezone.
request-context RequestContext This element contains additional parameters specified on the start session url. See Data integration.
tables SubmitData An element containing a list of Tables for the request.
audit-reports AuditReportList An element containing a list of AuditAttributeNodes.

Response

Parameter Type Description
tables UpdateData An element containing the list of tables of the response.

Errors

If the response of a Save action contains unexpected values or structure will be logged. Depending on the severity of the issue, the interview may fail to proceed after the Submit. Be aware that the interview may have continued if the errors were not blocking.

If an error is raised by the web service connector, the body of the response may instead consist of a RequestFault. This defined fault structure allows the Hub log to display the error in a cleaner format, as opposed to a stack trace.

SetCheckpoint

The SetCheckpoint action may be called during an interview to send the serialized session data (a checkpoint) to the web service connector, which is then responsible for storing the data. Later on, a GetCheckpoint request can be made which will expect to have the requested checkpoint data returned. If the web service connector is unable to store the session data for whatever reason, a RequestFault should be returned to explain the cause.

Request

Parameter Type Description
request-context RequestContext This element contains additional parameters specified on the start session URL See Data Integration.
checkpoint-data CheckpointData Checkpoint data (serialized interview session data) being sent to a web service connector.

Response

Parameter Type Description
checkpoint-id xsd-string The ID associated with the checkpoint data. If populated, this ID will be used in subsequent set checkpoint requests from this interview session. This is useful information for the web service connector to keep only one copy of a single interview session's data.

Errors

If the response of a SaveCheckpoint action contains unexpected values or structure will be logged.

If an error is raised by the web service connector, the body of the response may instead consist of a RequestFault. This defined fault structure allows the Hub log to display the error in a cleaner format, as opposed to a stack trace.

GetCheckpoint

The GetCheckpoint action may be called to retrieve checkpoint (serialized interview session) data. This data should have previously been stored as the result of a SetCheckpoint request and should be retrieved using the request parameters and (if used) an OAuth token. Once returned, if the deserialized session data matches the deployed policy model the session will be resumed. If the checkpoint data cannot be retrieved by the web service connector because it does not exist or any other reason, a RequestFault should be returned to explain the cause.

Request

Parameter Type Description
request-context RequestContext This element contains additional parameters specified on the resume session URL. See Data Integration.

Response

Parameter Type Description
checkpoint-data CheckpointData The checkpoint data associated with the request context parameters, and (if used) OAuth information. A checkpoint ID may be specified in the response so that subsequent set checkpoint actions maintain a single checkpoint for the interview.

Errors

If the response of a GetCheckpoint action contains unexpected values or structure will be logged.

If an error is raised by the web service connector, the body of the response may instead consist of a RequestFault. This defined fault structure allows the Hub log to display the error in a cleaner format, as opposed to a stack trace.

ExecuteQuery

The ExecuteQuery action is called to load data during an interview that matches the query parameters provided. The request comes in two parts:

  1. The query to be evaluated to determine which rows in the root table should be returned
  2. A description of the data being requested.

The format of both the requested data and the data in the response is the same as the Load action detailed above.

The response data should contain rows that have unique identifiers across all responses - if the same ID appears when a query gets re-evaluated then it will be treated as the same instance inside OPA, even if the fields returned are different. Similarly, if the same row is returned in a subsequent response, it should have the same ID as it did in any prior responses.

The sample below describes a query to load all rows from the Track table where the track's title contains the word "black" and whose price is less than or equal to $1.50. It also specifies that for each matching track, load their related ratings from the Rating table.

Request

Parameter Type Description
root xsd:string The name of the table being queried.
region xsd:string The deployment's region code. The connector may need to utilize this information if it is responsible for formatting currency, dates or other values to a field designated as a STRING field.
language xsd:string The deployment's language code. Useful if the connector is responsible for returning data in different languages, i.e. string values for fields which were described by the metadata as STRING data types.
timezone xsd:string The timezone attribute is the Timezone as specified in the deployment. This affects all "Date and Time" Policy Modeling attributes as the value mapped out will carry this Timezone value. Any Date and Time values in the response must already be converted to the project's Timezone.
result-limit xsd:integer Optional. Defines the maximum number of rows in the root table that should be returned as a result of the query.

And one of the following:

Parameter Type Description
and-expr AndExpression Represents an expression where all child expressions should be conjoined using the AND operator.
or-expr OrExpression Represents an expression where all child expressions should be conjoined using the OR operator.
comparison-expr ComparisonExpression Represents an expression where a field is compared to a value.
not-null-expr NotNullExpression Represents an expression that evaluates to true if the field is not null.
null-expr NullExpression Represents an expression that evaluates to true if the field is null.
all-expr AllExpression Represents an expression in which all rows should be returned.
tables SeedDataDescription Describes the data to be returned as a result of the query.

Response

Parameter Type Description
tables LoadData An element containing the list of Tables matching the query.

Errors

If the response of an ExecuteQuery action contains unexpected values or structure will be logged.

If an error is raised by the web service connector, the body of the response may instead consist of a RequestFault. This defined fault structure allows the Hub log to display the error in a cleaner format, as opposed to a stack trace.