DMN

DMN and XML: Lists of Lists of Lists… Oh My!

By |2023-04-15T07:35:08-07:00April 15th, 2023|DMN|

When we create a decision model, we imagine we can design the input data in a way that is most convenient for our logic.  But that is not always the case.  It could be that the input to our model is required to be XML in some industry-defined format, and we need to convert that [...]

DMN: Data Validation Reconsidered

By |2023-03-13T11:05:57-07:00March 13th, 2023|DMN|

In a post last summer, I began to question the value of assigning constraints like a range of allowed values to datatypes in DMN, in favor of performing data validation using a decision table inside the decision model.  There were a few reasons for this: Data values violating the constraint behaved differently in decision tables [...]

Decision Table Hit Policy Explained

By |2023-02-08T13:48:36-08:00February 8th, 2023|DMN|

DMN's most widely used boxed expression type is the decision table.  It's popular because its meaning is intuitive and generally understood without training.  The DMN spec imposes certain constraints on the format - what expressions are allowed in a condition cell, for instance.  Even when these are ignored by legacy rule engine vendors, the intent [...]

Are You DMN-Ready?

By |2023-01-03T10:50:10-08:00January 3rd, 2023|DMN|

A primary design goal of the DMN standard was accessibility to subject matter experts and other "business users", i.e. non-programmers.   DMN promises executable decision logic without programming, and it achieves that through a combination of standard diagrams (DRDs), standard tabular formats (boxed expressions), and a business-friendly expression language (FEEL).  Nevertheless, you constantly hear that it's [...]

How Contexts Simplify DMN Logic

By |2022-11-08T12:03:04-08:00November 8th, 2022|Business Automation, DMN|

I have made the point on multiple occasions (for example, here) that DMN is both more business-friendly and more powerful than better-known Low-Code languages such as Microsoft's Power FX.  One reason for that is DMN's context boxed expression, which breaks down a complex bit of business logic (or decision logic, if you prefer) into multiple [...]

Datatypes with Constraints

By |2022-08-16T09:15:34-07:00August 16th, 2022|Business Automation, DMN|

As a followup to my post from last month, there is another aspect of datatypes I've been thinking about.  When a simple type is subject to constraints, such as a numeric range or a list of enumerated values, I have been teaching students to create an item definition that expresses those constraints.  For example, if [...]

Good DMN Begins with Datatype Assignment

By |2022-07-14T11:09:02-07:00July 14th, 2022|Business Automation, DMN|

In my DMN Method and Style training, we cover a lot of advanced topics, including calendar arithmetic, iteration, filters, and data validation.  But I have found that problems in students' certification exercises more often relate to something much more basic, which we discuss at the very beginning of the course: assignment and naming of datatypes.  [...]

DMN Training Updated

By |2022-03-28T14:08:54-07:00March 28th, 2022|DMN|

With the imminent launch of version 11 of the Trisotech platform, I am happy to announce a new version of my DMN Method and Style training, effective immediately. Previously I offered two courses, DMN Basics and DMN Advanced, in which the focus of DMN Basics was top-down logic decomposition using Decision Requirements Diagrams (DRDs) [...]

Stateful Decision Models

By |2022-03-16T12:42:02-07:00March 16th, 2022|BPMN, Business Automation, DMN|

Recently I viewed a DecisionCamp presentation on an application of DMN to a public-facing portal in the Netherlands for what we call in the USA building permits.  Here is the link.  The scope of the project is impressive, combining regulations defined at the national, provincial, and municipal level, plus those of special districts.  The ultimate [...]

Title

This Is A Custom Widget

This Sliding Bar can be switched on or off in theme options, and can take any widget you throw at it or even fill it with your custom HTML Code. Its perfect for grabbing the attention of your viewers. Choose between 1, 2, 3 or 4 columns, set the background color, widget divider color, activate transparency, a top border or fully disable it on desktop and mobile.

This Is A Custom Widget

This Sliding Bar can be switched on or off in theme options, and can take any widget you throw at it or even fill it with your custom HTML Code. Its perfect for grabbing the attention of your viewers. Choose between 1, 2, 3 or 4 columns, set the background color, widget divider color, activate transparency, a top border or fully disable it on desktop and mobile.
Go to Top