HOPEX/BPMN object correspondence
The BPMN export feature translates a BPMN element specification in HOPEX into a BPMN-compliant output file. It is based on a set of mappings between the HOPEX BPMN Process metamodel (including diagrams) and BPMN version 2.0.
Conventions
HOPEX concept names start with an uppercase. Example: Task.
BPMN elements are delimited by <..>.
BPMN attributes are prefixed by ::.
BPMN concepts relate to the following OMG Specification document: “Business Process Model and Notation (BPMN), formal/2011-01-03”.
Object correspondences
The following table indicates concepts managed by the export tool:
HOPEX Concepts
BPMN Concepts
Process
1316091788_brackets <process>
 
Short Name
 
name
 
_Hexaidabs
 
id
 
Comment
 
<documentation>
Owned Operation
<task>
Owned Data Store
<dataStore> and <dataStoreReference>
Owned Element
 
 
Gateway
 
<gateway>
 
Event
 
< event>
 
Sequence Flow
 
< sequenceFlow>
 
Data Object
 
< dataObject> and <dataObjectReference>
 
Message Flow
 
< messageFlow>
 
Participant
 
< participant> or <lane>
Internal Participant
< laneSet> and <lane>
Owned Process
<callActivity> or <subProcess>
Owned Update Association
<dataStoreReference> and <dataStoreRef>
 
Owned Read Association
<dataStoreReference> and <dataStoreRef>
 
Note
< textAnnotation> and <text>
 
Description
 
 
<BPMNDiagram>
 
Operation
1316091788_brackets <task> (See Table 1)
 
Short Name
 
name
 
_Hexaidabs
 
id
 
Comment
 
<documentation>
 
Compensation
 
isForCompensation
 
Loop
 
<standardLoopCharacteristics>
 
 
Loop Condition
 
< loopCondition>
 
Multiple
 
< multiInstanceLoopCharacteristics >
Called Process
calledElement
Data Object Used
<dataInput> and <dataInputAssociation>
 
Produced Data Object
<dataOutput> and <dataOutAssociation>
 
BPMN Data Store Read Association
<dataInput> and <dataInputAssociation>
 
BPMN Data Store Update Association
<dataOutput> and <dataOutAssociation>
 
Note
< textAnnotation> and <text>
< textAnnotation> and <text>
 
Gateway
1316091788_brackets <gateway> (See Table 2)
 
Short Name
 
name
 
_Hexaidabs
 
id
 
Comment
 
<documentation>
Note
< textAnnotation> and <text>
< textAnnotation> and <text>
 
Event
1316091788_brackets <event> (See Table 3)
 
Short Name
 
name
 
_Hexaidabs
 
id
 
Comment
 
<documentation>
 
Interrupting
 
isInterrupting or cancelActivity
 
Bounded Activity
attachedToRef
Note
< textAnnotation> and <text>
< textAnnotation> and <text>
 
Sequence Flow
1316091788_brackets <SequenceFlow>
 
_Hexaidabs
 
id
 
Comment
 
<documentation>
 
Predicate
 
<conditionExpression>
 
Predecessor
sourceRef
 
Successor
targetRef
 
 
 
Data Object
1316091788_brackets <dataObject> and <dataObjectReference>
 
Short Name
 
name
 
_Hexaidabs
 
id
 
Collection
 
isCollection
 
 
Comment
 
<dataObjectReference> and <documentation>
 
Data Object Status
 
< dataObjectReference::name>
Process Data Object
1316091788_brackets <dataStore> and <dataStoreReference>
 
Short Name
 
name
 
_Hexaidabs
 
id
Process Data Object
1316091788_brackets <dataStore> and <dataStoreReference>
 
Short Name
 
name
 
Predicate
 
<conditionExpression>
 
Predecessor
sourceRef
 
Successor
targetRef
 
Message Flow
1316091788_brackets <messageFlow>
 
_Hexaidabs
 
id
 
Comment
 
< documentation>
Source Element
sourceRef
 
Target Element
targetRef
 
Internal Participant
1316091788_brackets <lane>
 
Short Name
 
name
 
 
_Hexaidabs
 
id
Assignment
name
 
BPMN Element
<flowNodeRef>
External Participant
1316091788_brackets <participant>
 
Short Name
 
name
 
 
_Hexaidabs
 
id
Assignment
name
 
Note
<textAnnotation> and <text>
Note
1316091788_brackets <textAnnotation> and <association>
 
_Hexaidabs
 
id
 
Comment
 
< documentation>
 
 
System Process
1316091788_brackets <process>
 
Short Name
 
name
 
_Hexaidabs
 
id
 
Comment
 
<documentation>
Owned Task
<task>
Owned Data Store
<dataStore> and <dataStoreReference>
Owned Element
 
 
Gateway
 
<gateway>
 
Event
 
< event>
 
Sequence Flow
 
< sequenceFlow>
 
Data Object
 
< dataObject> and <dataObjectReference>
 
Message Flow
 
< messageFlow>
 
Participant
 
< participant> or <lane>
Internal Participant
< laneSet> and <lane>
Owned System Process
<callActivity> or <subProcess>
Owned Read Association
<dataStoreReference> and <dataStoreRef>
 
Owned Update Association
<dataStoreReference> and <dataStoreRef>
 
Note
< textAnnotation> and <text>
 
Description
 
 
<BPMNDiagram>
 
Task
1316091788_brackets <task> (See Table 1)
 
Short Name
 
name
 
_Hexaidabs
 
id
 
Comment
 
<documentation>
 
Compensation
 
isForCompensation
 
Loop
 
<standardLoopCharacteristics>
 
 
Loop Condition
 
< loopCondition>
 
Multiple
 
< multiInstanceLoopCharacteristics >
Called System Process
calledElement
Data Object Used
<dataInput> and <dataInputAssociation>
 
