BPMN Parser execution



We’re implementing BPMN parsers and we are wondering in which points BPMN parsers are executed.
We know they are executed during deployment (for new and update process definitions)

But in cases of starting a new process instance? Is a BPMN parser executed?

Thx in advance,



Hi Eddie,

The parsing is done during the deployment.
It is not executed during starting a new process instance.

Best regards,


Hi Yana,

Thx for your quick reply. After a deeper investigation, a colleague found out that BPMN parsers are as well triggered while getting Process definitions (ProcessDefinitionResourceImpl.getProcessDefinitionBpmn20Xml()).

They are used in method GetDeploymentProcessModelCmd.execute(), where class DeploymentCache is used (and eventually calling all BPMN parsers).

So, they are used in Create/ReDeploy REST API, as well in /process-definition/{id}/xml, and probably any other method where RepositoryServiceImpl.getProcessModel() is used.

Regards, Eddie.


Hi Eddie,

Correct, good findings.
Sorry that my answer was not that detailed.

Best regards,