Hi Tibor, There is not any plan, not expectation, that SonataFlow will execute BPMN. That's absurd from my point of view. However, executing a decision rule, which always has inputs and outputs, maps well with the SWF function idiom (an idiom that already allow a SWF definition to invoke REST services, GRPC functions, Java code, Python scripts, JQ expressions and Camel, among another stuff). A DRL unit does not map so well and I do not think applies to the SWF idiom (can be forced but I do not feel natural, because a DRL unit, implies the existence of Java POJO as model, which is not an idiom in the SWF spec), that's why it has not been implemented. About "strategic implications' ', integration with DMN was already discussed as a "nice to have" capability two years ago and was not implemented because of time constraints. Recently it has been raised again and now I have time to implement it. Since it was an easy implementation that does not have project wide implications (or affecting the incoming release), I do not feel there was a reason to discuss it here. Now that we are discussing and has been explained, do you still see any issue?
On Tue, Apr 16, 2024 at 10:06 AM Tibor Zimányi <tibor.zima...@gmail.com> wrote: > Hi Ricardo, > > "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." > > This is actually the reason why I started the topic in this thread. Because > what the community expects cannot be decided on informal chats. So what is > the expectation with these changes please? Is it expected from your > perspective e.g. that Sonataflow will also execute BPMN in the future? What > is the proposal along these changes please? These kinds of things need to > be discussed officially. If not, I will -1 it personally, till we have an > agreement on the mailing list, because this may have strategic implications > around the whole KIE project. > > Best regards, > Tibor > > On Mon, Apr 15, 2024 at 6:29 PM ricardo zanini fernandes < > ricardozan...@gmail.com> wrote: > > > 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 < > > ftira...@redhat.com> 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 <tzima...@apache.org> > > 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 > > > > > > > > > > > > -- > Tibor Zimanyi >