1710 Rebase - Second Attempt
[so.git] / bpmn / MSOInfrastructureBPMN / src / main / resources / process / UpdateVfModuleInfra.bpmn
1 <?xml version="1.0" encoding="UTF-8"?>
2 <bpmn2:definitions xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:bpmn2="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:camunda="http://camunda.org/schema/1.0/bpmn" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="_F0omAMXGEeW834CKd-K10Q" targetNamespace="http://camunda.org/schema/1.0/bpmn" exporter="Camunda Modeler" exporterVersion="1.4.0" xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd">
3   <bpmn2:process id="UpdateVfModuleInfra" name="UpdateVfModuleInfra" isExecutable="true">
4     <bpmn2:scriptTask id="ScriptTask_1" name="Send Synch Response" scriptFormat="groovy">
5       <bpmn2:incoming>SequenceFlow_5</bpmn2:incoming>
6       <bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>
7       <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
8 def uvfm = new UpdateVfModuleInfra()
9 uvfm.sendSynchResponse(execution)]]></bpmn2:script>
10     </bpmn2:scriptTask>
11     <bpmn2:sequenceFlow id="SequenceFlow_2" name="" sourceRef="ScriptTask_1" targetRef="ScriptTask_7" />
12     <bpmn2:scriptTask id="ScriptTask_2" name="Pre-Process Request" scriptFormat="groovy">
13       <bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>
14       <bpmn2:outgoing>SequenceFlow_5</bpmn2:outgoing>
15       <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
16 def uvfm = new UpdateVfModuleInfra()
17 uvfm.preProcessRequest(execution)
18 ]]></bpmn2:script>
19     </bpmn2:scriptTask>
20     <bpmn2:sequenceFlow id="SequenceFlow_5" name="" sourceRef="ScriptTask_2" targetRef="ScriptTask_1" />
21     <bpmn2:scriptTask id="ScriptTask_7" name="DoUpdateVfModule (prep)" scriptFormat="groovy">
22       <bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>
23       <bpmn2:outgoing>SequenceFlow_9</bpmn2:outgoing>
24       <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
25 def uvfm = new UpdateVfModuleInfra()
26 uvfm.prepDoUpdateVfModule(execution)]]></bpmn2:script>
27     </bpmn2:scriptTask>
28     <bpmn2:sequenceFlow id="SequenceFlow_9" name="" sourceRef="ScriptTask_7" targetRef="ScriptTask_6" />
29     <bpmn2:callActivity id="CallActivity_1" name="Completion Handler" calledElement="CompleteMsoProcess">
30       <bpmn2:extensionElements>
31         <camunda:in source="UPDVfModI_CompletionHandlerRequest" target="CompleteMsoProcessRequest" />
32         <camunda:in source="mso-request-id" target="mso-request-id" />
33         <camunda:in source="mso-service-instance-id" target="mso-service-instance-id" />
34         <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled" />
35       </bpmn2:extensionElements>
36       <bpmn2:incoming>SequenceFlow_17</bpmn2:incoming>
37       <bpmn2:outgoing>SequenceFlow_14</bpmn2:outgoing>
38     </bpmn2:callActivity>
39     <bpmn2:sequenceFlow id="SequenceFlow_14" name="" sourceRef="CallActivity_1" targetRef="ScriptTask_4" />
40     <bpmn2:endEvent id="EndEvent_1" name="TheEnd">
41       <bpmn2:incoming>SequenceFlow_6</bpmn2:incoming>
42       <bpmn2:terminateEventDefinition id="_TerminateEventDefinition_5" />
43     </bpmn2:endEvent>
44     <bpmn2:scriptTask id="ScriptTask_4" name="Set Success Indicator" scriptFormat="groovy">
45       <bpmn2:incoming>SequenceFlow_14</bpmn2:incoming>
46       <bpmn2:outgoing>SequenceFlow_6</bpmn2:outgoing>
47       <bpmn2:script><![CDATA[// The following variable is checked by the unit test
48 execution.setVariable("UpdateVfModuleInfraSuccessIndicator", true)]]></bpmn2:script>
49     </bpmn2:scriptTask>
50     <bpmn2:sequenceFlow id="SequenceFlow_6" name="" sourceRef="ScriptTask_4" targetRef="EndEvent_1" />
51     <bpmn2:scriptTask id="ScriptTask_10" name="Completion Handler (prep)" scriptFormat="groovy">
52       <bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>
53       <bpmn2:outgoing>SequenceFlow_17</bpmn2:outgoing>
54       <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
55 def uvfm = new UpdateVfModuleInfra()
56 uvfm.completionHandlerPrep(execution, 'UPDVfModI_CompletionHandlerRequest')
57 ]]></bpmn2:script>
58     </bpmn2:scriptTask>
59     <bpmn2:sequenceFlow id="SequenceFlow_17" name="" sourceRef="ScriptTask_10" targetRef="CallActivity_1" />
60     <bpmn2:subProcess id="SubProcess_1" name="Error Handler" triggeredByEvent="true">
61       <bpmn2:startEvent id="StartEvent_3" name="Catch All Errors">
62         <bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>
63         <bpmn2:errorEventDefinition id="ErrorEventDefinition_1" />
64       </bpmn2:startEvent>
65       <bpmn2:sequenceFlow id="SequenceFlow_1" name="" sourceRef="StartEvent_3" targetRef="ScriptTask_3" />
66       <bpmn2:scriptTask id="ScriptTask_3" name="Fallout Handler (prep)" scriptFormat="groovy">
67         <bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>
68         <bpmn2:outgoing>SequenceFlow_7</bpmn2:outgoing>
69         <bpmn2:script><![CDATA[import org.openecomp.mso.bpmn.infrastructure.scripts.*
70 def uvfm = new UpdateVfModuleInfra()
71 uvfm.falloutHandlerPrep(execution, 'UPDVfModI_FalloutHandlerRequest')
72 ]]></bpmn2:script>
73       </bpmn2:scriptTask>
74       <bpmn2:sequenceFlow id="SequenceFlow_7" sourceRef="ScriptTask_3" targetRef="CallActivity_2" />
75       <bpmn2:callActivity id="CallActivity_2" name="Fallout Handler" calledElement="FalloutHandler">
76         <bpmn2:extensionElements>
77           <camunda:in source="UPDVfModI_FalloutHandlerRequest" target="FalloutHandlerRequest" />
78           <camunda:in source="mso-request-id" target="mso-request-id"/>
79           <camunda:in source="mso-service-instance-id" target="mso-service-instance-id"/>
80           <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled" />
81         </bpmn2:extensionElements>
82         <bpmn2:incoming>SequenceFlow_7</bpmn2:incoming>
83         <bpmn2:outgoing>SequenceFlow_19</bpmn2:outgoing>
84       </bpmn2:callActivity>
85       <bpmn2:endEvent id="EndEvent_2">
86         <bpmn2:incoming>SequenceFlow_19</bpmn2:incoming>
87         <bpmn2:terminateEventDefinition id="TerminateEventDefinition_1" />
88       </bpmn2:endEvent>
89       <bpmn2:sequenceFlow id="SequenceFlow_19" name="" sourceRef="CallActivity_2" targetRef="EndEvent_2" />
90     </bpmn2:subProcess>
91     <bpmn2:endEvent id="EndEvent_3">
92       <bpmn2:incoming>SequenceFlow_12</bpmn2:incoming>
93       <bpmn2:terminateEventDefinition id="TerminateEventDefinition_2" />
94     </bpmn2:endEvent>
95     <bpmn2:boundaryEvent id="BoundaryEvent_1" name="" attachedToRef="SubProcess_1">
96       <bpmn2:outgoing>SequenceFlow_12</bpmn2:outgoing>
97       <bpmn2:errorEventDefinition id="ErrorEventDefinition_2" />
98     </bpmn2:boundaryEvent>
99     <bpmn2:sequenceFlow id="SequenceFlow_12" name="" sourceRef="BoundaryEvent_1" targetRef="EndEvent_3" />
100     <bpmn2:startEvent id="StartEvent_1" name="Start">
101       <bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>
102     </bpmn2:startEvent>
103     <bpmn2:sequenceFlow id="SequenceFlow_4" name="" sourceRef="StartEvent_1" targetRef="ScriptTask_2" />
104     <bpmn2:callActivity id="ScriptTask_6" name="DoUpdateVfModule" calledElement="DoUpdateVfModule">
105       <bpmn2:extensionElements>
106         <camunda:in source="UPDVfModI_requestId" target="msoRequestId" />
107         <camunda:in source="isDebugLogEnabled" target="isDebugLogEnabled" />
108         <camunda:out source="WorkflowException" target="WorkflowException" />
109         <camunda:in source="isVidRequest" target="isVidRequest" />
110         <camunda:in source="UPDVfModI_vnfType" target="vnfType" />
111         <camunda:in source="UPDVfModI_vnfName" target="vnfName" />
112         <camunda:in source="UPDVfModI_vnfId" target="vnfId" />
113         <camunda:in source="UPDVfModI_vfModuleName" target="vfModuleName" />
114         <camunda:in source="UPDVfModI_vfModuleType" target="vfModuleType" />
115         <camunda:in source="UPDVfModI_vfModuleId" target="vfModuleId" />
116         <camunda:in source="UPDVfModI_volumeGroupId" target="volumeGroupId" />
117         <camunda:in source="UPDVfModI_volumeGroupName" target="volumeGroupName" />
118         <camunda:in source="UPDVfModI_isBaseVfModule" target="isBaseVfModule" />
119         <camunda:in source="UPDVfModI_asdcServiceModelVersion" target="asdcServiceModelVersion" />
120         <camunda:in source="UPDVfModI_serviceInstanceId" target="serviceInstanceId" />
121         <camunda:in source="UPDVfModI_serviceModelInfo" target="serviceModelInfo" />
122         <camunda:in source="UPDVfModI_vnfModelInfo" target="vnfModelInfo" />
123         <camunda:in source="UPDVfModI_globalSubscriberId" target="globalSubscriberId" />
124         <camunda:in source="UPDVfModI_lcpCloudRegionId" target="lcpCloudRegionId" />
125         <camunda:in source="UPDVfModI_tenantId" target="tenantId" />
126         <camunda:in source="UPDVfModI_sdncVersion" target="sdncVersion" />
127         <camunda:in source="UPDVfModI_vfModuleModelInfo" target="vfModuleModelInfo" />
128         <camunda:in source="UPDVfModI_usePreload" target="usePreload" />
129         <camunda:in source="UPDVfModI_vfModuleInputParams" target="vfModuleInputParams" />
130       </bpmn2:extensionElements>
131       <bpmn2:incoming>SequenceFlow_9</bpmn2:incoming>
132       <bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>
133     </bpmn2:callActivity>
134     <bpmn2:sequenceFlow id="SequenceFlow_3" name="" sourceRef="ScriptTask_6" targetRef="ScriptTask_10" />
135   </bpmn2:process>
136   <bpmn2:error id="Error_1" name="MSOWorkflowException" errorCode="MSOWorkflowException" />
137   <bpmndi:BPMNDiagram id="BPMNDiagram_1">
138     <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="UpdateVfModuleInfra">
139       <bpmndi:BPMNShape id="_BPMNShape_StartEvent_50" bpmnElement="StartEvent_1">
140         <dc:Bounds x="149" y="72" width="36" height="36" />
141         <bpmndi:BPMNLabel>
142           <dc:Bounds x="150" y="113" width="34" height="22" />
143         </bpmndi:BPMNLabel>
144       </bpmndi:BPMNShape>
145       <bpmndi:BPMNShape id="_BPMNShape_EndEvent_125" bpmnElement="EndEvent_1">
146         <dc:Bounds x="605" y="370" width="36" height="36" />
147         <bpmndi:BPMNLabel>
148           <dc:Bounds x="598" y="411" width="50" height="22" />
149         </bpmndi:BPMNLabel>
150       </bpmndi:BPMNShape>
151       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_4" bpmnElement="SequenceFlow_4" sourceElement="_BPMNShape_StartEvent_50" targetElement="_BPMNShape_ScriptTask_124">
152         <di:waypoint xsi:type="dc:Point" x="185" y="90" />
153         <di:waypoint xsi:type="dc:Point" x="299" y="90" />
154         <bpmndi:BPMNLabel>
155           <dc:Bounds x="235" y="90" width="6" height="6" />
156         </bpmndi:BPMNLabel>
157       </bpmndi:BPMNEdge>
158       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_124" bpmnElement="ScriptTask_2">
159         <dc:Bounds x="299" y="50" width="100" height="80" />
160       </bpmndi:BPMNShape>
161       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_5" bpmnElement="SequenceFlow_5" sourceElement="_BPMNShape_ScriptTask_124" targetElement="_BPMNShape_ScriptTask_125">
162         <di:waypoint xsi:type="dc:Point" x="399" y="90" />
163         <di:waypoint xsi:type="dc:Point" x="449" y="90" />
164         <bpmndi:BPMNLabel>
165           <dc:Bounds x="433" y="90" width="6" height="6" />
166         </bpmndi:BPMNLabel>
167       </bpmndi:BPMNEdge>
168       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_125" bpmnElement="ScriptTask_1">
169         <dc:Bounds x="449" y="50" width="100" height="80" />
170       </bpmndi:BPMNShape>
171       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_2" bpmnElement="SequenceFlow_2" sourceElement="_BPMNShape_ScriptTask_125" targetElement="_BPMNShape_ScriptTask_130">
172         <di:waypoint xsi:type="dc:Point" x="498" y="130" />
173         <di:waypoint xsi:type="dc:Point" x="498" y="160" />
174         <di:waypoint xsi:type="dc:Point" x="199" y="160" />
175         <di:waypoint xsi:type="dc:Point" x="199" y="190" />
176         <bpmndi:BPMNLabel>
177           <dc:Bounds x="717" y="169" width="6" height="6" />
178         </bpmndi:BPMNLabel>
179       </bpmndi:BPMNEdge>
180       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_127" bpmnElement="ScriptTask_4">
181         <dc:Bounds x="449" y="348" width="100" height="80" />
182       </bpmndi:BPMNShape>
183       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_6" bpmnElement="SequenceFlow_6" sourceElement="_BPMNShape_ScriptTask_127" targetElement="_BPMNShape_EndEvent_125">
184         <di:waypoint xsi:type="dc:Point" x="549" y="388" />
185         <di:waypoint xsi:type="dc:Point" x="605" y="388" />
186         <bpmndi:BPMNLabel>
187           <dc:Bounds x="723" y="186" width="6" height="6" />
188         </bpmndi:BPMNLabel>
189       </bpmndi:BPMNEdge>
190       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_130" bpmnElement="ScriptTask_7">
191         <dc:Bounds x="149" y="190" width="100" height="80" />
192       </bpmndi:BPMNShape>
193       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_133" bpmnElement="ScriptTask_10">
194         <dc:Bounds x="149" y="348" width="100" height="80" />
195       </bpmndi:BPMNShape>
196       <bpmndi:BPMNShape id="_BPMNShape_CallActivity_27" bpmnElement="CallActivity_1">
197         <dc:Bounds x="299" y="348" width="100" height="80" />
198       </bpmndi:BPMNShape>
199       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_17" bpmnElement="SequenceFlow_17" sourceElement="_BPMNShape_ScriptTask_133" targetElement="_BPMNShape_CallActivity_27">
200         <di:waypoint xsi:type="dc:Point" x="249" y="388" />
201         <di:waypoint xsi:type="dc:Point" x="299" y="388" />
202         <bpmndi:BPMNLabel>
203           <dc:Bounds x="271" y="394" width="6" height="6" />
204         </bpmndi:BPMNLabel>
205       </bpmndi:BPMNEdge>
206       <bpmndi:BPMNShape id="_BPMNShape_SubProcess_17" bpmnElement="SubProcess_1" isExpanded="true">
207         <dc:Bounds x="65" y="536" width="565" height="241" />
208       </bpmndi:BPMNShape>
209       <bpmndi:BPMNShape id="_BPMNShape_StartEvent_52" bpmnElement="StartEvent_3">
210         <dc:Bounds x="129" y="630" width="36" height="36" />
211         <bpmndi:BPMNLabel>
212           <dc:Bounds x="98" y="671" width="98" height="22" />
213         </bpmndi:BPMNLabel>
214       </bpmndi:BPMNShape>
215       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_136" bpmnElement="ScriptTask_3">
216         <dc:Bounds x="209" y="608" width="100" height="80" />
217       </bpmndi:BPMNShape>
218       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_1" bpmnElement="SequenceFlow_1" sourceElement="_BPMNShape_StartEvent_52" targetElement="_BPMNShape_ScriptTask_136">
219         <di:waypoint xsi:type="dc:Point" x="165" y="648" />
220         <di:waypoint xsi:type="dc:Point" x="209" y="648" />
221         <bpmndi:BPMNLabel>
222           <dc:Bounds x="209" y="948" width="6" height="6" />
223         </bpmndi:BPMNLabel>
224       </bpmndi:BPMNEdge>
225       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_7" bpmnElement="SequenceFlow_7" sourceElement="_BPMNShape_ScriptTask_136" targetElement="_BPMNShape_CallActivity_28">
226         <di:waypoint xsi:type="dc:Point" x="309" y="648" />
227         <di:waypoint xsi:type="dc:Point" x="377" y="648" />
228         <bpmndi:BPMNLabel>
229           <dc:Bounds x="325" y="648" width="0" height="0" />
230         </bpmndi:BPMNLabel>
231       </bpmndi:BPMNEdge>
232       <bpmndi:BPMNShape id="_BPMNShape_EndEvent_126" bpmnElement="EndEvent_2">
233         <dc:Bounds x="533" y="630" width="36" height="36" />
234         <bpmndi:BPMNLabel>
235           <dc:Bounds x="551" y="671" width="0" height="0" />
236         </bpmndi:BPMNLabel>
237       </bpmndi:BPMNShape>
238       <bpmndi:BPMNShape id="_BPMNShape_BoundaryEvent_43" bpmnElement="BoundaryEvent_1">
239         <dc:Bounds x="612" y="630" width="36" height="36" />
240         <bpmndi:BPMNLabel>
241           <dc:Bounds x="627" y="671" width="6" height="6" />
242         </bpmndi:BPMNLabel>
243       </bpmndi:BPMNShape>
244       <bpmndi:BPMNShape id="_BPMNShape_EndEvent_127" bpmnElement="EndEvent_3">
245         <dc:Bounds x="704" y="630" width="36" height="36" />
246         <bpmndi:BPMNLabel>
247           <dc:Bounds x="722" y="671" width="0" height="0" />
248         </bpmndi:BPMNLabel>
249       </bpmndi:BPMNShape>
250       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_12" bpmnElement="SequenceFlow_12" sourceElement="_BPMNShape_BoundaryEvent_43" targetElement="_BPMNShape_EndEvent_127">
251         <di:waypoint xsi:type="dc:Point" x="648" y="648" />
252         <di:waypoint xsi:type="dc:Point" x="704" y="648" />
253         <bpmndi:BPMNLabel>
254           <dc:Bounds x="693" y="948" width="6" height="6" />
255         </bpmndi:BPMNLabel>
256       </bpmndi:BPMNEdge>
257       <bpmndi:BPMNShape id="_BPMNShape_CallActivity_28" bpmnElement="CallActivity_2">
258         <dc:Bounds x="377" y="608" width="100" height="80" />
259       </bpmndi:BPMNShape>
260       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_14" bpmnElement="SequenceFlow_14" sourceElement="_BPMNShape_CallActivity_27" targetElement="_BPMNShape_ScriptTask_127">
261         <di:waypoint xsi:type="dc:Point" x="399" y="388" />
262         <di:waypoint xsi:type="dc:Point" x="449" y="388" />
263         <bpmndi:BPMNLabel>
264           <dc:Bounds x="439" y="356" width="6" height="6" />
265         </bpmndi:BPMNLabel>
266       </bpmndi:BPMNEdge>
267       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_19" bpmnElement="SequenceFlow_19" sourceElement="_BPMNShape_CallActivity_28" targetElement="_BPMNShape_EndEvent_126">
268         <di:waypoint xsi:type="dc:Point" x="477" y="648" />
269         <di:waypoint xsi:type="dc:Point" x="533" y="648" />
270         <bpmndi:BPMNLabel>
271           <dc:Bounds x="373" y="456" width="6" height="6" />
272         </bpmndi:BPMNLabel>
273       </bpmndi:BPMNEdge>
274       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_9" bpmnElement="SequenceFlow_9" sourceElement="_BPMNShape_ScriptTask_130" targetElement="_BPMNShape_ScriptTask_181">
275         <di:waypoint xsi:type="dc:Point" x="249" y="230" />
276         <di:waypoint xsi:type="dc:Point" x="299" y="230" />
277         <bpmndi:BPMNLabel>
278           <dc:Bounds x="274" y="205" width="0" height="0" />
279         </bpmndi:BPMNLabel>
280       </bpmndi:BPMNEdge>
281       <bpmndi:BPMNShape id="_BPMNShape_ScriptTask_181" bpmnElement="ScriptTask_6">
282         <dc:Bounds x="299" y="190" width="100" height="80" />
283       </bpmndi:BPMNShape>
284       <bpmndi:BPMNEdge id="BPMNEdge_SequenceFlow_3" bpmnElement="SequenceFlow_3" sourceElement="_BPMNShape_ScriptTask_181" targetElement="_BPMNShape_ScriptTask_133">
285         <di:waypoint xsi:type="dc:Point" x="399" y="231" />
286         <di:waypoint xsi:type="dc:Point" x="624" y="233" />
287         <di:waypoint xsi:type="dc:Point" x="624" y="294" />
288         <di:waypoint xsi:type="dc:Point" x="99" y="294" />
289         <di:waypoint xsi:type="dc:Point" x="99" y="388" />
290         <di:waypoint xsi:type="dc:Point" x="149" y="388" />
291         <bpmndi:BPMNLabel>
292           <dc:Bounds x="503" y="232" width="0" height="0" />
293         </bpmndi:BPMNLabel>
294       </bpmndi:BPMNEdge>
295     </bpmndi:BPMNPlane>
296   </bpmndi:BPMNDiagram>
297 </bpmn2:definitions>