Hi Tibor!

> why we have two workflow engines in the KIE project

We just have one workflow engine with two models. BPMN and CNCF Serverless
Workflow. Adding support to the former was a strategy our community
envisioned at the time to leverage the serverless/cloud platforms. Also, it
adds support to orchestrate services and events natively from Kubernetes. I
don't want to extend too much on this and I don't want to start discussing
now why we add support to CNCF Serverless Workflows as I understand this is
already something the community agreed to support.

Regarding calling DMN from SonataFlow, as Francisco just explained, was
just a matter of adding a new function type to the parser since we already
support it from our main core workflow engine. Users now will be able to
run DMN from their serverless applications, which I think is pretty neat.
It covers a wide of use cases out there (like orchestrating services and
using DMN in between invocations, pushing events from a DMN invocation,
etc.). This will surely add to the DMN and SonataFlow projects more
traction.

About DRL, same thing. It should be the next step. And having all these
technologies playing together out of the box, I believe is what the
community expects from the projects from KIE. To exemplify how this will
work, take a look at this Camel example with SonataFlow:
https://github.com/apache/incubator-kie-kogito-examples/tree/stable/serverless-workflow-examples/serverless-workflow-camel-routes

The idea would be the same. Drop the DMN file in your project, declare a
function for it, and call it in an operation state [1].

Cheers!

[1]
https://github.com/serverlessworkflow/specification/blob/main/specification.md#operation-state

On Mon, Apr 15, 2024 at 1:04 PM Francisco Javier Tirado Sarti <
[email protected]> wrote:

> Hi Tibor,
> Thanks for opening the topic.
> This PR adds support for invoking a DMN file from SonataFlow.
> This PR takes advantage of the fact that DMN file invocation is already
> supported by jbpm engine and code generator and that the jbpm engine is
> already being used both by SonataFlow and BPMN parsers/code generators.
> Therefore what this PR does is add DMN support (in a similar way that is
> done to BPMN parser) to the sonata workflow parser by just recognizing the
> idiom ( a new custom type as per Serverless Workflow specification)
> Therefore, Nothing needs to be changed in the jbpm engine or in the coge
> generator.
>
>
> On Mon, Apr 15, 2024 at 5:01 PM Tibor Zimányi <[email protected]> wrote:
>
> > Hi everyone,
> >
> > I noticed multiple discussions on Zulip and also a PR opened (1) about
> > executing DMN from Sonataflow. I am opening this thread (because I didn't
> > notice one), so we can discuss, if we want to do it. First of all, I want
> > to write, I am not against it. I just want us to be completely sure, that
> > it is what we want to do. Because from my perspective, it opens multiple
> > other discussions about the KIE workflow portfolio. One of them could be,
> > why we have two workflow engines in the KIE project, if we want to
> execute
> > all file types from everywhere (I read discussions on Zulip about DRL
> being
> > executed from Sonataflow too). It could imply, that we need a portfolio
> > consolidation and similar, because we are able to execute DMN and DRL
> from
> > the BPMN workflow engine.
> >
> > What are your opinions please?
> >
> > Best regards,
> > Tibor
> >
> > (1) https://github.com/apache/incubator-kie-kogito-runtimes/pull/3468
> >
>

Reply via email to