before digging into Bpmn-io code I’d like to ask you if it supports different stencilsets besides bpmn.
I previously used Oryx/Signavio/Activiti modeler which we extended providing our own stencilsets and I would like to do the same with Bpmn-js. Is that possible? Is the architecture under the hood similar to Oryx?
What do you mean by stencil sets?
The architecture behind our libraries is quite different from Orxy:
- Oryx defines a general purpose meta-model. The users configures that internal model and definies the modeling languages in stencil sets.
- Our libraries are built on top of diagram-js, also providing some sort of tool box. The difference is that each library (bpmn-js, dmn-js, cmmn-js) understands the underlying standard directly and reads / writes diagrams in the standards compliant format (i.e. BPMN 2.0 XML).
Rather than configuring a new stencil set (Orxy) you’d implement your own modeler, defining components such as Palette, Context Pad, Modeling Rules, Look and Feel if you need them.
Our libraries are client side only, too. Oryx is a massive client/server application.
I suggest you to read through the bpmn-js walkthrough to dig deeper into this. Our examples (bpmn-js) may help you to get a bit deeper into how using / extending our libraries works, too.
If you got any more questions, feel free to ask.
Thank you for your exaustive explanation.
As you correctly said, stencilset is the way Oryx calls modeling language definition (elements and rules).
As far as I understand bpmn-io is totally different (I wrongly thought it was based on Oryx code).
Anyway, since we automatically export 44 models from Software AG Aris bpa tool to Oryx compatible format, the effort to do the same for bpmn-io seems overwhelming.
Thank you again
You are welcome and I agree .