B.2 Architecture
The DD architecture distinguishes two kinds of graphical information, depending on whether language users have control over it. Graphics that users have control over, such as position of nodes and line routing points, are captured for interchange between tools. Graphics that users do not have control over, such as shape and line styles defined by language standards are not interchanged because they are the same in all diagrams conforming to the language. The DD architecture has two models to enable specification of these two kinds of graphical information, Diagram Interchange (DI) and Diagram Graphics (DG).(both models share common elements from a Diagram Common (DC) model). The DI and DG models are shown in Figure B.1 by bold outlined boxes on the left and right, respectively.
The DD architecture expects language specification to define mappings between interchanged and non-interchanged graphical information, but does not restrict how it is done. This is shown in Figure B.1 by a shaded box labeled “CS Mapping Specification” in the middle section. The DD specification gives examples of mappings in QVT, but does not define or recommend any particular mapping language. The overall architecture resembles typical model-view- controllers, which separate visual rendering from underlying models, and provide a way to keep visuals and models consistent.
The first few steps of using the DD architecture are:
1.An abstract language syntax is defined separately from DD by instantiating MOF (abstract syntaxes are sometimes called “metamodels”). This is shown in Figure B.1 by a shaded box labeled “AS” at the far middle left (the “M” levels in the figure are described in the UML 2 Infrastructure (formal/2009-02-04)).
2.Language users model their applications by instantiating elements of abstract syntax, usually through tooling for the language. This is shown in Figure B.1 by the dashed arrow on the far lower left linked to a box labeled “Model.”
3.Users typically see graphical depictions of their models in tools. This is shown in Figure B.1 by a box on the lower right labeled “Graphics.”
- 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