Skip to main content

DMN Overview

The DMN surface in QuantumBPM is a Decision Model and Notation engine implementing the DMN 1.5 specification. It runs alongside the BPMN engine in the same product and shares projects, identity, and audit history with it.

DMN is the OMG-published standard for representing operational decisions — the rules that take an input context, apply some business logic, and produce an answer. Models are visual, vendor-neutral, and (because they're spec-compliant) directly executable.

What's supported

Modeling

A full DMN 1.5 modeler with the Decision Requirements Graph for laying out decisions and their dependencies, and boxed expression editors for every spec expression type:

  • Decisions — the top-level units that produce an answer.
  • Input data — variables that flow in from the caller.
  • Business knowledge models (BKMs) — reusable invocable logic.
  • Knowledge sources — references to authoritative documentation, not evaluated.
  • Decision services — collections of decisions exposed as a single callable unit.

For element details and validation rules, see Elements.

Decision logic

Logic inside each decision uses a boxed expression — a typed visual form of an expression. Supported types: decision tables, literal expressions, contexts, lists, relations, function definitions, and invocations. See Boxed expressions.

FEEL

Every expression — table inputs/outputs, literal expressions, conditions — is written in FEEL (Friendly Enough Expression Language), the small declarative language defined by the DMN spec. Authoring uses a CodeMirror-based editor backed by a dedicated FEEL language server: autocomplete, hover, signature help, semantic highlighting, and inline diagnostics. See FEEL.

Evaluation

Decisions are evaluated synchronously against an input context, returning per-decision results with the hit rules (for decision tables) and the dependency tree (which upstream decisions this evaluation pulled in). Each evaluation is recorded in execution history. See Evaluation and history.

Versioning

Every save creates a new immutable version of the definition. There's no separate deploy step — versions are evaluable from the moment they're stored. See Definitions and versioning.

Where to go next

  • Definitions and versioning — how DMN models are stored, versioned, and addressed.
  • Modeler — the DMN editor.
  • Evaluation and history — calling decisions and inspecting past executions.
  • Elements — DMN element reference (decisions, BKMs, decision services, input data, knowledge sources).
  • Boxed expressions — decision tables, literals, contexts, lists, relations, function definitions, invocations.
  • FEEL — syntax, built-ins, tooling.