Red Hat Training

A Red Hat training course is available for Red Hat Decision Manager

Chapter 4. DMN support in Red Hat Decision Manager

Red Hat Decision 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 Decision Manager. You can import DMN files into your project in Decision Central (Menu → Design → Projects → Import Asset) or package the DMN files as part of your project knowledge JAR (KJAR) file without Decision Central. In addition to all DMN conformance level 3 requirements, Red Hat Decision Manager also includes enhancements and fixes to FEEL and DMN model components to optimize the experience of implementing DMN decision services with Red Hat Decision Manager.

From a platform perspective, DMN models are like any other business asset in Red Hat Decision Manager, such as DRL files or uploaded decision tables, that you can include in your Red Hat Decision Manager project and deploy to Decision 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 Decision 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 Decision Manager project.

4.1. Configurable DMN properties in Red Hat Decision Manager

Red Hat Decision Manager provides the following DMN properties that you can configure when you execute your DMN models on Decision 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 decision 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 decision 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