Once exporting a process into an SVG, the editor may generate duplicated identifiers when dealing with some shapes (eg: reusable subprocess), also identifiers may contian unuseful strings concatenated like "undefined". This situation can lead into potential issues when dealing the SVG DOM models.
Also the consumers for the generated proceses' SVGs, like the runtime UIs, have the need for being able to find concerte elements in the SVG in order to provide user actions on top. For instance, clicking in a reusable subprocess in order to drill down into the refferred process view.
The goal for this task is to improve the generated ids when exporting the process into an SVG model, by providing also information about the SVG model being used to generate the shape.
If an element in any of the source BPMN SVG shapes , already contains an identifier, it will be also used in the exported SVG for the process, by appending it into the generated ids.
For instance, the identifier "subProcessReusableNormalReusableIcon"  will be appended into the id for the generated process' SVG , once using a reusable subprocess with id "_BE5F68FE-3CE9-457A-A08F-3BA9DDF0B22C", so providing an output like: