A simple DMN + PMML service.
You will need:
mvn clean compile spring-boot:run
mvn clean package java -jar ./target/dmn-pmml-springboot-example.jar
Validate the functionality of DMN models before deploying them into a production environment by defining test scenarios in Test Scenario Editor.
To define test scenarios you need to create a .scesim file inside your project and link it to the DMN model you want to be tested. Run all Test Scenarios, executing:
mvn clean test
See results in surefire test report target/surefire-reports
Once the service is up and running, you can use the following example to interact with the service.
Given inputs:
{ "fld1":3.0, "fld2":2.0, "fld3":"y" }
Curl command (using the JSON object above):
curl -X POST -H 'Accept: application/json' -H 'Content-Type: application/json' -d '{"fld1":3.0, "fld2":2.0, "fld3":"y"}' http://localhost:8080/TestRegressionDMN
or on Windows:
curl -X POST -H "Accept: application/json" -H "Content-Type: application/json" -d "{"fld1":3.0, "fld2":2.0, "fld3":"y"}" http://localhost:8080/TestRegressionDMN
Example response:
{ "RegressionModelBKM":"function RegressionModelBKM( fld1, fld2, fld3 )", "fld3":"y", "fld2":2.0, "fld1":3.0, "Decision":52.5 }
Given inputs:
{ "temperature":30, "humidity": 10 }
Curl command (using the JSON object above):
curl -X POST -H 'Accept: application/json' -H 'Content-Type: application/json' -d '{"temperature":30, "humidity":10}' http://localhost:8080/TestTreeDMN
or on Windows:
curl -X POST -H "Accept: application/json" -H "Content-Type: application/json" -d "{"temperature":30, "humidity":10}" http://localhost:8080/TestTreeDMN
Example response:
{ "TestTreeBKM":"function TestTreeBKM( humidity, temperature )", "temperature":30, "humidity":10, "Decision":"sunglasses" }
In the operator directory you'll find the custom resources needed to deploy this example on OpenShift with the Kogito Operator.