Produced Data Object
<dataOutput> and <dataOutAssociation>
 
BPMN Data Store Read Association
<dataInput> and <dataInputAssociation>
 
BPMN Data Store Update Association
<dataOutput> and <dataOutAssociation>
 
Note
< textAnnotation> and <text>
< textAnnotation> and <text>
 
Value Stream
1316091788_brackets <process>
 
Short Name
 
name
 
_Hexaidabs
 
id
 
Comment
 
<documentation>
Owned Value Stage
<task>
Owned Data Store
<dataStore> and <dataStoreReference>
Owned Element
 
 
Gateway
 
<gateway>
 
Event
 
< event>
 
Sequence Flow
 
< sequenceFlow>
 
Data Object
 
< dataObject> and <dataObjectReference>
 
Message Flow
 
< messageFlow>
 
Participant
 
< participant> or <lane>
Internal Participant
< laneSet> and <lane>
Owned Value Stream
<callActivity> or <subProcess>
Owned Read Association
<dataStoreReference> and <dataStoreRef>
 
Owned Update Association
<dataStoreReference> and <dataStoreRef>
 
Note
< textAnnotation> and <text>
 
Description
 
 
<BPMNDiagram>
 
Value Stage
1316091788_brackets <task> (See Table 1)
 
Short Name
 
name
 
_Hexaidabs
 
id
 
Comment
 
<documentation>
 
Compensation
 
isForCompensation
 
Loop
 
<standardLoopCharacteristics>
 
 
Loop Condition
 
< loopCondition>
 
Multiple
 
< multiInstanceLoopCharacteristics >
Called Value Stream
calledElement
Data Object Used
<dataInput> and <dataInputAssociation>
 
Produced Data Object
<dataOutput> and <dataOutAssociation>
 
BPMN Data Store Read Association
<dataInput> and <dataInputAssociation>
 
BPMN Data Store Update Association
<dataOutput> and <dataOutAssociation>
 
Note
< textAnnotation> and <text>
< textAnnotation> and <text>
 
Process Category
1316091788_brackets <process>
 
Short Name
 
name
 
_Hexaidabs
 
id
 
Comment
 
<documentation>
Owned Task
<task>
Owned Data Store
<dataStore> and <dataStoreReference>
Owned Element
 
 
Gateway
 
<gateway>
 
Event
 
< event>
 
Sequence Flow
 
< sequenceFlow>
 
Data Object
 
< dataObject> and <dataObjectReference>
 
Message Flow
 
< messageFlow>
 
Participant
 
< participant> or <lane>
Internal Participant
< laneSet> and <lane>
Owned System Process
<callActivity> or <subProcess>
Owned Read Association
<dataStoreReference> and <dataStoreRef>
 
Owned Update Association
<dataStoreReference> and <dataStoreRef>
 
Note
< textAnnotation> and <text>
 
Description
 
 
<BPMNDiagram>
 
 
 
 
 
Table 1:
Task Type
BPMN
Task Type
1316091788_brackets <task>
 
User
 
< userTask>
 
IT-Service Call
 
< serviceTask>
 
System Process Call
 
< callActivity>
 
Script
 
< scriptTask >
 
Send
 
< receiveTask>
 
Receive
 
< manualTask>
 
Manual
 
< businessRuleTask>
 
Table 2:
Gateway Type
BPMN
Gateway Type
1316091788_brackets < gateway>
 
Inclusive
 
<inclusiveGateway>
 
Complex
 
<complexGateway>
 
Parallel
 
<parallelGateway>
 
Exclusive (Data)
 
<exclusiveGateway>
 
Exclusive (Event)
 
<eventBasedGateway> and ::eventGatewayType=Exclusive and ::instantiate=false
 
 
Exclusive (Instantiate)
 
<eventBasedGateway> and ::eventGatewayType=Exclusive and ::instantiate=true
 
 
Parallel (Instantiate)
 
<eventBasedGateway> and ::eventGatewayType= Parallel and ::instantiate=true
 
 
 
 
Table 3:
 
 
Event Nature
Bounded Activity
 
 
Start
End
Throw
Catch
 
 
<startEvent>
<endEvent>
<intermediateThrowEvent>
<intermediateCatchEvent>
<boundaryEvent>
Event Type
Generic
 
 
 
 
 
Message
<messageEventDefinition>
<messageEventDefinition>
<messageEventDefinition>
<messageEventDefinition>
<messageEventDefinition>
Timer
<timerEventDefinition>
*
*
<timerEventDefinition>
<timerEventDefinition>
Error
<errorEventDefinition>
<errorEventDefinition>
*
*
<errorEventDefinition>
Cancel
*
<cancelEventDefinition>
*
*
<cancelEventDefinition>
Compensation
<compensateEventDefinition>
<compensateEventDefinition> and ::waitForCompletion=true
<compensateEventDefinition> and ::waitForCompletion=true
*
<compensateEventDefinition> and ::waitForCompletion=true
Conditional
<conditionalEventDefinition> and <condition>
*
*
<conditionalEventDefinition> and <condition>
<conditionalEventDefinition> and <condition>
Link
*
*
<linkEventDefinition>
<linkEventDefinition>
*
Signal
<signalEventDefinition>
<signalEventDefinition>
<signalEventDefinition>
<signalEventDefinition>
<signalEventDefinition>
Terminate
*
<terminateEventDefinition>
*
*
*
Escalation
<escalationEventDefinition>
<escalationEventDefinition>
<escalationEventDefinition>
*
<escalationEventDefinition>
Parallel Multiple
::parallelMultiple=true
*
*
::parallelMultiple=true
::parallelMultiple=true
Multiple
 
 
 
 
 
* = Combination not possible