Skip to content

Commit 072559c

Browse files
committed
fix: adjust rule no-disconnected to not throw for activities in adhoc subprocesses
Closes #180
1 parent fb5960b commit 072559c

File tree

4 files changed

+319
-0
lines changed

4 files changed

+319
-0
lines changed

rules/no-disconnected.js

+5
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,11 @@ module.exports = function() {
3434
return;
3535
}
3636

37+
// adhoc subprocesses can have disconnected activities
38+
if (is(node.$parent, 'bpmn:AdHocSubProcess') && is(node, 'bpmn:Activity')) {
39+
return;
40+
}
41+
3742
const incoming = node.incoming || [];
3843
const outgoing = node.outgoing || [];
3944

test/rules/no-disconnected.mjs

+19
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,9 @@ RuleTester.verify('no-disconnected', rule, {
2424
{
2525
moddleElement: readModdle(__dirname + '/no-disconnected/valid-event-subprocess.bpmn')
2626
},
27+
{
28+
moddleElement: readModdle(__dirname + '/no-disconnected/valid-adhoc-subprocess.bpmn')
29+
},
2730
{
2831
moddleElement: readModdle(__dirname + '/no-disconnected/valid-compensation.bpmn')
2932
}
@@ -35,6 +38,22 @@ RuleTester.verify('no-disconnected', rule, {
3538
id: 'Element',
3639
message: 'Element is not connected'
3740
}
41+
},
42+
{
43+
moddleElement: readModdle(__dirname + '/no-disconnected/invalid-adhoc-subprocess.bpmn'),
44+
report:[
45+
{
46+
id: 'Gateway_1',
47+
message: 'Element is not connected'
48+
},
49+
{
50+
id: 'StartEvent_1',
51+
message: 'Element is not connected'
52+
},{
53+
id: 'EndEvent_1',
54+
message: 'Element is not connected'
55+
}
56+
]
3857
}
3958
]
4059
});
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<bpmn:definitions xmlns:bpmn="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" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="Definitions_1uy91uy" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="5.34.0-dev">
3+
<bpmn:process id="Process" isExecutable="true">
4+
<bpmn:adHocSubProcess id="AdHocSubProcess_1">
5+
<bpmn:incoming>Flow_10nxbza</bpmn:incoming>
6+
<bpmn:outgoing>Flow_0lkuuix</bpmn:outgoing>
7+
<bpmn:exclusiveGateway id="Gateway_1" />
8+
</bpmn:adHocSubProcess>
9+
<bpmn:adHocSubProcess id="AdHocSubProcess_2">
10+
<bpmn:incoming>Flow_1ou4hct</bpmn:incoming>
11+
<bpmn:outgoing>Flow_13154v0</bpmn:outgoing>
12+
<bpmn:startEvent id="StartEvent_1" />
13+
<bpmn:endEvent id="EndEvent_1" />
14+
</bpmn:adHocSubProcess>
15+
<bpmn:startEvent id="Event_0mr52st">
16+
<bpmn:outgoing>Flow_10nxbza</bpmn:outgoing>
17+
</bpmn:startEvent>
18+
<bpmn:sequenceFlow id="Flow_10nxbza" sourceRef="Event_0mr52st" targetRef="AdHocSubProcess_1" />
19+
<bpmn:endEvent id="Event_0wm9vtj">
20+
<bpmn:incoming>Flow_0lkuuix</bpmn:incoming>
21+
</bpmn:endEvent>
22+
<bpmn:sequenceFlow id="Flow_0lkuuix" sourceRef="AdHocSubProcess_1" targetRef="Event_0wm9vtj" />
23+
<bpmn:endEvent id="Event_0suixnq">
24+
<bpmn:incoming>Flow_13154v0</bpmn:incoming>
25+
</bpmn:endEvent>
26+
<bpmn:sequenceFlow id="Flow_13154v0" sourceRef="AdHocSubProcess_2" targetRef="Event_0suixnq" />
27+
<bpmn:startEvent id="Event_07z9trq">
28+
<bpmn:outgoing>Flow_1ou4hct</bpmn:outgoing>
29+
</bpmn:startEvent>
30+
<bpmn:sequenceFlow id="Flow_1ou4hct" sourceRef="Event_07z9trq" targetRef="AdHocSubProcess_2" />
31+
</bpmn:process>
32+
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
33+
<bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Process">
34+
<bpmndi:BPMNShape id="Event_0mr52st_di" bpmnElement="Event_0mr52st">
35+
<dc:Bounds x="152" y="167" width="36" height="36" />
36+
</bpmndi:BPMNShape>
37+
<bpmndi:BPMNShape id="Event_0wm9vtj_di" bpmnElement="Event_0wm9vtj">
38+
<dc:Bounds x="642" y="167" width="36" height="36" />
39+
</bpmndi:BPMNShape>
40+
<bpmndi:BPMNShape id="Event_0suixnq_di" bpmnElement="Event_0suixnq">
41+
<dc:Bounds x="642" y="412" width="36" height="36" />
42+
</bpmndi:BPMNShape>
43+
<bpmndi:BPMNShape id="BPMNShape_1gwtdho" bpmnElement="Event_07z9trq">
44+
<dc:Bounds x="152" y="412" width="36" height="36" />
45+
</bpmndi:BPMNShape>
46+
<bpmndi:BPMNShape id="Activity_0r5vbjt_di" bpmnElement="AdHocSubProcess_1" isExpanded="true">
47+
<dc:Bounds x="239" y="85" width="350" height="200" />
48+
</bpmndi:BPMNShape>
49+
<bpmndi:BPMNShape id="Gateway_1pywujg_di" bpmnElement="Gateway_1" isMarkerVisible="true">
50+
<dc:Bounds x="385" y="165" width="50" height="50" />
51+
</bpmndi:BPMNShape>
52+
<bpmndi:BPMNShape id="BPMNShape_12ehw8f" bpmnElement="AdHocSubProcess_2" isExpanded="true">
53+
<dc:Bounds x="239" y="330" width="350" height="200" />
54+
</bpmndi:BPMNShape>
55+
<bpmndi:BPMNShape id="Event_1q9v7as_di" bpmnElement="StartEvent_1">
56+
<dc:Bounds x="321" y="407" width="36" height="36" />
57+
</bpmndi:BPMNShape>
58+
<bpmndi:BPMNShape id="Event_1ynz3sw_di" bpmnElement="EndEvent_1">
59+
<dc:Bounds x="491" y="407" width="36" height="36" />
60+
</bpmndi:BPMNShape>
61+
<bpmndi:BPMNEdge id="Flow_10nxbza_di" bpmnElement="Flow_10nxbza">
62+
<di:waypoint x="188" y="185" />
63+
<di:waypoint x="239" y="185" />
64+
</bpmndi:BPMNEdge>
65+
<bpmndi:BPMNEdge id="Flow_0lkuuix_di" bpmnElement="Flow_0lkuuix">
66+
<di:waypoint x="589" y="185" />
67+
<di:waypoint x="642" y="185" />
68+
</bpmndi:BPMNEdge>
69+
<bpmndi:BPMNEdge id="Flow_13154v0_di" bpmnElement="Flow_13154v0">
70+
<di:waypoint x="589" y="430" />
71+
<di:waypoint x="642" y="430" />
72+
</bpmndi:BPMNEdge>
73+
<bpmndi:BPMNEdge id="Flow_1ou4hct_di" bpmnElement="Flow_1ou4hct">
74+
<di:waypoint x="188" y="430" />
75+
<di:waypoint x="239" y="430" />
76+
</bpmndi:BPMNEdge>
77+
</bpmndi:BPMNPlane>
78+
</bpmndi:BPMNDiagram>
79+
</bpmn:definitions>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,216 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" id="Definitions_1uy91uy" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Modeler" exporterVersion="5.34.0-dev">
3+
<bpmn:process id="Process_1" isExecutable="true">
4+
<bpmn:adHocSubProcess id="AdHocSubProcess" name="AD_HOC">
5+
<bpmn:incoming>Flow_1l3jt8q</bpmn:incoming>
6+
<bpmn:outgoing>Flow_2</bpmn:outgoing>
7+
<bpmn:task id="Task_1" name="TASK" />
8+
</bpmn:adHocSubProcess>
9+
<bpmn:startEvent id="StartEvent">
10+
<bpmn:outgoing>Flow_1l3jt8q</bpmn:outgoing>
11+
</bpmn:startEvent>
12+
<bpmn:endEvent id="EndEvent">
13+
<bpmn:incoming>Flow_2</bpmn:incoming>
14+
</bpmn:endEvent>
15+
<bpmn:sequenceFlow id="Flow_2" sourceRef="AdHocSubProcess" targetRef="EndEvent" />
16+
<bpmn:adHocSubProcess id="Activity_0c2e7ft" name="AD_HOC">
17+
<bpmn:incoming>Flow_1ffgn4y</bpmn:incoming>
18+
<bpmn:outgoing>Flow_0dazpv6</bpmn:outgoing>
19+
<bpmn:task id="Activity_19ptm9f" name="TASK">
20+
<bpmn:outgoing>Flow_1f9tcne</bpmn:outgoing>
21+
</bpmn:task>
22+
<bpmn:exclusiveGateway id="Gateway_1p49yqb">
23+
<bpmn:incoming>Flow_1f9tcne</bpmn:incoming>
24+
</bpmn:exclusiveGateway>
25+
<bpmn:sequenceFlow id="Flow_1f9tcne" sourceRef="Activity_19ptm9f" targetRef="Gateway_1p49yqb" />
26+
</bpmn:adHocSubProcess>
27+
<bpmn:endEvent id="Event_0pmj5ao">
28+
<bpmn:incoming>Flow_0dazpv6</bpmn:incoming>
29+
</bpmn:endEvent>
30+
<bpmn:sequenceFlow id="Flow_0dazpv6" sourceRef="Activity_0c2e7ft" targetRef="Event_0pmj5ao" />
31+
<bpmn:adHocSubProcess id="Activity_1ev6kys" name="AD_HOC">
32+
<bpmn:incoming>Flow_1vazpv4</bpmn:incoming>
33+
<bpmn:outgoing>Flow_18m4wsb</bpmn:outgoing>
34+
<bpmn:subProcess id="Activity_0duxw0q" name="TASK">
35+
<bpmn:startEvent id="Event_169xhrz">
36+
<bpmn:outgoing>Flow_0vsg4m8</bpmn:outgoing>
37+
</bpmn:startEvent>
38+
<bpmn:endEvent id="Event_052dfxo">
39+
<bpmn:incoming>Flow_0vsg4m8</bpmn:incoming>
40+
</bpmn:endEvent>
41+
<bpmn:sequenceFlow id="Flow_0vsg4m8" sourceRef="Event_169xhrz" targetRef="Event_052dfxo" />
42+
</bpmn:subProcess>
43+
</bpmn:adHocSubProcess>
44+
<bpmn:endEvent id="Event_10rw9yq">
45+
<bpmn:incoming>Flow_18m4wsb</bpmn:incoming>
46+
</bpmn:endEvent>
47+
<bpmn:sequenceFlow id="Flow_18m4wsb" sourceRef="Activity_1ev6kys" targetRef="Event_10rw9yq" />
48+
<bpmn:adHocSubProcess id="Activity_02eg4j6" name="AD_HOC">
49+
<bpmn:incoming>Flow_0oigcta</bpmn:incoming>
50+
<bpmn:outgoing>Flow_0o86f75</bpmn:outgoing>
51+
<bpmn:exclusiveGateway id="Gateway_0pa9x46">
52+
<bpmn:incoming>Flow_1xq2cqb</bpmn:incoming>
53+
</bpmn:exclusiveGateway>
54+
<bpmn:sequenceFlow id="Flow_1xq2cqb" sourceRef="Activity_1wo0jn9" targetRef="Gateway_0pa9x46" />
55+
<bpmn:subProcess id="Activity_1wo0jn9" name="TASK">
56+
<bpmn:outgoing>Flow_1xq2cqb</bpmn:outgoing>
57+
<bpmn:startEvent id="Event_1uigt4t">
58+
<bpmn:outgoing>Flow_1pqqney</bpmn:outgoing>
59+
</bpmn:startEvent>
60+
<bpmn:endEvent id="Event_11uok3r">
61+
<bpmn:incoming>Flow_1pqqney</bpmn:incoming>
62+
</bpmn:endEvent>
63+
<bpmn:sequenceFlow id="Flow_1pqqney" sourceRef="Event_1uigt4t" targetRef="Event_11uok3r" />
64+
</bpmn:subProcess>
65+
</bpmn:adHocSubProcess>
66+
<bpmn:endEvent id="Event_04ze5ig">
67+
<bpmn:incoming>Flow_0o86f75</bpmn:incoming>
68+
</bpmn:endEvent>
69+
<bpmn:sequenceFlow id="Flow_0o86f75" sourceRef="Activity_02eg4j6" targetRef="Event_04ze5ig" />
70+
<bpmn:sequenceFlow id="Flow_1l3jt8q" sourceRef="StartEvent" targetRef="AdHocSubProcess" />
71+
<bpmn:startEvent id="Event_1ltpwcq">
72+
<bpmn:outgoing>Flow_1vazpv4</bpmn:outgoing>
73+
</bpmn:startEvent>
74+
<bpmn:startEvent id="Event_0p5whco">
75+
<bpmn:outgoing>Flow_1ffgn4y</bpmn:outgoing>
76+
</bpmn:startEvent>
77+
<bpmn:startEvent id="Event_010tu5m">
78+
<bpmn:outgoing>Flow_0oigcta</bpmn:outgoing>
79+
</bpmn:startEvent>
80+
<bpmn:sequenceFlow id="Flow_0oigcta" sourceRef="Event_010tu5m" targetRef="Activity_02eg4j6" />
81+
<bpmn:sequenceFlow id="Flow_1ffgn4y" sourceRef="Event_0p5whco" targetRef="Activity_0c2e7ft" />
82+
<bpmn:sequenceFlow id="Flow_1vazpv4" sourceRef="Event_1ltpwcq" targetRef="Activity_1ev6kys" />
83+
</bpmn:process>
84+
<bpmndi:BPMNDiagram id="BPMNDiagram_1">
85+
<bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Process_1">
86+
<bpmndi:BPMNShape id="BPMNShape_14hzqm4" bpmnElement="Event_1ltpwcq">
87+
<dc:Bounds x="172" y="412" width="36" height="36" />
88+
</bpmndi:BPMNShape>
89+
<bpmndi:BPMNShape id="EndEvent_di" bpmnElement="EndEvent">
90+
<dc:Bounds x="732" y="162" width="36" height="36" />
91+
</bpmndi:BPMNShape>
92+
<bpmndi:BPMNShape id="BPMNShape_0pfyzs7" bpmnElement="Event_0pmj5ao">
93+
<dc:Bounds x="732" y="652" width="36" height="36" />
94+
</bpmndi:BPMNShape>
95+
<bpmndi:BPMNShape id="BPMNShape_160k0vm" bpmnElement="Event_10rw9yq">
96+
<dc:Bounds x="732" y="412" width="36" height="36" />
97+
</bpmndi:BPMNShape>
98+
<bpmndi:BPMNShape id="BPMNShape_0o50cnl" bpmnElement="Event_04ze5ig">
99+
<dc:Bounds x="732" y="902" width="36" height="36" />
100+
</bpmndi:BPMNShape>
101+
<bpmndi:BPMNShape id="StartEvent_di" bpmnElement="StartEvent">
102+
<dc:Bounds x="172" y="162" width="36" height="36" />
103+
</bpmndi:BPMNShape>
104+
<bpmndi:BPMNShape id="BPMNShape_0ep1jvx" bpmnElement="Event_0p5whco">
105+
<dc:Bounds x="172" y="652" width="36" height="36" />
106+
</bpmndi:BPMNShape>
107+
<bpmndi:BPMNShape id="BPMNShape_14u9eiu" bpmnElement="Event_010tu5m">
108+
<dc:Bounds x="172" y="902" width="36" height="36" />
109+
</bpmndi:BPMNShape>
110+
<bpmndi:BPMNShape id="AdHocSubProcess_di" bpmnElement="AdHocSubProcess" isExpanded="true">
111+
<dc:Bounds x="310" y="80" width="350" height="200" />
112+
<bpmndi:BPMNLabel />
113+
</bpmndi:BPMNShape>
114+
<bpmndi:BPMNShape id="Task_1_di" bpmnElement="Task_1">
115+
<dc:Bounds x="430" y="140" width="100" height="80" />
116+
<bpmndi:BPMNLabel />
117+
</bpmndi:BPMNShape>
118+
<bpmndi:BPMNShape id="BPMNShape_1uh13pb" bpmnElement="Activity_02eg4j6" isExpanded="true">
119+
<dc:Bounds x="310" y="820" width="350" height="200" />
120+
<bpmndi:BPMNLabel />
121+
</bpmndi:BPMNShape>
122+
<bpmndi:BPMNShape id="Gateway_0pa9x46_di" bpmnElement="Gateway_0pa9x46" isMarkerVisible="true">
123+
<dc:Bounds x="535" y="895" width="50" height="50" />
124+
</bpmndi:BPMNShape>
125+
<bpmndi:BPMNShape id="Activity_01aukam_di" bpmnElement="Activity_1wo0jn9">
126+
<dc:Bounds x="380" y="880" width="100" height="80" />
127+
</bpmndi:BPMNShape>
128+
<bpmndi:BPMNEdge id="Flow_1xq2cqb_di" bpmnElement="Flow_1xq2cqb">
129+
<di:waypoint x="480" y="920" />
130+
<di:waypoint x="535" y="920" />
131+
</bpmndi:BPMNEdge>
132+
<bpmndi:BPMNShape id="BPMNShape_0glp1cn" bpmnElement="Activity_1ev6kys" isExpanded="true">
133+
<dc:Bounds x="310" y="325" width="350" height="200" />
134+
<bpmndi:BPMNLabel />
135+
</bpmndi:BPMNShape>
136+
<bpmndi:BPMNShape id="Activity_0b1ndfe_di" bpmnElement="Activity_0duxw0q">
137+
<dc:Bounds x="430" y="385" width="100" height="80" />
138+
</bpmndi:BPMNShape>
139+
<bpmndi:BPMNShape id="BPMNShape_0c0i6zb" bpmnElement="Activity_0c2e7ft" isExpanded="true">
140+
<dc:Bounds x="310" y="575" width="350" height="200" />
141+
<bpmndi:BPMNLabel />
142+
</bpmndi:BPMNShape>
143+
<bpmndi:BPMNShape id="Gateway_1p49yqb_di" bpmnElement="Gateway_1p49yqb" isMarkerVisible="true">
144+
<dc:Bounds x="525" y="650" width="50" height="50" />
145+
</bpmndi:BPMNShape>
146+
<bpmndi:BPMNShape id="BPMNShape_171d9qp" bpmnElement="Activity_19ptm9f">
147+
<dc:Bounds x="380" y="635" width="100" height="80" />
148+
<bpmndi:BPMNLabel />
149+
</bpmndi:BPMNShape>
150+
<bpmndi:BPMNEdge id="Flow_1f9tcne_di" bpmnElement="Flow_1f9tcne">
151+
<di:waypoint x="480" y="675" />
152+
<di:waypoint x="525" y="675" />
153+
</bpmndi:BPMNEdge>
154+
<bpmndi:BPMNEdge id="Flow_2_di" bpmnElement="Flow_2">
155+
<di:waypoint x="660" y="180" />
156+
<di:waypoint x="732" y="180" />
157+
</bpmndi:BPMNEdge>
158+
<bpmndi:BPMNEdge id="BPMNEdge_0z3vx3q" bpmnElement="Flow_18m4wsb">
159+
<di:waypoint x="660" y="430" />
160+
<di:waypoint x="732" y="430" />
161+
</bpmndi:BPMNEdge>
162+
<bpmndi:BPMNEdge id="BPMNEdge_0psqeqn" bpmnElement="Flow_0dazpv6">
163+
<di:waypoint x="660" y="670" />
164+
<di:waypoint x="732" y="670" />
165+
</bpmndi:BPMNEdge>
166+
<bpmndi:BPMNEdge id="BPMNEdge_1ymg5ct" bpmnElement="Flow_0o86f75">
167+
<di:waypoint x="660" y="920" />
168+
<di:waypoint x="732" y="920" />
169+
</bpmndi:BPMNEdge>
170+
<bpmndi:BPMNEdge id="Flow_1l3jt8q_di" bpmnElement="Flow_1l3jt8q">
171+
<di:waypoint x="208" y="180" />
172+
<di:waypoint x="310" y="180" />
173+
</bpmndi:BPMNEdge>
174+
<bpmndi:BPMNEdge id="Flow_1ffgn4y_di" bpmnElement="Flow_1ffgn4y">
175+
<di:waypoint x="208" y="670" />
176+
<di:waypoint x="310" y="670" />
177+
</bpmndi:BPMNEdge>
178+
<bpmndi:BPMNEdge id="Flow_0oigcta_di" bpmnElement="Flow_0oigcta">
179+
<di:waypoint x="208" y="920" />
180+
<di:waypoint x="310" y="920" />
181+
</bpmndi:BPMNEdge>
182+
<bpmndi:BPMNEdge id="Flow_1vazpv4_di" bpmnElement="Flow_1vazpv4">
183+
<di:waypoint x="208" y="430" />
184+
<di:waypoint x="310" y="430" />
185+
</bpmndi:BPMNEdge>
186+
</bpmndi:BPMNPlane>
187+
</bpmndi:BPMNDiagram>
188+
<bpmndi:BPMNDiagram id="BPMNDiagram_1jwfl31">
189+
<bpmndi:BPMNPlane id="BPMNPlane_1p3hxd9" bpmnElement="Activity_0duxw0q">
190+
<bpmndi:BPMNShape id="Event_169xhrz_di" bpmnElement="Event_169xhrz">
191+
<dc:Bounds x="272" y="182" width="36" height="36" />
192+
</bpmndi:BPMNShape>
193+
<bpmndi:BPMNShape id="Event_052dfxo_di" bpmnElement="Event_052dfxo">
194+
<dc:Bounds x="362" y="182" width="36" height="36" />
195+
</bpmndi:BPMNShape>
196+
<bpmndi:BPMNEdge id="Flow_0vsg4m8_di" bpmnElement="Flow_0vsg4m8">
197+
<di:waypoint x="308" y="200" />
198+
<di:waypoint x="362" y="200" />
199+
</bpmndi:BPMNEdge>
200+
</bpmndi:BPMNPlane>
201+
</bpmndi:BPMNDiagram>
202+
<bpmndi:BPMNDiagram id="BPMNDiagram_0momcfp">
203+
<bpmndi:BPMNPlane id="BPMNPlane_1uwdyyl" bpmnElement="Activity_1wo0jn9">
204+
<bpmndi:BPMNShape id="Event_1uigt4t_di" bpmnElement="Event_1uigt4t">
205+
<dc:Bounds x="152" y="82" width="36" height="36" />
206+
</bpmndi:BPMNShape>
207+
<bpmndi:BPMNShape id="Event_11uok3r_di" bpmnElement="Event_11uok3r">
208+
<dc:Bounds x="242" y="82" width="36" height="36" />
209+
</bpmndi:BPMNShape>
210+
<bpmndi:BPMNEdge id="Flow_1pqqney_di" bpmnElement="Flow_1pqqney">
211+
<di:waypoint x="188" y="100" />
212+
<di:waypoint x="242" y="100" />
213+
</bpmndi:BPMNEdge>
214+
</bpmndi:BPMNPlane>
215+
</bpmndi:BPMNDiagram>
216+
</bpmn:definitions>

0 commit comments

Comments
 (0)