<?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://activiti.org/bpmn20" id="review-definitions">
  <process id="documentApprovingProcess" name="Утверждение документа" isExecutable="true">
    <startEvent id="startevent1" name="Start"></startEvent>
    <userTask id="createDocument" name="Создание документа" activiti:assignee="${initiator}">
		<extensionElements>
        <activiti:taskListener event="create" class="org.activiti.engine.impl.bpmn.listener.ScriptTaskListener">
          <activiti:field name="language">
            <activiti:string><![CDATA[groovy]]></activiti:string>
          </activiti:field>
          <activiti:field name="script">
            <activiti:expression>docVersion = task.setVariable("documentVersion", "")
			</activiti:expression>
          </activiti:field>
        </activiti:taskListener>
      </extensionElements>
    </userTask>
    <sequenceFlow id="fromStartToCreate" sourceRef="startevent1" targetRef="createDocument"></sequenceFlow>
    <exclusiveGateway id="deleteDocumentExclusivegateway" name="Exclusive Gateway"></exclusiveGateway>
    <sequenceFlow id="fromStartToDeleteGateway" sourceRef="createDocument" targetRef="deleteDocumentExclusivegateway"></sequenceFlow>
    <endEvent id="endevent1" name="End"></endEvent>
    <sequenceFlow id="fromDeleteToEnd1" sourceRef="deleteDocumentExclusivegateway" targetRef="endevent1">
      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${deleteDocument == "true"}]]></conditionExpression>
    </sequenceFlow>
	
	<userTask id="reworkDocument" name="Доработка документа" activiti:assignee="${initiator}"></userTask>
  
	<sequenceFlow id="fromReworkToDelete" sourceRef="reworkDocument" targetRef="deleteDocumentExclusivegateway"></sequenceFlow>
	
  
	<startDescriptionTasks> </startDescriptionTasks>
	
    <endEvent id="endevent2" name="End"></endEvent>

    


	<sequenceFlow id="finalFlow" sourceRef="finalApprovementExclusivegateway" targetRef="endevent2">
      <conditionExpression xsi:type="tFormalExpression"><![CDATA[${orderApproved == "true"}]]></conditionExpression>
    </sequenceFlow>
	
  </process>

</definitions>