Tip: | For more information about XPDL, see the specification at http://www.wfmc.org. |
Designer BPMN 2.0 Process Model Part | XPDL Construct | ||
Abstract task | An Activity (does not contain any implementation) <Activity Name="Task1" Id="3a15b9a1-a97e-43b7-85ad-8565c4cff736"> <Description> </ns4:Description> <NodeGraphicsInfos> <NodeGraphicsInfo Width="75.0" Height="47.0" LaneId="a130eab8-b249-4dd1-a609-7c1362069886" PageId="702c212f-e358-42e8-aed8-492d6ec6208ePAGE"> <Coordinates YCoordinate="63.0" XCoordinate="256.0"/> </NodeGraphicsInfo> </NodeGraphicsInfos> </Activity> <Activity Name="Task1" Id="3a15b9a1-a97e-43b7-85ad-8565c4cff736"> <Description> </ns4:Description> <NodeGraphicsInfos> <NodeGraphicsInfo Width="75.0" Height="47.0" LaneId="a130eab8-b249-4dd1-a609-7c1362069886" PageId="702c212f-e358-42e8-aed8-492d6ec6208ePAGE"> <Coordinates YCoordinate="63.0" XCoordinate="256.0"/> </NodeGraphicsInfo> </Activity> | ||
Service task (using CentraSite) | An Activity with a TaskApplication An <Application> construct is created for each Web Service referenced by the Service Task. The "Id" attribute of the <TaskApplication> matches the "Id" of the <Application> <Activity Id="0c1b500c-8c13-11e2-5b38-efea8f839e4d" Name="ws1"> <Description> </Description> <Implementation> <Task> <TaskApplication Id="c9adb277-16bd-11e2-8565-c38280f44478"></TaskApplication> </Task> </Implementation> </Activity> <Application Id="c9adb277-16bd-11e2-8565-c38280f44478" Name="calculateCreditIncreaseProposal"> <Description> </Description> <ExternalReference location="centrasite://uddi:c8b102f7-16bd-11e2-8565-f675722b0be7" xref="calculateCreditIncreaseProposal"></ExternalReference><ExtendedAttributes> <ExtendedAttribute Name="SST" Value="c8b102f7-16bd-11e2-8565-f675722b0be7"></ExtendedAttribute> </ExtendedAttributes> </Application> | ||
Service task (NOT using CentraSite) | An Activity with a <TaskService> construct <Activity Id="89d57a0c-8c1f-11e2-5b38-efea8f839e4d" Name="ws7"> <Description /> <Implementation> <Task> <TaskService /> </Task> </Implementation> <NodeGraphicsInfos> <NodeGraphicsInfo BorderColor="0,0,0" FillColor="136,187,255" Height="61" LaneId="89d57a05-8c1f-11e2-5b38-efea8f839e4d" PageId="738ef641-8c1f-11e2-5b38-efea8f839e4dPAGE" Width="98"> <Coordinates XCoordinate="121" YCoordinate="271" /> </NodeGraphicsInfo> </NodeGraphicsInfos> </Activity> | ||
Business rule task | An Activity with a TaskBusinessRule implementation <Activity Name="Task1" Id="4d34c7a1-4d62-4dad-87b1-deee02578ead"> <Description> </Description> <Implementation> <Task> <TaskBusinessRule/> </Task> </Implementation> <Acvitity> | ||
User task | An Activity whose implementation is a TaskUser + Performer <Activity Name="Task1" Id="4d34c7a1-4d62-4dad-87b1-deee02578ead"> <Implementation> <Task> <TaskUser> <Performers> <Performer>test_</Performer> <Performer>abc</Performer> </Performers> </TaskUser> </Task> ... </Activity> | ||
Manual task | An Activity with a TaskManual implementation <Activity Name="Task1" Id="S24"> <Implementation> <Task> <TaskManual> <Performers> <Performer>test_</Performer> <Performer>abc</Performer> </Performers> </TaskManual> </Task> ... </Activity> | ||
Send task | An Activity whose implementation is a TaskSend <Activity Name="Task8" Id="4d34c7a1-4d62-4dad-87b1-deee02578ead"> ... <Implementation> <Task> <TaskSend/> </Task> </Implementation> </Activity> | ||
Receive task | An Activity with a TaskReceive implementation <Activity Name="Task9" Id="4d34c7a1-4d62-4dad-87b1-deee02578ead"> ... <Implementation> <Task> <TaskReceive Instantiate="false"/> </Task> </Implementation> ... </Activity> | ||
Call activity calling either a BPMN Callable Process or a webMethods Referenced Process | Results in multiple WorkflowProcess elements in XPDL, one for the parent process, and one for either the BPMN Callable Process or the webMethods Referenced Process. The parent process has an Activity whose implementation is a subflow. The ID attribute of the subflow matches the ID of the call activity. <Activity Name="Call Activity1" Id="4d34c7a1-4d62-4dad-87b1-deee02578ead"> <Description> </Description> <Implementation> <SubFlow Id="xpdl1_c1"/> </Implementation> <NodeGraphicsInfos> <NodeGraphicsInfo Width="75.0" Height="47.0"> <Coordinates YCoordinate="280.0" XCoordinate="105.0"/> </NodeGraphicsInfo> </NodeGraphicsInfos> </Activity> The referenced process is exported as a WorkflowProcess whose ID matches the subflow ID. | ||
Subprocess | There are two parts to subprocess mapping. 1. The subprocess itself is represented as BlockActivity element: <BlockActivity View="EXPANDED" ActivitySetId="a6b99dac-2746-4d4a-82e4-02e68bad55adACTIVITYSET"/> 2. The contents of the subprocess (steps, etc. within the subprocess) are represented as an ActivitySet: <ActivitySet Name="Subprocess1" Id="a6b99dac-2746-4d4a-82e4-02e68bad55adACTIVITYSET"> <Activities> <Activity Name="Message Event1" Id="7b9176b8-b8c0-489f-bc54-80ceb36d6f8b"> <Description> </Description> <Event> <StartEvent Trigger="Message"/> </Event> <NodeGraphicsInfos> <NodeGraphicsInfo Width="35.0" Height="35.0" PageId="3c1f437e-1216-4045-8062-825a7702e55bPAGE"> <Coordinates YCoordinate="39.0" XCoordinate="64.0"/> </NodeGraphicsInfo> <Activity> <Activity Name="Message Event2" Id="418db8db-e5e6-49bc-95db-f914c7de4292"> ... </Activity> </ActivitySet> | ||
Subprocess loop marker on a subprocess or a call activity | A marker that shows that the subprocess or call activity should be looped. Looping behavior is based on a Boolean condition. The subprocess or call activity will loop as long as the Boolean condition is true. The condition is evaluated for every loop iteration, and may also be evaluated at the beginning or at the end of the iteration. Another option is to specify a numeric cap, the value of which the number of iterations may not exceed. <Activity Name="Subprocess1" Id="d61205b2-dec8-4fdf-9ce0-c3a56ba97bba"> <Description> </Description> <BlockActivity View="EXPANDED" ActivitySetId="d61205b2-dec8-4fdf-9ce0-c3a56ba97bbaACTIVITYSET"/> <Loop LoopType="Standard"> <LoopStandard TestTime="Before" LoopMaximum="123"/> </Loop> <NodeGraphicsInfos> <NodeGraphicsInfo Width="336.0" Height="227.0" PageId="006f3646-2ad3-49fc-a50c-249fd9b516cbPAGE"> <Coordinates YCoordinate="74.0" XCoordinate="323.0"/> </NodeGraphicsInfo> </NodeGraphicsInfos> </Activity> | ||
Standard loop marker on a task | Regular (standard) loop on a task <Loop LoopType="Standard"> <LoopStandard TestTime="Before" LoopMaximum="10"/> </Loop>
| ||
Parallel multiple instance (MI) marker | Loop with a Parallel attribute not supported in Designer 9.0 | ||
Sequential multiple instance (MI) marker | Loop with a Sequential attribute not supported in Designer 9.0 | ||
Compensation marker | isCompensating attribute | ||
Event subprocess | not supported in Designer 8.2 | ||
Error handler | |||
Timeout handler | |||
Cancel handler | |||
Sequence flow | A Transition. The "From" attribute refers to the ID of the source. The "To" Attribute refers to the ID of the target. <Transition Name="From "Message Event1" to "Call Activity1" " To="S5" From="S3" Id="T9"> | ||
Default flow | A Transition (same as sequence flow above). The "From" attribute refers to the ID of the source. The "To" Attribute refers to the ID of the target. <Transition Name="From "Message Event1" to "Call Activity1" " To="S5" From="S3" Id="T9"> | ||
Conditional flow | A Transition with a Condition Construct | ||
None start event | An Activity with a StartEvent whose trigger is "None" <Activity> <Event> <StartEvent Trigger="None"/> </Event> </Activity> | ||
Throwing none intermediate event | An Activity that throws an Intermediate Event. The event is IntermediateEvent whose trigger attribute is "None" (a None event) <Activity Name="None Event1" Id="b1bf9ad0-74f2-4fe3-bb55-f35acca1bad9"> <Description> </Description> <Event> <IntermediateEvent Trigger="None"/> </Event> ... </Activity> | ||
None end event | An Activity with an EndEvent whose Result attribute value is "None" <Activity> <Event> <EndEvent Result="None"/> </Event> </Activity> | ||
Message start event | An Activity with a StartEvent whose trigger is a message <Activity Name="Message Event1" Id="S19"> ... <Event> <StartEvent Trigger="Message"/> </Event> ... </Activity> | ||
Message end event | An Activity with an EndEvent whose result is a message <Activity Name="Message Event3" Id="S32"> ... <Event> <EndEvent Result="Message"/> </Event> </Activity> | ||
Throwing message intermediate event | An Activity with an IntermediateEvent triggered by a Message. The CatchThrow atribute has a value of "THROW" indicating that the message is thrown. <Activities> <Activity Name="Message Throw" Id="4b64afb5-edf1-4b92-b98c-98d6ca0b3601"> <Description> </Description> <Event> <IntermediateEvent Trigger="Message"> <TriggerResultMessage CatchThrow="THROW"/> </IntermediateEvent> </Event> <NodeGraphicsInfos> <NodeGraphicsInfo Width="35.0" Height="35.0" LaneId="d27f70dc-c404-48ae-942f-c126ac361427" PageId="2fdb377f-8e60-4dbd-a906-59693ba3c40cPAGE"> <Coordinates YCoordinate="197.0" XCoordinate="235.0"/> </NodeGraphicsInfo> </NodeGraphicsInfos> <Extensions> <webMethodsDesignerCommonExtensions isTestAfter="false" loopMaximum="0" retries="0" retryCount="1" retryInterval="60000" stepLock="false" logicalServer="Default"> <documentation/> <fontData fontSize="8" italicFont="false" fontFamily="Tahoma" boldFont="false" red="0" green="0" blue="0"/> <ext:wmExpressionFilter/> </webMethodsDesignerCommonExtensions> <webMethodsDesignerEventExtensions isStart="false" correlationServiceName="" correlationFieldName="" useCorrelation="false" receiveType="EMPTY" receiveProtocol="SUBSCRIPTION" isStartStepServiceRequired="false" externalizeConditions="false" allowsSynchronousReply="false"/> </Extensions> </Activity> </Activities> | ||
Catching message intermediate event | An Activity with an IntermediateEvent triggered by a Message. The CatchThrow atribute has a value of "CATCH" indicating that the message is caught by the Activity. <Activities> <Activity Name="Message Catch" Id="c2c75b01-cb42-41ef-b79a-3a82b5877120"> <Description> </Description> <Event> <IntermediateEvent Trigger="Message"> <TriggerResultMessage CatchThrow="CATCH"/> </IntermediateEvent> </Event> <NodeGraphicsInfos> <NodeGraphicsInfo Width="35.0" Height="35.0" LaneId="d27f70dc-c404-48ae-942f-c126ac361427" PageId="2fdb377f-8e60-4dbd-a906-59693ba3c40cPAGE"> <Coordinates YCoordinate="197.0" XCoordinate="105.0"/> </NodeGraphicsInfo> </NodeGraphicsInfos> <Extensions> <webMethodsDesignerCommonExtensions isTestAfter="false" loopMaximum="0" retries="0" retryCount="1" retryInterval="60000" stepLock="false" logicalServer="Default"> <documentation/> <fontData fontSize="8" italicFont="false" fontFamily="Tahoma" boldFont="false" red="0" green="0" blue="0"/> <ext:wmExpressionFilter/> </webMethodsDesignerCommonExtensions> <webMethodsDesignerEventExtensions isStart="false" correlationServiceName="" correlationFieldName="" useCorrelation="false" receiveType="EMPTY" receiveProtocol="SUBSCRIPTION" isStartStepServiceRequired="true" externalizeConditions="false" allowsSynchronousReply="false"/> </Extensions> </Activity> </Activities> | ||
Interrupting boundary message intermediate event | An IntermediateEvent attached to an Activity, indicated by the "Target" attribute of the <IntermediateEvent>. The event interrupts the flow of the process, so the "Interrupting" attribute has a value of "true". The Activity to which the <Intermediate Event> is attached is indicated by its"Target" attribute. <Activity Name="Attached Intermediate Message Interrupting event" Id="d802b7ae-9b98-4278-82d7-be220c7ae4c0"> <Description> </Description> <Event> <IntermediateEvent Interrupting="true" Target="04975f26-d385-4d54-bb1e-604713235d34" Trigger="Message"> <TriggerResultMessage CatchThrow="CATCH"/> </IntermediateEvent> </Event> <NodeGraphicsInfos> <NodeGraphicsInfo Width="35.0" Height="35.0" LaneId="d27f70dc-c404-48ae-942f-c126ac361427" PageId="2fdb377f-8e60-4dbd-a906-59693ba3c40cPAGE"> <Coordinates YCoordinate="193.0" XCoordinate="198.0"/> </NodeGraphicsInfo> </NodeGraphicsInfos> </Activity> | ||
Non-interrupting boundary message intermediate event | An IntermediateEvent attached to an Activity, indicated by the "Target" attribute of the <IntermediateEvent>. The IntermediateEvent is triggered by a message whose"Interrupting" attribute has a value of "false". <Activity Name="Attached Intermediate Message Non interrupting event" Id="d802b7ae-9b98-4278-82d7-be220c7ae4c0"> <Description> </Description> <Event> <IntermediateEvent Interrupting="false" Target="04975f26-d385-4d54-bb1e-604713235d34" Trigger="Message"> <TriggerResultMessage CatchThrow="CATCH"/> </IntermediateEvent> </Event> <NodeGraphicsInfos> <NodeGraphicsInfo Width="35.0" Height="35.0" LaneId="d27f70dc-c404-48ae-942f-c126ac361427" PageId="2fdb377f-8e60-4dbd-a906-59693ba3c40cPAGE"> <Coordinates YCoordinate="193.0" XCoordinate="198.0"/> </NodeGraphicsInfo> </NodeGraphicsInfos> </Activity> | ||
Boundary interrupting timer intermediate event | An Activity with an IntermediateEvent. The "Target" attribute of the IntermediateEvent is the ID of the parent Activity associated with the Timer. The "Interrupting" attribute is "true". <Activity Name="Timer1" Id="500b242f-ffc8-4c18-bacd-e9948b00c3d8"> <Description> </Description> <Event> <IntermediateEvent Interrupting="true" Target="e8065ce7-745e-4fba-9294-ca9522f81776" Trigger="Timer"/> </Event> <NodeGraphicsInfos> <NodeGraphicsInfo Width="23.0" Height="23.0" LaneId="d27f70dc-c404-48ae-942f-c126ac361427" PageId="2fdb377f-8e60-4dbd-a906-59693ba3c40cPAGE"> <Coordinates YCoordinate="205.0" XCoordinate="222.0"/> </NodeGraphicsInfo> </NodeGraphicsInfos> </Activity> | ||
Non-interrupting boundary timer intermediate event | An Activity with an IntermediateEvent. The "Target" attribute of the IntermediateEvent is the ID of the parent Activity associated with the Timer. The "Interrupting" attribute is "false". <Activity Name="Timer2" Id="81969c32-62b4-4d39-9a2b-0c80e595d870"> <Description> </Description> <Event> <IntermediateEvent Interrupting="false" Target="a2c162bb-0a9c-425e-9993-b8f890b308ec" Trigger="Timer"/> </Event> <NodeGraphicsInfos> <NodeGraphicsInfo Width="23.0" Height="23.0" LaneId="d27f70dc-c404-48ae-942f-c126ac361427" PageId="2fdb377f-8e60-4dbd-a906-59693ba3c40cPAGE"> <Coordinates YCoordinate="205.0" XCoordinate="475.0"/> </NodeGraphicsInfo> </NodeGraphicsInfos> </Activity> | ||
Escalation intermediate event | not supported in Designer 9.0 | ||
Escalation end event | not supported in Designer 9.0 | ||
Conditional start event | not supported in Designer 9.0 | ||
Conditional intermediate event | not supported in Designer 9.0 | ||
Conditional end event | not supported in Designer 9.0 | ||
Interrupting boundary error intermediate event | Activity with an IntermediateEvent whose trigger is an error. The value of the "Target" attribute for the IntermediateEvent matches the associated activity. <Activity Name="Error1" Id="S24"> ... <Event> <IntermediateEvent Target="S18" Trigger="Error"/> </Event> ... </Activity> | ||
Error end event | Activity with an EndEvent whose result is an error. <Activity Name="Error Event1" Id="S31"> ... <Event> <EndEvent Result="Error"/> </Event> ... </Activity> | ||
Interrupting boundary cancel intermediate event | not supported in Designer 9.0 | ||
Cancel end event | not supported in Designer 9.0 | ||
Interrupting boundary compensation intermediate event | not supported in Designer 9.0 | ||
Compensation end event | not supported in Designer 8.2 | ||
Signal start event | An Activity with a StartEvent whose trigger is a Signal, as indicated by the value of the "Trigger" attribute. <Activity Name="Signal Event1" Id="80b5ff5b-95d7-4fa0-8654-d28fc5bcba97"> <Description> </Description> <Event> <StartEvent Trigger="Signal"/> </Event> <NodeGraphicsInfos> <NodeGraphicsInfo Width="35.0" Height="35.0" PageId="006f3646-2ad3-49fc-a50c-249fd9b516cbPAGE"> <Coordinates YCoordinate="182.0" XCoordinate="243.0"/> </NodeGraphicsInfo> </NodeGraphicsInfos> | ||
Catching signal intermediate event | An Activity, with an Intermediate event, that catches a signal . The "CatchThrow” attribute has a value of "CATCH" and the value of the Trigger attribute is "Signal") <Activity Name="Signal Event2" Id="be77266a-cf58-43b2-9932-227ded08d8d7"> ... <Event> <IntermediateEvent Trigger="Signal"> <TriggerResultSignal CatchThrow="CATCH"/> </IntermediateEvent> </Event> ... </Activity> | ||
Throwing signal intermediate event | An Activity, with an Intermediate event, that throws a signal . The "CatchThrow” attribute has a value of "THROW" and the value of the Trigger attribute is "Signal") <Activity Name="Signal Event2" Id="be77266a-cf58-43b2-9932-227ded08d8d7"> ... <Event> <IntermediateEvent Trigger="Signal"> <TriggerResultSignal CatchThrow="THROW"/> </IntermediateEvent> </Event> ... </Activity> | ||
Interrupting boundary signal intermediate event | An Activity with an IntermediateEvent whose trigger is a signal. The value of the "Target" attribute for the IntermediateEvent matches the associated activity (the step on which the event is placed). <Activity Name="Signal1" Id="d80ca1b1-4ddd-400c-9ae3-55b7de4cb645"> ... <Event> <IntermediateEvent Interrupting="true" Target="9048f37a-4134-43e1-8f7d-5dceb27456f6" Trigger="Signal"> </IntermediateEvent> </Event> ... </Activity> | ||
Non-interrupting boundary signal intermediate event | An Activity with an IntermediateEvent whose trigger is a signal. The value of the "Target" attribute for the IntermediateEvent matches the associated activity (the step on which the event is placed). <Activity Name="Signal1" Id="d80ca1b1-4ddd-400c-9ae3-55b7de4cb645"> ... <Event> <IntermediateEvent Interrupting="false" Target="9048f37a-4134-43e1-8f7d-5dceb27456f6" Trigger="Signal"> </IntermediateEvent> </Event> ... </Activity> | ||
Signal end event | An Activity with an EndEvent resulting in a Signal (as indicated by the Result attribute). <Activity Name="Signal Event2" Id="be77266a-cf58-43b2-9932-227ded08d8d7"> ... <Event> <EndEvent Result="Signal"/> </Event> ... </Activity> | ||
Terminate end event | An Activity with an EndEvent whose result attribute is "Terminate" <Activity Name="Terminate1" Id="S30"> .... <Event> <EndEvent Result="Terminate"/> </Event> ... </Activity>
| ||
Exclusive gateway | An Activity with a Route construct whose GatewayType is "Exclusive" <Activity Name="Gateway1" Id="S55"> ... <Route GatewayType="Exclusive"/> ... </Activity> | ||
Inclusive gateway | An Activity with a Route construct whose GatewayType is "Inclusive" <Activity Name="Gateway1" Id="S55"> ... <Route GatewayType="Inclusive"/> ... </Activity> | ||
Parallel gateway | An Activity with a Route construct whose GatewayType is "Parallel" <Activity Name="Gateway1" Id="S55"> ... <Route GatewayType="Parallel"/> ... </Activity> | ||
Complex gateway | An Activity with a Route construct whose GatewayType is "Complex" <Activity Name="Gateway1" Id="S55"> ... <Route GatewayType="Complex"/> ... </Activity>
| ||
Event-based exclusive gateway | not supported in Designer 9.0 | ||
Parallel event-based gateway | not supported in Designer 9.0 | ||
Message line | An Association whose "Target" and "Source" attributes specify IDs of the source and target <Association Name="From "annotationNode" to "Call Activity1" " Target="S5" Source="N13" Id="T14"> ... </Association> | ||
Annotation | An Artifact of type "Annotation". The value of the TextAnnotation attribute is the annotation text specified. <Artifact TextAnnotation="Used to be known as referenced subprocess" ArtifactType="Annotation" Id="N13"> </Artifact>
| ||
Group | not supported in Designer 9.0 | ||
Pool | A Pool is mapped to a Pool as well a WorkflowProcess (if you select that option in the import wizard) | ||
Swimlane | A Lane construct within a Pool | ||
Data Input | not supported in Designer 9.0 | ||
Data Output | not supported in Designer 9.0 | ||
Data Collection Object | not supported in Designer 9.0 | ||
Data Store | not supported in Designer 9.0 | ||
Data Message | not supported in Designer 9.0 | ||
SimulationInformation | Attribute of an XPDL Activity which maps to a resource assigned to a process step in a Designer process simulation (.simulation file). Properties and values in the XPDL correspond to resource information in the process. In the Designer process simulation, SimulationInformation maps to a simulation resource for a process step with the naming convention <activity name>_Activity Resource. Simulation step scenarios are created for Designer activity steps (tasks and call activities). SimulationInformation is mapped for these step types only. SimulationInformation properties include: Cost: assigned to the Fixed Cost of the resource TimeEstimation: the Duration value is assigned to a Designer simulation scenario, which has a Process Time property. Other TimeEstimation values are ignored, as they do not correspond to existing simulation properties. |
Exported Designer Process Model Join Type | XPDL Join Type |
AND | PARALLEL |
COMPLEX | COMPLEX |
OR | OR |
Unsynchronized OR | XOR |