Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Import and evaluate a decision from another DMN #71

Open
saig0 opened this issue Jul 13, 2021 · 6 comments
Open

Import and evaluate a decision from another DMN #71

saig0 opened this issue Jul 13, 2021 · 6 comments

Comments

@saig0
Copy link
Member

saig0 commented Jul 13, 2021

I can import other decisions from another DMN file. I can evaluate these decisions with the given import name as a prefix.


(DMN 1.4, section 6.3.3, page 34)

image

@falko
Copy link
Member

falko commented Jul 14, 2021

Interesting feature.

@saig0
Copy link
Member Author

saig0 commented Aug 31, 2021

Idea:

  • two APIs:
    • stateless: parse(dmn) + eval(parsed-dmn)
    • stateful: deploy(dmn) + eval()
    • including Java APIs
  • new dependency for the engine: decision-repository
    • deploy() + findByName() + findById() + findAll() + remove()
    • default implementation: in-memory-decision-repository

@falko
Copy link
Member

falko commented Aug 31, 2021

The primary concepts that DMN offers for calling imported elements are BKM and Decision Service invocations.

@falko
Copy link
Member

falko commented Aug 31, 2021

There should be examples in the machine-readable files included with the spec as well as in the DMN TCK. If not, those would be great test cases to add ;-)

@saig0
Copy link
Member Author

saig0 commented Aug 31, 2021

Yes, the DMN TCK has two test cases. Both are linked with this issue.

@saig0
Copy link
Member Author

saig0 commented Jun 27, 2023

There is an open contribution to implement this feature: #215.

I also drafted a PoC to show how the feature can be implemented but with a different approach: #222.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants