npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

n8n-nodes-dmn

v1.0.1

Published

n8n node for evaluating DMN decision tables

Downloads

203

Readme

n8n-nodes-dmn

Banner image

This is an n8n community node that allows you to use Decision Model and Notation (DMN) tables within your n8n workflows.

This node dynamically constructs and evaluates DMN 1.1 decision tables based on rules and data provided as inputs, leveraging the S-FEEL expression language subset supported by the underlying evaluation engine.

  • DMN is an OMG standard for modeling and executing operational decisions.
  • n8n is a fair-code licensed workflow automation platform.

Installation

Follow the installation guide in the n8n community nodes documentation.

Operation: Evaluate Decision

Executes a dynamically generated DMN decision table against input data.

  • Inputs:
    1. Rules: An array of n8n items, where each item's JSON represents a single rule (row) in the decision table.
    2. Data: An array of n8n items, where each item's JSON represents the input context data to be evaluated against the rules.
  • Output: Returns the decision result(s) merged with the original input data item, formatted according to the selected "Output Format" property.

Configuration

The node requires configuration through its properties:

  • Input Parameters: Define the input columns used in the decision table and their data types. The names must match keys in the input Data items.
    • Supported Types: String, Number, Boolean.
  • Output Parameters: Define the output columns produced by the decision table and their data types.
    • Supported Types: String, Number, Boolean.
  • Hit Policy: Select the DMN hit policy to determine how multiple matching rules are handled.
    • Supported Policies: UNIQUE, FIRST, RULE ORDER, COLLECT.
  • Output Format: Choose how the results are structured in the output items.
    • Formats: Row with all hits (always lists), Row with all hits (single items and lists), Row for each hit, JSON with Output.

S-FEEL Expressions

Input and output entries within the Rules data can utilize expressions based on the S-FEEL standard, as implemented by the underlying evaluation library. This includes:

  • Comparisons (<, >, <=, >=)
  • Ranges ([1..10], (1..10))
  • Disjunctions (comma-separated lists like "a", "b", or 10, 20)
  • Negation (not(...) - Note: For string negation, use <> "string" syntax in your rule input)
  • Simple string literals ("go", "stay home")
  • Numeric and boolean literals (10, true)
  • The hyphen (-) for wildcard inputs.

Refer to the underlying library documentation for more specific S-FEEL details. Not all the features are 100% operational, so test your solution properly.

Resources

Attribution

Disclaimer

Dynamically generating and evaluating DMN based on user inputs can be complex. While this node aims to support common use cases, edge cases or specific S-FEEL constructs might lead to unexpected behavior or parsing errors in the underlying library. Please test thoroughly and report any issues.

Prerequisites

You need the following installed on your development machine:

  1. Set up git
  2. Node.js and npm. Minimum version Node 18. You can find instructions on how to install both using nvm (Node Version Manager) for Linux, Mac, and WSL here. For Windows users, refer to Microsoft's guide to Install NodeJS on Windows.
  3. Install n8n with:
npm install n8n -g
  1. Import the lib from the settings panel

Recommended: follow n8n's guide to set up your development environment.

License

MIT