[FEAT] Provide BPMN Semantic data in addition to HTML elements
Is your feature request related to a problem? Please describe. With #927, we can get HTML Elements by providing only a type, so without knowing it in terms of BPMN Semantic. This means that it is hard for integration to be able to at least identify the related BPMN element (by its id) and so retrieve execution/runtime data associated to a running process.
Describe the solution you'd like In addition to the BPMN HTML Element, provide BPMN Semantic information
- [x] general data always available: id, label and BPMN Semantic (Shape or Edge, BPMN kinds like
userTask,callActivity,startEvent, ...). Implemented by #940 ([email protected]). Also state if it is a shape or an edge. - [ ] call activity: processref
- [ ] event: event definition kind (timer, message, escalation, ....)
- [ ] sub process: subprocess kind
- [ ] parent element id
To help navigating into the Bpmn Model (as a Graph, see #930)
- [ ] for shapes: incoming and outgoing edges (ids)
- [ ] for edges: source and terminal shapes (ids)
In a first implementation, we should provide at least the general data, specific semantic data could be implemented in a second step.
Possible example to demonstrate the new capabilities Given BPMN diagram, for all BPMN elements, display a popover with on top BPMN data, on the bottom simulated runtime data retrieved accordingly to the BPMN semantic information.
Implementation proposal
IMPORTANT: we may consider #927 while implementing this issue (at least provide the final method signatures)
1st implementation is proposed in #940
The 1st implementation provided by #940 rely on the mxgraph model. It doesn't contain all BPMN info and make us too much tight with mxgraph (see #917). Put this issue to the backlog as it is blocked by #953