Red Hat Training

A Red Hat training course is available for Red Hat Process Automation Manager

Chapter 4. DMN support in Red Hat Process Automation Manager

Red Hat Process Automation Manager includes full runtime support for DMN 1.1 and DMN 1.2 models at conformance level 3, but currently does not include a built-in DMN model editor. Editors for DMN models will be added to the platform in the near future, but meanwhile you can use third-party DMN authoring platforms to create DMN models and then integrate the DMN models in your decision services in Red Hat Process Automation Manager. You can import DMN files into your project in Business Central (Menu → Design → Projects → Import Asset) or package the DMN files as part of your project knowledge JAR (KJAR) file without Business Central. In addition to all DMN conformance level 3 requirements, Red Hat Process Automation Manager also includes enhancements and fixes to FEEL and DMN model components to optimize the experience of implementing DMN decision services with Red Hat Process Automation Manager.

From a platform perspective, DMN models are like any other business asset in Red Hat Process Automation Manager, such as DRL files or uploaded decision tables, that you can include in your Red Hat Process Automation Manager project and deploy to Process Server in order to start your DMN decision services. This enables you to use your preferred DMN authoring tool to design your DMN models that you then deploy with your existing Red Hat Process Automation Manager assets. For example, you might have BPMN models that directly invoke DMN decision services from their decision task nodes.

For more information about including assets such as DMN files with your project packaging and deployment method, see Packaging and deploying a Red Hat Process Automation Manager project.

4.1. Configurable DMN properties in Red Hat Process Automation Manager

Red Hat Process Automation Manager provides the following DMN properties that you can configure when you execute your DMN models on Process Server or on your client application:

org.kie.dmn.strictConformance

When enabled, this property disables by default any extensions or profiles provided beyond the DMN standard, such as some helper functions or enhanced features of DMN 1.2 backported into DMN 1.1. You can use this property to configure the process engine to support only pure DMN features, such as when running the DMN Technology Compatibility Kit (TCK).

Default value: false

-Dorg.kie.dmn.strictConformance=true
org.kie.dmn.runtime.typecheck

When enabled, this property enables verification of actual values conforming to their declared types in the DMN model, as input or output of DRD elements. You can use this property to verify whether data supplied to the DMN model or produced by the DMN model is compliant with what is specified in the model.

Default value: false

-Dorg.kie.dmn.runtime.typecheck=true
org.kie.dmn.decisionservice.coercesingleton

By default, this property makes the result of a decision service defining a single output decision be the single value of the output decision value. When disabled, this property makes the result of a decision service defining a single output decision be a context with the single entry for that decision. You can use this property to adjust your decision service outputs according to your project requirements.

Default value: true

-Dorg.kie.dmn.decisionservice.coercesingleton=false
org.kie.dmn.profiles.$PROFILE_NAME

When valorized with a Java fully qualified name, this property loads a DMN profile onto the process engine at start time. You can use this property to implement a predefined DMN profile with supported features different from or beyond the DMN standard. For example, if you are creating DMN models using the Signavio DMN modeller, use this property to implement features from the Signavio DMN profile into your DMN decision service.

-Dorg.kie.dmn.profiles.signavio=org.kie.dmn.signavio.KieDMNSignavioProfile