I’m building a MEAN stack application. Want to use node and javascript on the server, like this BPMN execution engine. However bpmn files generated with bpmn-io do not execute on it. And conversely, I cannot open their bpmn sample files using the bpmn-io modeler.
I am new to this, but shouldn’t bpmn files be standard? I can understand straying from the standard, but those tags should have a custom namespace, and theoretically be ignored by each other’s tooling. What am I missing?
Seems like their diagrams are not BPMN 2.0 compliant in some important aspects:
They do not use DI (BPMNs grapical information) so there is no way for other editors to display the symbols without sophisticated auto-layouting.
They extend the BPMN 2.0 schema in an invalid way. As far as I know vendors should provide extensions in <bpmn:extensionElements /> blocks. They simply inline them (i.e. using <mxCell /> elements for the graphical data) and do not provide a proper namespace.
Try to validate one of their diagrams against the BPMN 2.0 XML schema (BPMN20.xsd) to verify that I am not mistaken. You could use xsd-schema-validator for this if you are on NodeJS anyway.
So my assessment is: Their .bpmn files are not BPMN 2.0 compliant which will make it really hard to get bpmn-js play nicely with it.
Hi Nico- Your schema validator (nice lib BTW) verified it was not compliant. e2e may have started with the “Yaoqiang” BPMN editor which produces custom tags that are not compliant.
I would still like to use the node BPMN execution engine and bpmn-io editor. I spent time troubleshooting, and have it working now! Next step is to determine which of the BPMN structures the node execution engine supports. Thanks for your insight!