Dear colleagues,
Thank you for your help in my recent inquiries. Based on your input I
am no longer considering using gloablTask / callActivity for commonly
occuring reusable tasks in my process.
Instead I am thinking of using sendTask / receiveTask.
In my process I will have multiple instances of sendTask where each
sendTask sends a different instance of a message of the same type.
Reading the spec, I am still quite unclear on how to specify the
dataInput for each sendTask.
Does any one have any simple examples that might help my
understanding?
Below is the BPMN2 (beta2) file for a simplified process with 2
sendTasks. Both sendTasks refer to their own respective messages,
where each message references their own respective itemDefinitions and
both itemDefinitions reference the same structure
(rim:WorkflowActionType). Each task needs to use a separate
WorkflowActionType instance where the only difference is in their "id"
attribute value and their "action" attribute value. One has action =
"RequestForReview" while other has action = "Withdraw".
Do I have the BPMN right so far?
How to I specify the two tasks to use a different input (of type
rim:WorkflowActionType)?
Thanks for your help and patience with my questions.
[code]
<?xml version="1.0" encoding="UTF-8"?>
<definitions id="defaultChangeReviewProcess" typeLanguage="http://
www.w3.org/2001/XMLSchema"
expressionLanguage="
http://www.w3.org/1999/XPath"
targetNamespace="
http://www.omg.org/bpmn20"
xmlns="
http://www.omg.org/spec/BPMN/20100524/MODEL"
xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:4.0"
xmlns:act="urn:oasis:names:tc:ebxml-regrep:xsd:rs:4.0:actions"
xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="
http://www.w3.org/2001/XMLSchema"
xmlns:xlink="
http://www.w3.org/1999/xlink"
xmlns:roles="urn:acme:roles"
xsi:schemaLocation="
http://www.omg.org/spec/BPMN/20100524/MODEL
http://www.omg.org/spec/BPMN/2.0/20100501/BPMN20.xsd
urn:oasis:names:tc:ebxml-regrep:xsd:rim:4.0
http://www.wellfleetsoftware.com/files//rim.xsd">
<!--xsi:schemaLocation="
http://www.omg.org/spec/BPMN/20100524/MODEL
http://www.omg.org/spec/BPMN/2.0/20100501/BPMN20.xsd
urn:oasis:names:tc:ebxml-regrep:xsd:rim:4.0 ../xsd/rim.xsd"-->
<itemDefinition id="requestForReviewItemDefinition"
structureRef="rim:WorkflowActionType" />
<message id="requestForReviewMessage" name="RequestForReview"
itemRef="requestForReviewItemDefinition" />
<itemDefinition id="withdrawItemDefinition"
structureRef="rim:WorkflowActionType" />
<message id="withdrawMessage" name="Withdraw"
itemRef="withdrawItemDefinition" />
<process id="submitterProcess" name="Submitter Process">
<laneSet name="Submitter Pool" id="submitterPool">
<lane name="Submitter" id="submitterLane">
<flowNodeRef>start</flowNodeRef>
<flowNodeRef>requestForReviewDoWorkflowAction</
flowNodeRef>
<flowNodeRef>withdrawDoWorkflowAction</flowNodeRef>
<flowNodeRef>end</flowNodeRef>
</lane>
</laneSet>
<!-- Submitter lane flowNodes -->
<startEvent id="start"/>
<sequenceFlow sourceRef="start"
targetRef="requestForReviewDoWorkflowAction"></sequenceFlow>
<sendTask id="requestForReviewDoWorkflowAction"
messageRef="requestForReviewMessage" implementation="##unspecified">
</sendTask>
<sequenceFlow sourceRef="requestForReviewDoWorkflowAction"
targetRef="withdrawDoWorkflowAction"></sequenceFlow>
<sendTask id="withdrawDoWorkflowAction"
messageRef="withdrawMessage" implementation="##unspecified">
</sendTask>
<sequenceFlow sourceRef="withdrawDoWorkflowAction"
targetRef="end"></sequenceFlow>
<endEvent id="end"/>
</process>
</definitions>
[/code]