DMNTK is a set of tools for evaluating, building, and testing decision models. DMNTK is based on the Decision Model and Notation (DMN™) specification, the industry standard led by the Object Management Group (OMG®), the institution behind such standards like UML®, BPMN™ and CORBA®. DMNTK aspires to be performant, reliable and fully compliant with DMN™ specification, decision model evaluator. DMNTK is written in Rust.
Main DMNTK features:
DMNTK ships as a single executable with no dependencies.
Binary version of DMNTK may be - obtained directly from GitHub releases, or - built and installed from source using Cargo.
shell
$ cargo install dmntk
DMNTK provides few examples, ready to play with. To install examples run:
shell
$ dmntk exs
shell
$ cd ./examples/e1
$ dmntk efe e1.ctx e1.feel
3
shell
$ cd ./examples/e2
$ dmntk edm e2.ctx e2.dmn -i "Greeting Message"
"Hello John Doe"
shell
$ cd ./examples/e3
$ dmntk edt e3.ctx e3.dtb
0.15
shell
$ cd ./examples/e2
$ dmntk srv -H 127.0.0.1 -D .
Loaded 1 file(s) from directory: .
dmntk 127.0.0.1:22022
Switch to another terminal window and run:
shell
$ curl -s -d "{\"Full Name\":\"John Doe\"}" -H "Content-Type: application/json" -X POST http://127.0.0.1:22022/evaluate/compliance-level-2-test-0001/Greeting%20Message
{"data":"Hello John Doe"}
More detailed documentation can be found on dmntk.io.
Licensed under either of
at your option.
Unless you explicitly state otherwise, all contributions intentionally submitted for inclusion in the work by you, shall be dual licensed as above, without any additional terms or conditions.