12.2.1 Overview
The BPMN DI is an instance of the DI meta-model provided at Annex B. The basic concept of BPMN DI, as with DI in general, is that serializing a diagram [BPMNDiagram] for interchange requires the specification of a collection of shapes [BPMNShape] and edges [BPMNEdge] on a plane [BPMNPlane].
BPMNPlane, BPMNShape, and BPMNEdge MUST reference exactly one abstract syntax BPMN element from the BPMN model using the bpmnElement attribute. The only exception is for a Data Association connected to a Sequence Flow (See Figure 10.68). This is a visual short cut that actually normalizes two Data Associations within the BPMN model. In this case, the resolution is made from the BPMN DI attributes rather than the abstract syntax reference [bpmnElement] (See Table 12.35).
The BPMN DI classes only define the visual properties used for depiction. All other properties that are REQUIRED for the unambiguous depiction of the BPMN element are derived from the referenced bpmnElement.
Multiple depictions of a specific BPMN element in a single diagram is NOT allowed, except for Participants in a choreography (i.e., Participant Bands). For example, it is not allowed to depict a Task twice in the same diagram, but it is allowed to depict the same Task in two different diagrams.
BPMN diagrams may be an incomplete or partial depiction of the content of the BPMN model. Some BPMN elements from a BPMN model may not be present in any of the diagram instances being interchanged.
BPMN DI does not provide for any containment concept. The BPMNPlane is an ordered collection of mixed BPMNShape(s) and BPMNEdge(s). The order of the BPMNShape(s) and BPMNEdge(s) inside a BPMNPlane determines their Z-order (i.e., what is in front of what). BPMNShape(s) and BPMNEdge(s) that are meant to be depicted “on top” of other BPMNShape(s) and BPMNEdge(s) MUST appear after them in the BPMNPlane. Therefore, the exporting tool MUST order all BPMNShape(s) and BPMNEdge(s) such that the desired depiction can be rendered.
- 2.2Process Modeling Conformance
- 2.2.1BPMN Process Types
- 2.2.2BPMN Process Elements
- Common Executable Conformance Sub-Class
- 2.2.3Visual Appearance
- 2.2.4Structural Conformance
- 2.3Process Execution Conformance
- 2.3.1Execution Semantics
- 2.3.2Import of Process Diagrams
- 2.4BPEL Process Execution Conformance
- 2.5Choreography Modeling Conformance
- 2.5.1BPMN Choreography Types
- 2.6Summary of BPMN Conformance Types
- 3 Normative References
- 3.1General
- 3.2Normative
- 3.3Non-Normative
- Activity Service
- BPEL4People
- Business Process Definition Metamodel
- Business Process Modeling
- Business Transaction Protocol
- XPDL
- 4 Terms and Definitions
- 5 Symbols
- 6 Additional Information
- 6.1Conventions
- 6.1.1Typographical and Linguistic Conventions and Style
- 6.1.2Abbreviations
- 6.2Structure of this Document
- 6.3Acknowledgments
- Submitting Organizations
- 7.2BPMN Scope
- Understanding the Behavior of Diagrams
- 7.3BPMN Elements
- 8.3.4External Relationships
- Context-based Correlation
- 8.4.7Flow Element
- 8.4.14 Common Package XML Schemas
- 8.5Services
- 9 Collaboration
- 9.1General
- 9.2Basic Collaboration Concepts
- 9.2.1Use of BPMN Common Elements
- ParticipantAssociation
- 9.6Process within Collaboration
- 9.7Choreography within Collaboration
- 10.2 Basic Process Concepts
- 10.2.1 Types of BPMN Processes
- 10.3.7 Global Task
- Complex Behavior Definition
- 10.3.9 XML Schema for Activities
- 10.4 Items and Data
- 10.4.1 Data Modeling
- Item-Aware Elements
- Data Inputs and Outputs
- Data Output
- Assignment
- Execution Semantics for DataAssociation
- 10.4.3 Usage of Data in XPath Expressions
- Access to BPMN Data Objects
- 10.4.4 XML Schema for Data
- 10.5 Events
- Implicit Throw Event
- 10.5.2 Start Event
- Activity Boundary Connections
- Interrupting Event Handlers (Error, Escalation, Message, Signal, Timer, Conditional, Multiple, and Parallel Multiple)
- Non-interrupting Event Handlers (Escalation, Message, Signal, Timer, Conditional, Multiple, and Parallel Multiple)
- Handling End Events
- 10.5.7 Scopes
- 10.6.7 Gateway Package XML Schemas
- 10.7 Compensation
- 10.7.3 Relationship between Error Handling and Compensation
- 10.8 Lanes
- 10.9 Process Instances, Unmodeled Activities, and Public Processes
- 11 Choreography
- 11.1 General
- 11.4.2 Artifacts
- 11.5 Choreography Activities
- 11.6.3 End Events
- 11.7 Gateways
- 11.7.1 Exclusive Gateway
- 12 BPMN Notation and Diagrams
- 12.1 BPMN Diagram Interchange (BPMN DI)
- 12.1.1 Scope
- 12.1.2 Diagram Definition and Interchange
- 12.1.3 How to Read this Clause
- 12.2 BPMN Diagram Interchange (DI) Meta-model
- 12.2.1 Overview
- 12.2.2 Abstract Syntax
- 12.2.4 Complete BPMN DI XML Schema
- 12.3 Notational Depiction Library and Abstract Element Resolutions
- 12.4.5 Choreography
- 13.2 Process Instantiation and Termination
- 13.3 Activities
- 13.3.3 Task
- 13.3.4 Sub-Process/Call Activity
- 13.3.5 Ad-Hoc Sub-Process
- Operational semantics
- 13.3.6 Loop Activity
- 13.3.7 Multiple Instances Activity
- 13.5 Events
- 13.5.1 Start Events
- 13.5.2 Intermediate Events
- 13.5.3 Intermediate Boundary Events
- 13.5.4 Event Sub-Processes
- Operational semantics
- 13.5.5 Compensation
- Compensation Handler
- 13.5.6 End Events
- Process level end events
- 14 Mapping BPMN Models to WS-BPEL
- 14.1 General
- 15 Exchange Formats
- 15.1 Interchanging Incomplete Models
- 15.2 Machine Readable Files
- 15.3.1 Document Structure
- 15.5 XSLT Transformation between XSD and XMI
- B.1 Scope
- B.2 Architecture
- B.4 Diagram Interchange
- B.4.1 Overview