The Workflow Management Coalition Specification
Workflow Management Coalition
Workflow Standard
Process Definition Interface
-- XML Process Definition Language
Document Number WFMC-TC-1025
Document Status – Final
October 3, 2005
Version 2.00
Copyright 2005 The Workflow Management Coalition
All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any
means, electronic, mechanical, photocopying, recording or otherwise, without the prior written permission of the Workflow
Management Coalition except that reproduction, storage or transmission without permission is permitted if all copies of the
publication (or portions thereof) produced thereby contain a notice that the Workflow Management Coalition and its members are the
owners of the copyright therein.
Workflow Management Coalition
2436 N. Federal Highway #374
Lighthouse Point, Fl 33064
USA
Tel: +1 954 782 3376
Fax: +1 954 782 6365
Email: wfmc@wfmc.org
WWW: http://www.wfmc.org
The “WfMC” logo and “Workflow Management Coalition” name are service marks of the Workflow Management Coalition.
Neither the Workflow Management Coalition nor any of its members make any warranty of any kind whatsoever, express or implied,
with respect to the Specification, including as to non-infringement, merchantability or fitness for a particular purpose. This
Specification is provided “as is”.
Workflow Management Coalition Process Definition 27 May 2005
XML Process Definition Language
Copyright 2005 The Workflow Management Coalition Page 1 of 164
Table of Content
1.
CHANGE HISTORY ............................................................................................................................................... 4
1.1. ACKNOWLEDGEMENTS ........................................................................................................................................ 6
2. AUDIENCE............................................................................................................................................................... 6
3. PURPOSE.................................................................................................................................................................. 6
4. INTRODUCTION .................................................................................................................................................... 6
4.1. CONFORMANCE ................................................................................................................................................... 7
4.2. XPDL VERSION 1.0 COMPATIBILITY ................................................................................................................... 7
4.3. REFERENCES........................................................................................................................................................ 8
5. OVERVIEW OF PROCESS DEFINITION INTERCHANGE............................................................................ 8
5.1. APPROACHES TO PROCESS DEFINITION INTERCHANGE ........................................................................................ 9
6. META-MODEL...................................................................................................................................................... 10
6.1. PROCESSES AND PACKAGES............................................................................................................................... 10
6.2. PACKAGE META-MODEL ................................................................................................................................... 11
6.2.1. Process Repository ................................................................................................................................... 12
6.2.1.1. Redefinition and Scope..................................................................................................................... 12
6.3. PROCESS META-MODEL ....................................................................................................................................13
6.4. ENTITIES OVERVIEW ......................................................................................................................................... 14
6.4.1. Swimlanes ................................................................................................................................................. 14
6.4.1.1. Pool................................................................................................................................................... 14
6.4.1.2. Lane .................................................................................................................................................. 14
6.4.2. Process Definition..................................................................................................................................... 14
6.4.3. Process Activity......................................................................................................................................... 14
6.4.4. Transition Information.............................................................................................................................. 15
6.4.5. Participant Declaration............................................................................................................................ 15
6.4.6. Application Declaration............................................................................................................................ 15
6.4.7. Artifact ...................................................................................................................................................... 15
6.4.8. Message Flow ........................................................................................................................................... 16
6.4.9. Association................................................................................................................................................ 16
6.4.10. Relevant data field .................................................................................................................................... 16
6.4.11. Data Types and Expressions..................................................................................................................... 16
6.4.12. System and Environmental Data............................................................................................................... 16
6.4.13. Resource Repository ................................................................................................................................. 16
6.4.14. Vendor or User specific Extensions.......................................................................................................... 16
6.4.14.1. Extended Elements and Attributes.................................................................................................... 16
6.4.14.2. Extended parameter mapping............................................................................................................ 17
7. XML PROCESS DEFINITION LANGUAGE..................................................................................................... 18
7.1. ELEMENTS COMMON FOR MULTIPLE ENTITIES.................................................................................................. 18
7.1.1. Graphic Information ................................................................................................................................. 18
7.1.1.1. NodeGraphicsInfo.............................................................................................................................18
7.1.1.2. ConnectorGraphicsInfo..................................................................................................................... 19
7.1.2. Extended Attributes................................................................................................................................... 20
7.1.2.1. Anonymous Extended Attribute........................................................................................................ 20
7.1.2.2. Namespace Qualified Extensions...................................................................................................... 21
7.1.3. Formal Parameters................................................................................................................................... 21
7.1.3.1. Parameter passing semantics............................................................................................................. 22
7.1.3.2. Concurrency semantics ..................................................................................................................... 22
7.1.3.3. Formal-actual parameter mapping .................................................................................................... 23
7.1.4. External Reference.................................................................................................................................... 23
7.1.4.1. Web Services .................................................................................................................................... 23
Workflow Management Coalition Process Definition 27 May 2005
XML Process Definition Language
Copyright 2005 The Workflow Management Coalition Page 2 of 164
7.1.5. Assignment................................................................................................................................................ 24
7.1.6. Category ................................................................................................................................................... 25
7.1.7. Artifact ...................................................................................................................................................... 25
7.1.7.1. Object................................................................................................................................................ 26
7.1.7.2. DataObject ........................................................................................................................................ 27
7.2. PACKAGE DEFINITION ....................................................................................................................................... 27
7.2.1. Package definition Header ....................................................................................................................... 29
7.2.1.1. Vendor extensions............................................................................................................................. 30
7.2.2. Redefinable Header .................................................................................................................................. 31
7.2.3. Conformance Class Declaration............................................................................................................... 33
7.2.4. Script......................................................................................................................................................... 33
7.2.5. External Package...................................................................................................................................... 34
7.3. APPLICATION DECLARATION ............................................................................................................................. 35
7.3.1. Invocation Parameters.............................................................................................................................. 36
7.3.2. Application Types ..................................................................................................................................... 36
7.3.2.1. EJB.................................................................................................................................................... 36
7.3.2.2. Pojo................................................................................................................................................... 37
7.3.2.3. XSLT ................................................................................................................................................ 37
7.3.2.4. Script................................................................................................................................................. 38
7.3.2.5. WebService....................................................................................................................................... 38
7.3.2.6. BusinessRule..................................................................................................................................... 39
7.3.2.7. Form.................................................................................................................................................. 39
7.4. SWIMLANES ....................................................................................................................................................... 40
7.4.1. Pool........................................................................................................................................................... 40
7.4.2. Lane .......................................................................................................................................................... 41
7.5. PROCESS DEFINITION......................................................................................................................................... 42
7.5.1. Process Definition Header........................................................................................................................ 45
7.5.2. Process Redefinable Header..................................................................................................................... 48
7.5.3. Activity Set/Embedded SubProcess........................................................................................................... 49
7.5.4. ProcessType in BPMN mapping to WS-BPEL ..........................................................................................50
7.5.5. Status......................................................................................................................................................... 50
7.5.6. SuppressJoinFailure ................................................................................................................................. 51
7.5.7. EnableInstanceCompensation................................................................................................................... 51
7.5.8. AdHoc ....................................................................................................................................................... 51
7.6. PROCESS ACTIVITY............................................................................................................................................ 51
7.6.1. Execution Control Attributes .................................................................................................................... 56
7.6.2. Route Activity............................................................................................................................................ 56
7.6.2.1. Gateway Activity .............................................................................................................................. 57
7.6.2.2. Examples of Gateways and their Representation.............................................................................. 58
7.6.3. Block Activity ............................................................................................................................................ 59
7.6.4. Event Activity ............................................................................................................................................ 59
7.6.4.1. Start Event......................................................................................................................................... 60
7.6.4.2. Intermediate Event............................................................................................................................ 61
7.6.4.3. End Event.......................................................................................................................................... 63
7.6.4.4. Common Elements Used in Start, Intermediate and End Events ...................................................... 64
7.6.4.5. Examples of Events and their representation .................................................................................... 68
7.6.5. Implementation Alternatives ..................................................................................................................... 69
7.6.5.1. No Implementation ........................................................................................................................... 69
7.6.5.2. Tool................................................................................................................................................... 70
7.6.5.3. Task................................................................................................................................................... 70
7.6.5.4. SubFlow/ProcessRef......................................................................................................................... 74
7.6.5.5. Reference .......................................................................................................................................... 76
7.6.6. Performer Relationship............................................................................................................................. 77
7.6.7. Deadline.................................................................................................................................................... 77
7.6.8. Simulation Information ............................................................................................................................. 79
7.6.9. Transition Restriction ............................................................................................................................... 80
7.6.9.1. Join.................................................................................................................................................... 81
7.6.9.2. Split................................................................................................................................................... 81
7.6.10. Conformance Classes ............................................................................................................................... 84
7.6.11. InputSets ................................................................................................................................................... 84
Workflow Management Coalition Process Definition 27 May 2005
XML Process Definition Language
Copyright 2005 The Workflow Management Coalition Page 3 of 164
7.6.12. OutputSets................................................................................................................................................. 85
7.6.13. Transaction ............................................................................................................................................... 86
7.6.14. Loop .......................................................................................................................................................... 87
7.7. TRANSITION INFORMATION ............................................................................................................................... 89
7.7.1. Condition .................................................................................................................................................. 90
7.7.1.1. Exception Conditions........................................................................................................................ 91
7.8. PARTNER LINKS................................................................................................................................................. 92
7.8.1. Partner Link Type ..................................................................................................................................... 92
7.8.2. Partner Link.............................................................................................................................................. 93
7.9. MESSAGING ....................................................................................................................................................... 94
7.9.1. Message Flow ........................................................................................................................................... 94
7.9.2. Message Type............................................................................................................................................ 95
7.9.3. End Point .................................................................................................................................................. 96
7.9.4. Web ServiceOperation .............................................................................................................................. 96
7.9.5. Web Service Fault Catch .......................................................................................................................... 97
7.10. ASSOCIATION ................................................................................................................................................ 98
7.11. PARTICIPANTS ............................................................................................................................................... 99
7.11.1. Participant Entity Types ......................................................................................................................... 100
7.12. RELEVANT DATA FIELD ............................................................................................................................... 101
7.13. DATA TYPES................................................................................................................................................ 102
7.13.1. Basic Data Types .................................................................................................................................... 103
7.13.2. Complex Data Types............................................................................................................................... 103
7.13.2.1. Schema Type................................................................................................................................... 104
7.13.2.2. Record Type.................................................................................................................................... 104
7.13.2.3. Union Type ..................................................................................................................................... 104
7.13.2.4. Enumeration Type........................................................................................................................... 105
7.13.2.5. Array Type...................................................................................................................................... 105
7.13.2.6. List Type ......................................................................................................................................... 106
7.13.3. Declared Data Types .............................................................................................................................. 106
7.13.3.1. Type Declaration............................................................................................................................. 106
7.13.3.2. Declared Type................................................................................................................................. 107
8. SAMPLES ............................................................................................................................................................. 109
8.1. SAMPLE PROCESS ............................................................................................................................................ 109
8.1.1. The Processes ......................................................................................................................................... 109
8.1.1.1. The EOrder Main Process............................................................................................................... 109
8.1.1.2. The CreditCheck Subprocess.......................................................................................................... 110
8.1.1.3. The FillOrder Subprocess ............................................................................................................... 110
8.1.2. Type Declarations................................................................................................................................... 110
8.1.3. ExtendedAttributes.................................................................................................................................. 112
8.1.4. External References ................................................................................................................................ 113
8.1.5. Sample XPDL.......................................................................................................................................... 113
8.2. EXTENDING XPDL SCHEMA............................................................................................................................ 128
8.2.1. Xyz Schema ............................................................................................................................................. 128
8.2.2. Xyz Test XPDL Document....................................................................................................................... 129
9. XPDL SCHEMA................................................................................................................................................... 130
10. FIGURES AND TABLES ................................................................................................................................ 160
10.1. FIGURES....................................................................................................................................................... 160
10.2. TABLES........................................................................................................................................................ 160