Muonroi.RuleEngine.DecisionTable
2.0.1
See the version list below for details.
dotnet add package Muonroi.RuleEngine.DecisionTable --version 2.0.1
NuGet\Install-Package Muonroi.RuleEngine.DecisionTable -Version 2.0.1
<PackageReference Include="Muonroi.RuleEngine.DecisionTable" Version="2.0.1" />
<PackageVersion Include="Muonroi.RuleEngine.DecisionTable" Version="2.0.1" />
<PackageReference Include="Muonroi.RuleEngine.DecisionTable" />
paket add Muonroi.RuleEngine.DecisionTable --version 2.0.1
#r "nuget: Muonroi.RuleEngine.DecisionTable, 2.0.1"
#:package Muonroi.RuleEngine.DecisionTable@2.0.1
#addin nuget:?package=Muonroi.RuleEngine.DecisionTable&version=2.0.1
#tool nuget:?package=Muonroi.RuleEngine.DecisionTable&version=2.0.1
Muonroi.RuleEngine.DecisionTable
Decision table execution engine supporting DMN-style rule execution with various hit policies and FEEL expressions.
Installation
dotnet add package Muonroi.RuleEngine.DecisionTable
Overview
Provides support for representing and executing business rules as Decision Tables within the Muonroi ecosystem. It uses IDecisionTableExecutor and DecisionTableExecutor to evaluate a DecisionTable against input facts, applying a HitPolicy (Unique, Any, First, All, Collect, RuleOrder) to return a DecisionTableExecutionResult.
Features
- Table Execution:
DecisionTableExecutorevaluates input facts against decision tables and outputs matched rows. - Hit Policies: Supports standard DMN hit policies through the
HitPolicyenum. - FEEL Expressions: Cells are evaluated using
IFeelCellEvaluator, with implementations likeFullFeelCellEvaluatorandSimplifiedFeelCellEvaluator. - Validation: Ensures correctness using
DecisionTableValidator,OverlapDetector,MultiColumnOverlapDetector, andGapDetector. - Storage Abstractions: Persist tables via
IDecisionTableStore, withInMemoryDecisionTableStoreandEfCoreDecisionTableStore.
Quick Start
// Evaluate a decision table
var executor = provider.GetRequiredService<IDecisionTableExecutor>();
var result = await executor.ExecuteAsync(decisionTable, inputFacts, cancellationToken);
Ecosystem Combinations
+ RuleEngine.Core → Decision Tables as Rules
Decision tables implement IRule<TContext> — the orchestrator evaluates them alongside compiled C# rules with the same FactBag pipeline.
+ Tenancy.Core → Per-Tenant Table Versions
Each tenant can have its own version of a decision table active simultaneously via RuleSetStatus and canary rollout.
+ RuleEngine.Runtime → Persisted, Hot-Reloadable Tables
Tables stored in Postgres or SQL Server. Update a row in the database — the change applies on the next evaluation cycle without restart.
+ FEEL (Muonroi.Rules) → Rich Cell Expressions
FullFeelCellEvaluator supports the complete FEEL expression language in table cells: date ranges, list membership, arithmetic comparisons.
Full Rule Engine Production Stack
builder.Services
.AddDecisionTableExecution()
.AddFullFeelEvaluator()
.AddInMemoryDecisionTableStore();
Samples
License
Apache 2.0 — see LICENSE-APACHE.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. 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. |
-
net8.0
- ExcelDataReader (>= 3.7.0)
- ExcelDataReader.DataSet (>= 3.7.0)
- Muonroi.Data.EntityFrameworkCore (>= 2.0.1)
- Muonroi.Data.EntityFrameworkCore.MySql (>= 2.0.1)
- Muonroi.Data.EntityFrameworkCore.PostgreSQL (>= 2.0.1)
- Muonroi.Data.EntityFrameworkCore.Sqlite (>= 2.0.1)
- Muonroi.Data.EntityFrameworkCore.SqlServer (>= 2.0.1)
- Muonroi.RuleEngine.Abstractions (>= 2.0.1)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on Muonroi.RuleEngine.DecisionTable:
| Package | Downloads |
|---|---|
|
Muonroi.RuleEngine.Runtime
Runtime orchestration layer for Muonroi RuleEngine, providing execution pipelines and integration points for rule evaluation services. |
|
|
Muonroi.RuleEngine.DecisionTable.Web
Web API and UI assets for Muonroi Decision Table Designer. |
GitHub repositories
This package is not used by any popular GitHub repositories.