Files

105 lines
5.2 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<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" xmlns:pr="https://ontology.pernod-ricard.com/process/" id="defs_R2" targetNamespace="https://ontology.pernod-ricard.com/process/" exporter="generate_bpmn.py">
<bpmn:process id="R2" name="Validate instances against the shapes" isExecutable="false">
<bpmn:documentation>Validate instances against the shapes | Scope: Any instance graph in the validation perimeter. | Trigger: Instances have changed, shapes have changed, or a release is prepared.</bpmn:documentation>
<bpmn:startEvent id="start" name="Validation requested">
<bpmn:outgoing>flow_1</bpmn:outgoing>
</bpmn:startEvent>
<bpmn:scriptTask id="conforms" name="Compare the declared target version with the ontology version">
<bpmn:extensionElements>
<pr:rules>
<pr:rule>EV-010</pr:rule>
</pr:rules>
</bpmn:extensionElements>
<bpmn:incoming>flow_1</bpmn:incoming>
<bpmn:outgoing>flow_2</bpmn:outgoing>
</bpmn:scriptTask>
<bpmn:exclusiveGateway id="match" name="Versions match?">
<bpmn:incoming>flow_2</bpmn:incoming>
<bpmn:outgoing>flow_3</bpmn:outgoing>
<bpmn:outgoing>flow_4</bpmn:outgoing>
</bpmn:exclusiveGateway>
<bpmn:endEvent id="abort" name="Aborted on version mismatch">
<bpmn:incoming>flow_3</bpmn:incoming>
</bpmn:endEvent>
<bpmn:scriptTask id="run" name="Run the shape validation">
<bpmn:incoming>flow_4</bpmn:incoming>
<bpmn:outgoing>flow_5</bpmn:outgoing>
</bpmn:scriptTask>
<bpmn:exclusiveGateway id="violations" name="Any violation?">
<bpmn:incoming>flow_5</bpmn:incoming>
<bpmn:outgoing>flow_6</bpmn:outgoing>
<bpmn:outgoing>flow_7</bpmn:outgoing>
</bpmn:exclusiveGateway>
<bpmn:endEvent id="fail" name="Report returned with violations">
<bpmn:incoming>flow_6</bpmn:incoming>
</bpmn:endEvent>
<bpmn:endEvent id="ok" name="Instances conform">
<bpmn:incoming>flow_7</bpmn:incoming>
</bpmn:endEvent>
<bpmn:sequenceFlow id="flow_1" sourceRef="start" targetRef="conforms" />
<bpmn:sequenceFlow id="flow_2" sourceRef="conforms" targetRef="match" />
<bpmn:sequenceFlow id="flow_3" name="no" sourceRef="match" targetRef="abort" />
<bpmn:sequenceFlow id="flow_4" name="yes" sourceRef="match" targetRef="run" />
<bpmn:sequenceFlow id="flow_5" sourceRef="run" targetRef="violations" />
<bpmn:sequenceFlow id="flow_6" name="at least one" sourceRef="violations" targetRef="fail" />
<bpmn:sequenceFlow id="flow_7" name="none" sourceRef="violations" targetRef="ok" />
</bpmn:process>
<bpmndi:BPMNDiagram id="diagram_R2">
<bpmndi:BPMNPlane id="plane_R2" bpmnElement="R2">
<bpmndi:BPMNShape id="shape_start" bpmnElement="start">
<dc:Bounds x="60" y="80" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="shape_conforms" bpmnElement="conforms">
<dc:Bounds x="260" y="80" width="150" height="70" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="shape_match" bpmnElement="match">
<dc:Bounds x="460" y="80" width="50" height="50" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="shape_abort" bpmnElement="abort">
<dc:Bounds x="660" y="80" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="shape_run" bpmnElement="run">
<dc:Bounds x="660" y="210" width="150" height="70" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="shape_violations" bpmnElement="violations">
<dc:Bounds x="860" y="80" width="50" height="50" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="shape_fail" bpmnElement="fail">
<dc:Bounds x="1060" y="80" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNShape id="shape_ok" bpmnElement="ok">
<dc:Bounds x="1060" y="210" width="36" height="36" />
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge id="edge_flow_1" bpmnElement="flow_1">
<di:waypoint x="96" y="98" />
<di:waypoint x="260" y="115" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="edge_flow_2" bpmnElement="flow_2">
<di:waypoint x="410" y="115" />
<di:waypoint x="460" y="105" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="edge_flow_3" bpmnElement="flow_3">
<di:waypoint x="510" y="105" />
<di:waypoint x="660" y="98" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="edge_flow_4" bpmnElement="flow_4">
<di:waypoint x="510" y="105" />
<di:waypoint x="660" y="245" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="edge_flow_5" bpmnElement="flow_5">
<di:waypoint x="810" y="245" />
<di:waypoint x="860" y="105" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="edge_flow_6" bpmnElement="flow_6">
<di:waypoint x="910" y="105" />
<di:waypoint x="1060" y="98" />
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge id="edge_flow_7" bpmnElement="flow_7">
<di:waypoint x="910" y="105" />
<di:waypoint x="1060" y="228" />
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</bpmn:definitions>