Business Rules 10.7 | webMethods Business Rules Web Help | webMethods Business Rules Reference | Technical Details for Preconfigured Data Provider Services
 
Technical Details for Preconfigured Data Provider Services
To avoid unexpected or misspelled cell entries in a decision table, Business Rules supports external dynamic data provider REST services. These services provide options to be selected in a drop-down box. The user can define one data provider REST service per column. If the user edits a cell with data provider service configuration, a background REST service call retrieves values and descriptions for a drop-down box. The data provider server can be configured in My webMethods. For more information, see Working with Business Rules in My webMethods. The actual data provider REST service can be assigned to a decision table with the Rules Development feature of Software AG Designer. For more information, see webMethods BPM Rules Development Help.
The REST service must meet the following requirements:
*The REST service must return the following two parameters:
*mode An enumeration that sets the behavior of the input element: STRICT: Only values from the service response are available in the drop-down box, and no free text input is allowed.
*options An array of value-description pairs that are selectable in the drop-down box where value is the actual value put into the decision table cell and description (optional) is the text that shows up in the drop-down box and represents the associated value (if no description is given, the value will be shown in the drop-down box).
*The REST service must use the following structure:
{
"title": "Data Provider Service Schema",
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [ "STRICT" ]
},
"options": {
"type": "array",
"items": {
"type": "object",
"properties": {
"description": {
"type": "string"
},
"value": {
"type": "string"
}
},
"required": [ "value" ]
}
}
},
"required": [ "mode", "options"]
}
Example:
{
mode: "STRICT",
options: [ { description: "Alice", value: "10" },
{ description: "Bob", value: "20" },
{ description: "Carol", value: "30" }
]
}
*If you specify date values, the following (ISO 8601) format is required: <DATE>T<TIME><OFFSET>, where DATE is yyyy-mm-dd, TIME is hh:mm:ss, and OFFSET determines the timezone offset (Z for UTC, +hh:mm for hour offset).
Example:
2016-10-04T09:11:00Z
2016-10-04T09:11:00+03:00