ScratchyDisk.DmnEngine
2.0.1
dotnet add package ScratchyDisk.DmnEngine --version 2.0.1
NuGet\Install-Package ScratchyDisk.DmnEngine -Version 2.0.1
<PackageReference Include="ScratchyDisk.DmnEngine" Version="2.0.1" />
<PackageVersion Include="ScratchyDisk.DmnEngine" Version="2.0.1" />
<PackageReference Include="ScratchyDisk.DmnEngine" />
paket add ScratchyDisk.DmnEngine --version 2.0.1
#r "nuget: ScratchyDisk.DmnEngine, 2.0.1"
#:package ScratchyDisk.DmnEngine@2.0.1
#addin nuget:?package=ScratchyDisk.DmnEngine&version=2.0.1
#tool nuget:?package=ScratchyDisk.DmnEngine&version=2.0.1
ScratchyDisk.DmnEngine
A .NET rule engine that executes decisions defined in DMN (Decision Model and Notation) models. It evaluates decision tables and expression decisions from OMG-standard DMN XML files (versions 1.1, 1.3, 1.3ext, 1.4, 1.5), or from definitions built programmatically using a fluent API.
Expressions are evaluated using a full FEEL (Friendly Enough Expression Language) interpreter built on ANTLR4, supporting the complete expression language including if/then/else, for/in/return, quantifiers, list/context operations, ranges, and ~80 built-in functions.
Quick Start
var def = DmnParser.Parse(fileName);
var ctx = DmnExecutionContextFactory.CreateExecutionContext(def);
ctx.WithInputParameter("input name", inputValue);
var result = ctx.ExecuteDecision("decision name");
You can also create definitions programmatically using the DmnDefinitionBuilder fluent API instead of parsing DMN XML.
Key Features
- Full FEEL evaluator with ANTLR4 grammar
- DMN 1.1 through 1.5 with auto-detection
- All standard decision table hit policies
- Decision requirement graphs (DRDs) with automatic dependency resolution
- Fluent builder API for programmatic definitions
- CLR interop from FEEL expressions
- Expression caching with configurable scope
- Thread-safe immutable definitions
Documentation
Full documentation, architecture details, and tools (web-based testbed, CLI runner) are available in the readme at the GitHub repository.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Antlr4.Runtime.Standard (>= 4.13.1)
- NLog (>= 5.3.4)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 2.0.1 | 185 | 3/3/2026 |