<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI"
xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI"
typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath"
targetNamespace="http://www.activiti.org/test"> <!--
BPMN 2.0根节点是definitions节点。 这个元素中,可以定义多个流程定义
(不过我们建议每个文件只包含一个流程定义, 可以简化开发过程中的维护难度)。
一个空的流程定义看起来像下面这样。
注意,definitions元素 最少也要包含xmlns 和 targetNamespace的声明。
targetNamespace可以是任意值,它用来对流程实例进行分类。
--> <!--
process元素有两个属性:
id:这个属性是必须的, 它对应着Activiti ProcessDefinition对象的key属性。
‘id可以用来启动流程定义的流程实例, 通过RuntimeService的startProcessInstanceByKey方法。
实际中一般都使用这种方式启动流程。
name:这个属性是可选的, 对应ProcessDefinition的name属性。 引擎自己不会使用这个属性,
它可以用来在流程图上显示便于查看的名称。
--> <process id="myProcess" name="My process" isExecutable="true"> <!-- startEvent 开始事件, 是我们流程的入口 -->
<startEvent id="startevent1" name="Start"></startEvent> <!-- userTask 用户任务事件 , 是流程中与操作者相关的任务声明。 -->
<userTask id="usertask1" name="User Task"></userTask> <!-- endEvent 结束事件, 当流程达到结束事件时,整个流程就会结束 -->
<endEvent id="endevent1" name="End"></endEvent> <!-- sequenceFlow 连线, 这些元素都使用连线连接。 这些连线拥有source 和 target属性, 定义了连线的方向。 -->
<sequenceFlow id="flow1" sourceRef="startevent1" targetRef="usertask1"></sequenceFlow>
<sequenceFlow id="flow2" sourceRef="usertask1" targetRef="endevent1"></sequenceFlow>
</process>
<bpmndi:BPMNDiagram id="BPMNDiagram_myProcess"> <!--
以下是定义了一些流程事件的坐标
--> <bpmndi:BPMNPlane bpmnElement="myProcess" id="BPMNPlane_myProcess">
<bpmndi:BPMNShape bpmnElement="startevent1"
id="BPMNShape_startevent1">
<omgdc:Bounds height="35.0" width="35.0" x="60.0" y="130.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="usertask1" id="BPMNShape_usertask1">
<omgdc:Bounds height="55.0" width="105.0" x="190.0" y="119.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
<omgdc:Bounds height="35.0" width="35.0" x="390.0" y="130.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1">
<omgdi:waypoint x="95.0" y="147.0"></omgdi:waypoint>
<omgdi:waypoint x="190.0" y="146.0"></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
<omgdi:waypoint x="295.0" y="146.0"></omgdi:waypoint>
<omgdi:waypoint x="390.0" y="147.0"></omgdi:waypoint>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</definitions>