If you want to specify a completion condition that enables the forEach activity to

Using Parallel Flow in a BPEL Process 9-21 Example 9–12 forEach Activity - Sequential faultHandlers catch faultName=bpel:invalidBranchCondition sequence assign copy frominvalidBranchCondition happenedfrom tooutput.payloadto copy assign reply name=replyOutput partnerLink=client portType=tns:Test operation=process variable=output sequence catch faultHandlers sequence -- pick input from requestor -- receive name=receive createInstance=yes partnerLink=client portType=tns:Test operation=process variable=input assign copy from3from torequest.payloadto copy copy fromfrom tooutput.payloadto copy assign forEach counterName=i parallel=no startCounterValueinput.payloadtns:startCounter+1startCounterValue finalCounterValueinput.payloadtns:finalCounter+1finalCounterValue completionCondition branchesinput.payloadtns:branches+1branches completionCondition scope name=scope1 partnerLinks partnerLink name=DummyService partnerLinkType=tns:DummyService myRole=DummyServiceClient partnerRole=DummyServiceProvider partnerLinks sequence assign copy fromconcatoutput.payload, i, Afrom tooutput.payloadto copy assign invoke name=invokeDummyService partnerLink=DummyService portType=tns:DummyPortType operation=initiate inputVariable=request receive name=receiveFromDummyService partnerLink=DummyService portType=tns:DummyCallbackPortType operation=onResult variable=response assign copy fromconcatoutput.payload, i, Bfrom tooutput.payloadto 9-22 Oracle Fusion Middleware Developers Guide for Oracle SOA Suite copy assign sequence scope forEach -- respond output to requestor -- reply name=replyOutput partnerLink=client portType=tns:Test operation=process variable=output sequence Example 9–13 shows the .bpel file after design is complete for a parallel forEach activity. Example 9–13 forEach Activity - Parallel sequence -- pick input from requestor -- receive name=receive createInstance=yes partnerLink=client portType=tns:Test operation=process variable=input assign copy frominput.payloadtns:value1from torequest.payloadto copy copy fromfrom tooutput.payloadto copy assign forEach counterName=i parallel=yes startCounterValueinput.payloadtns:value1 + 1startCounterValue finalCounterValueinput.payloadtns:value2 + 2finalCounterValue scope name=scope1 partnerLinks partnerLink name=DummyService partnerLinkType=tns:DummyService myRole=DummyServiceClient partnerRole=DummyServiceProvider partnerLinks sequence assign copy fromconcatoutput.payload, Afrom tooutput.payloadto copy assign invoke name=invokeDummyService partnerLink=DummyService portType=tns:DummyPortType operation=initiate inputVariable=request receive name=receiveFromDummyService partnerLink=DummyService portType=tns:DummyCallbackPortType operation=onResult variable=response assign copy fromconcatoutput.payload, Bfrom tooutput.payloadto copy assign sequence scope