How does camunda check whether the BPMN model is correct

Hello everyone! I want to know how the camunda engine checks the BPMN file. I added an attribute to the BPMN file, and there was an error in the camunda deployment.

<bpmn:sequenceFlow id=“Flow_12zlgk3” sourceRef=“Activity_0kttci1” targetRef=“Gateway_0t8xn89” />
<bpmn:sequenceFlow id=“Flow_07ppqja” sourceRef=“Gateway_0t8xn89” targetRef=“Activity_1cucp87” />
<bpmn:sequenceFlow id=“Flow_1oyzz0v” sourceRef=“Activity_1cucp87” />
<bpmn:userTask id=“Activity_14naw0a” name=“begin”>
1
bpmn:incomingFlow_1tkp0uy</bpmn:incoming>
bpmn:outgoingFlow_13dfncq</bpmn:outgoing>
</bpmn:userTask>

error:Invalid destination ‘null’ of sequence flow ‘Flow_1oyzz0v’

@OwenCarl There’s an built in api to validate the bpmn model:

Bpmn.validateModel(modelInstance);

Refer this page: Create a Model | docs.camunda.org

Hi @OwenCarl,

each sequence flow has to have a source and a target.

Hope this helps, Ingo