Difference Between bpmn:definitions and bpmn2:definitions

I wanted to know what exactly is the difference between few bpmn diagrams using “bpmn:definition” and “bpmn2:defintion”,it would be great if any document reference is available for the same.

Also would like to know how bpmn diagram in both definition format condition can be added to the bpmn modeller.

As far as I know there is no difference. It’s just the namespace prefix used in a BPMN diagram. You can also use no prefix at all or come up with your own. All of these diagrams are valid:

No Prefix

<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" id="Definitions_02uyvix" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="3.0.0-dev">
  <process id="Process_1b2h25j" isExecutable="true">
    <startEvent id="StartEvent_1" />
  </process>
  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Process_1b2h25j">
      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">
        <dc:Bounds x="179" y="159" width="36" height="36" />
      </bpmndi:BPMNShape>
    </bpmndi:BPMNPlane>
  </bpmndi:BPMNDiagram>
</definitions>

Custom Prefix

<?xml version="1.0" encoding="UTF-8"?>
<foo:definitions xmlns:foo="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" id="Definitions_02uyvix" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="3.0.0-dev">
  <foo:process id="Process_1b2h25j" isExecutable="true">
    <foo:startEvent id="StartEvent_1" />
  </foo:process>
  <bpmndi:BPMNDiagram id="BPMNDiagram_1">
    <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Process_1b2h25j">
      <bpmndi:BPMNShape id="_BPMNShape_StartEvent_2" bpmnElement="StartEvent_1">
        <dc:Bounds x="179" y="159" width="36" height="36" />
      </bpmndi:BPMNShape>
    </bpmndi:BPMNPlane>
  </bpmndi:BPMNDiagram>
</foo:definitions>

You can verify their validity by opening them with bpmn-js.

1 Like