As we transition to the new Hyland Community, some post links may be temporarily disrupted as we finalize redirects. We apologize for the inconvenience and are working to resolve this as quickly as possible. Details.
<?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="Examples"> <signal id="alertSignal" name="alert" activiti:scope="processInstance"></signal> <message id="actionOnAcceptedLR" name="actionOnAcceptedLR"></message> <process id="demoProcessDefinition" name="demoProcessDefinition" isExecutable="true"> <subProcess id="subprocess1" name="Sub Process"> <startEvent id="startevent2" name="Start"></startEvent> <eventBasedGateway id="eventgateway1" name="Event Gateway"></eventBasedGateway> <sequenceFlow id="flow2" sourceRef="startevent2" targetRef="eventgateway1"></sequenceFlow> <intermediateCatchEvent id="messageintermediatecatchevent1" name="MessageCatchEvent"> <messageEventDefinition messageRef="actionOnAcceptedLR"></messageEventDefinition> </intermediateCatchEvent> <sequenceFlow id="flow3" sourceRef="eventgateway1" targetRef="messageintermediatecatchevent1"></sequenceFlow> <intermediateCatchEvent id="timerintermediatecatchevent1" name="TimerCatchEvent"> <timerEventDefinition> <timeDuration>P01D</timeDuration> </timerEventDefinition> </intermediateCatchEvent> <sequenceFlow id="flow4" sourceRef="eventgateway1" targetRef="timerintermediatecatchevent1"></sequenceFlow> <serviceTask id="servicetask1" name="Service Task" activiti:expression="${processDelegate.dummy1(execution)}"></serviceTask> <sequenceFlow id="flow5" sourceRef="messageintermediatecatchevent1" targetRef="servicetask1"></sequenceFlow> <serviceTask id="servicetask2" name="Service Task" activiti:expression="${processDelegate.dummy2(execution)}"></serviceTask> <sequenceFlow id="flow7" sourceRef="timerintermediatecatchevent1" targetRef="servicetask2"></sequenceFlow> <endEvent id="endevent2" name="End"></endEvent> <sequenceFlow id="flow8" sourceRef="servicetask2" targetRef="endevent2"></sequenceFlow> <intermediateCatchEvent id="signalintermediatecatchevent1" name="SignalCatchEvent"> <signalEventDefinition signalRef="alertSignal"></signalEventDefinition> </intermediateCatchEvent> <sequenceFlow id="flow11" sourceRef="signalintermediatecatchevent1" targetRef="servicetask3"></sequenceFlow> <serviceTask id="servicetask3" name="Service Task" activiti:expression="${processDelegate.dummy2(execution)}"></serviceTask> <sequenceFlow id="flow12" sourceRef="servicetask3" targetRef="endevent4"></sequenceFlow> <endEvent id="endevent4" name="End"></endEvent> <intermediateThrowEvent id="signalintermediatethrowevent1" name="SignalThrowEvent"> <signalEventDefinition signalRef="alertSignal"></signalEventDefinition> </intermediateThrowEvent> <sequenceFlow id="flow13" sourceRef="servicetask1" targetRef="signalintermediatethrowevent1"></sequenceFlow> </subProcess> <startEvent id="startevent1" name="Start"></startEvent> <sequenceFlow id="flow1" sourceRef="startevent1" targetRef="subprocess1"></sequenceFlow> <endEvent id="endevent3" name="End"></endEvent> <sequenceFlow id="flow9" sourceRef="subprocess1" targetRef="endevent3"></sequenceFlow> </process> <bpmndi:BPMNDiagram id="BPMNDiagram_demoProcessDefinition"> <bpmndi:BPMNPlane bpmnElement="demoProcessDefinition" id="BPMNPlane_demoProcessDefinition"> <bpmndi:BPMNShape bpmnElement="subprocess1" id="BPMNShape_subprocess1"> <omgdc:Bounds height="381.0" width="561.0" x="180.0" y="120.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="startevent2" id="BPMNShape_startevent2"> <omgdc:Bounds height="35.0" width="35.0" x="210.0" y="230.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="eventgateway1" id="BPMNShape_eventgateway1"> <omgdc:Bounds height="40.0" width="40.0" x="320.0" y="227.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="messageintermediatecatchevent1" id="BPMNShape_messageintermediatecatchevent1"> <omgdc:Bounds height="35.0" width="35.0" x="430.0" y="160.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="timerintermediatecatchevent1" id="BPMNShape_timerintermediatecatchevent1"> <omgdc:Bounds height="35.0" width="35.0" x="430.0" y="310.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="servicetask1" id="BPMNShape_servicetask1"> <omgdc:Bounds height="55.0" width="105.0" x="510.0" y="150.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="servicetask2" id="BPMNShape_servicetask2"> <omgdc:Bounds height="55.0" width="105.0" x="510.0" y="300.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="endevent2" id="BPMNShape_endevent2"> <omgdc:Bounds height="35.0" width="35.0" x="660.0" y="310.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="signalintermediatecatchevent1" id="BPMNShape_signalintermediatecatchevent1"> <omgdc:Bounds height="35.0" width="35.0" x="244.0" y="388.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="servicetask3" id="BPMNShape_servicetask3"> <omgdc:Bounds height="55.0" width="105.0" x="326.0" y="378.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="endevent4" id="BPMNShape_endevent4"> <omgdc:Bounds height="35.0" width="35.0" x="476.0" y="388.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="signalintermediatethrowevent1" id="BPMNShape_signalintermediatethrowevent1"> <omgdc:Bounds height="35.0" width="35.0" x="650.0" y="160.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1"> <omgdc:Bounds height="35.0" width="35.0" x="99.0" y="293.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="endevent3" id="BPMNShape_endevent3"> <omgdc:Bounds height="35.0" width="35.0" x="780.0" y="290.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2"> <omgdi:waypoint x="245.0" y="247.0"></omgdi:waypoint> <omgdi:waypoint x="320.0" y="247.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3"> <omgdi:waypoint x="340.0" y="227.0"></omgdi:waypoint> <omgdi:waypoint x="447.0" y="195.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4"> <omgdi:waypoint x="340.0" y="267.0"></omgdi:waypoint> <omgdi:waypoint x="447.0" y="310.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5"> <omgdi:waypoint x="465.0" y="177.0"></omgdi:waypoint> <omgdi:waypoint x="510.0" y="177.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow7" id="BPMNEdge_flow7"> <omgdi:waypoint x="465.0" y="327.0"></omgdi:waypoint> <omgdi:waypoint x="510.0" y="327.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow8" id="BPMNEdge_flow8"> <omgdi:waypoint x="615.0" y="327.0"></omgdi:waypoint> <omgdi:waypoint x="660.0" y="327.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow11" id="BPMNEdge_flow11"> <omgdi:waypoint x="279.0" y="405.0"></omgdi:waypoint> <omgdi:waypoint x="326.0" y="405.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow12" id="BPMNEdge_flow12"> <omgdi:waypoint x="431.0" y="405.0"></omgdi:waypoint> <omgdi:waypoint x="476.0" y="405.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow13" id="BPMNEdge_flow13"> <omgdi:waypoint x="615.0" y="177.0"></omgdi:waypoint> <omgdi:waypoint x="650.0" y="177.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1"> <omgdi:waypoint x="134.0" y="310.0"></omgdi:waypoint> <omgdi:waypoint x="180.0" y="310.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow9" id="BPMNEdge_flow9"> <omgdi:waypoint x="741.0" y="310.0"></omgdi:waypoint> <omgdi:waypoint x="780.0" y="307.0"></omgdi:waypoint> </bpmndi:BPMNEdge> </bpmndi:BPMNPlane> </bpmndi:BPMNDiagram> </definitions>
I think you are confusing Signal Throw Events, Signal Start Events and Event sub processes.An intermediate throw event must be inline, meaning, it must have both an incoming and an outgoing flow.
I have modified your process to be valid and you can see it below:
Now this is obvious a trivial example as there is no reason not to have the two service tasks follow on from each other, but in terms of signal flow, I think this gives you what you were looking for.
Greg