Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Stardust/Enhancing and Embedding Stardust/Browser Modeler/BPMN Mapping"
(→Endpoints) |
|||
Line 1: | Line 1: | ||
− | + | This page documents how Stardust relates to and supports BPMN 2.0 with respect to a) modeling support (browser modeler) and b) engine support (i.e. transformation of BPMN 2.0 XML into the Stardust object model). | |
− | + | ||
− | + | ||
− | + | The description targets the graphical BPMN elements as well as several supporting elements basically not visible in a process model. | |
− | + | ||
− | + | The following aspects/items are provided for each (if applicable): | |
− | + | ||
− | + | ||
− | + | ||
− | + | '''Spec:''' a hint on where to find a description in the BPMN 2.0 specification (i.e. class model and attributes/relations) | |
− | ''' | + | '''BPMN Modelling Conformance Subclasses:''' the conformance subclasses to which the element belongs (cp. chapter 2 of the BPMN 2.0 specification) |
− | ''' | + | '''Modeler support:''' whether/how the browser modeler supports the corresponding element |
− | + | ||
− | + | ||
− | + | '''Stardust Support: ''' extent of execution support / limitations. | |
− | + | '''Mapping Description:''' which stardust element or configuration/construct corresponds to the BPMN element (i.e. how to reach the intended behaviour or functionality) | |
− | + | '''Transformation:''' current state of transformation | |
− | + | '''Testmodel(s):''' link(s) to BPMN XML testmodels (with Stardust extensions, if available) with corresponding elements | |
− | ''' | + | '''see also:''' link(s) to related or supporting elements providing more |
− | ''' | + | '''Attributes:''' usage / mapping of BPMN element attributes |
− | ''' | + | '''Related Elements:''' usage / mapping of BPMN element model associations |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | ''' | + | '''Extension Elements/Attributes:''' extensions to BPMN for Stardust specific information and links to object model classes, if available (note '::<super>' is used to indicate a superclass) |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
+ | '''Specific types:''' list of more specific elements / subclasses not yet described separately | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | == process == | + | == <br>Callable Elements == |
+ | |||
+ | ==== process ==== | ||
'''Spec:''' OMG p.146f | '''Spec:''' OMG p.146f | ||
Line 81: | Line 57: | ||
*Interface: tbd | *Interface: tbd | ||
− | == globalTask == | + | |
+ | ==== globalTask ==== | ||
'''Spec:''' OMG p.187f | '''Spec:''' OMG p.187f | ||
Line 110: | Line 87: | ||
− | = Activities / Subprocesses = | + | == Activities / Subprocesses == |
Common Activity Extensions (Subprocess, Task etc.): | Common Activity Extensions (Subprocess, Task etc.): | ||
Line 118: | Line 95: | ||
**HibernateOnCreation | **HibernateOnCreation | ||
− | == subProcess == | + | |
+ | ==== subProcess ==== | ||
'''Spec:''' OMG p.173f | '''Spec:''' OMG p.173f | ||
Line 139: | Line 117: | ||
*EventSubprocess: tbd | *EventSubprocess: tbd | ||
− | == callActivity == | + | |
+ | ==== callActivity ==== | ||
::Activity | ::Activity | ||
Line 167: | Line 146: | ||
*tbd (::StardustActivity) | *tbd (::StardustActivity) | ||
− | === Process Call === | + | |
+ | ===== Process Call ===== | ||
'''Mapping Description:''' The Stardust Sub-process Activity synchronously calls a process with separate data (i.e. process parameters / input-/output-paths are used, mapped to BPMN Process DataInput/DataOutput elements). | '''Mapping Description:''' The Stardust Sub-process Activity synchronously calls a process with separate data (i.e. process parameters / input-/output-paths are used, mapped to BPMN Process DataInput/DataOutput elements). | ||
Line 173: | Line 153: | ||
'''Transformation:''' todo | '''Transformation:''' todo | ||
− | === GlobalTask Call === | + | |
+ | ===== GlobalTask Call ===== | ||
'''Mapping Description:''' Global tasks are transformed to Stardust Processes containing an Activity that corresponds to the GlobalTask (see [[#globalTask|globalTask]]). The call then works similar to [[#Process_Call|Process Call]]. | '''Mapping Description:''' Global tasks are transformed to Stardust Processes containing an Activity that corresponds to the GlobalTask (see [[#globalTask|globalTask]]). The call then works similar to [[#Process_Call|Process Call]]. | ||
Line 179: | Line 160: | ||
'''Transformation:''' todo | '''Transformation:''' todo | ||
− | |||
− | == Task (Abstract / None) == | + | == Tasks == |
+ | |||
+ | ==== Task (Abstract / None) ==== | ||
'''Spec:''' OMG p.156f | '''Spec:''' OMG p.156f | ||
Line 195: | Line 177: | ||
'''Testmodel(s):''' [http://git.eclipse.org/c/stardust/org.eclipse.stardust.ide.git/tree/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/AbstractTask.bpmn AbstractTask.bpmn] | '''Testmodel(s):''' [http://git.eclipse.org/c/stardust/org.eclipse.stardust.ide.git/tree/model/org.eclipse.stardust.model.bpmn2.transform/src/test/resources/models/bpmn/AbstractTask.bpmn AbstractTask.bpmn] | ||
− | == userTask == | + | |
+ | ==== userTask ==== | ||
'''Spec:''' OMG p.163, | '''Spec:''' OMG p.163, | ||
Line 223: | Line 206: | ||
**interactiveApplicationRef -> BPMN Interface, see also [[#Interface|Interface]] | **interactiveApplicationRef -> BPMN Interface, see also [[#Interface|Interface]] | ||
− | == serviceTask == | + | |
+ | ==== serviceTask ==== | ||
'''Spec:''' OMG p.158f, | '''Spec:''' OMG p.158f, | ||
Line 249: | Line 233: | ||
*[http://git.eclipse.org/c/stardust/org.eclipse.stardust.ide.git/tree/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustServiceTaskType.java StardustServiceTaskType] (::StardustActivity, no further extensions) | *[http://git.eclipse.org/c/stardust/org.eclipse.stardust.ide.git/tree/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustServiceTaskType.java StardustServiceTaskType] (::StardustActivity, no further extensions) | ||
− | == sendTask == | + | |
+ | ==== sendTask ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 269: | Line 254: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | == receiveTask == | + | |
+ | ==== receiveTask ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 289: | Line 275: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | == businessRulesTask == | + | |
+ | ==== businessRulesTask ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 309: | Line 296: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | |||
− | == scriptTask == | + | |
+ | |||
+ | ==== scriptTask ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 331: | Line 319: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | |||
− | |||
− | == Interface == | + | |
+ | == Services == | ||
+ | |||
+ | ==== Interface ==== | ||
'''Spec:''' OMG p.104f, | '''Spec:''' OMG p.104f, | ||
Line 365: | Line 354: | ||
**[http://git.eclipse.org/c/stardust/org.eclipse.stardust.ide.git/tree/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustTriggerType.java StardustTriggerType] (::org.eclipse.stardust.model.xpdl.carnot.TriggerType) | **[http://git.eclipse.org/c/stardust/org.eclipse.stardust.ide.git/tree/model/org.eclipse.stardust.model.bpmn2/src/main/java/org/eclipse/stardust/model/bpmn2/sdbpmn/StardustTriggerType.java StardustTriggerType] (::org.eclipse.stardust.model.xpdl.carnot.TriggerType) | ||
− | == Endpoint == | + | |
+ | ==== Endpoint ==== | ||
'''Spec:''' OMG p.105, | '''Spec:''' OMG p.105, | ||
Line 385: | Line 375: | ||
<br> | <br> | ||
− | |||
− | == dataObject == | + | == Data == |
+ | |||
+ | ==== dataObject ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 407: | Line 398: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | == dataAssociation == | + | |
+ | ==== dataAssociation ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 427: | Line 419: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | |||
− | == Gateways | + | == Gateways == |
− | === exclusiveGateway === | + | ==== exclusiveGateway ==== |
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 451: | Line 442: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | === parallelGateway === | + | |
+ | ==== parallelGateway ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 471: | Line 463: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | |||
− | === inclusiveGateway === | + | |
+ | |||
+ | ==== inclusiveGateway ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 493: | Line 486: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | === eventBasedGateway === | + | |
+ | ==== eventBasedGateway ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 513: | Line 507: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | |||
− | == sequenceFlow == | + | == Sequence Flows == |
+ | |||
+ | |||
+ | ==== sequenceFlow ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 535: | Line 531: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | |||
− | === | + | |
+ | |||
+ | ==== unconditional SequenceFlow ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 557: | Line 554: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | |||
− | + | ||
+ | '''uncontrolled Flow''' | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 579: | Line 576: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | |||
− | === conditionalSequenceFlow === | + | |
+ | |||
+ | ==== conditionalSequenceFlow ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 601: | Line 599: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | |||
− | === defaultSequenceFlow === | + | |
+ | |||
+ | ==== defaultSequenceFlow ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 623: | Line 622: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | |||
− | |||
− | |||
− | === startEvent (None) === | + | == Start Events == |
+ | |||
+ | ==== startEvent (None) ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 650: | Line 648: | ||
− | === timerStartEvent === | + | ==== timerStartEvent ==== |
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 670: | Line 668: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | === messageStartEvent === | + | |
+ | ==== messageStartEvent ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 690: | Line 689: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | |||
− | === Catching message Intermediate Event === | + | == Intermediate Events == |
+ | |||
+ | ==== Catching message Intermediate Event ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 712: | Line 712: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | === Throwing message Intermediate Event === | + | |
+ | ==== Throwing message Intermediate Event ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 732: | Line 733: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | === Catching timer Intermediate Event === | + | |
+ | ==== Catching timer Intermediate Event ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 752: | Line 754: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | === Boundary error Intermediate Event === | + | |
+ | ==== Boundary error Intermediate Event ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 772: | Line 775: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | |||
− | == endEvent (None) == | + | == End Events== |
+ | |||
+ | ==== endEvent (None) ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 794: | Line 798: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | == messageEndEvent == | + | |
+ | ==== messageEndEvent ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 814: | Line 819: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | == terminateEndEvent == | + | |
+ | ==== terminateEndEvent ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 834: | Line 840: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | |||
− | == Resource == | + | == Resources == |
+ | |||
+ | ==== Resource ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 856: | Line 863: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | == ResourceRole == | + | |
+ | ==== ResourceRole ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 876: | Line 884: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | === Performer === | + | |
+ | ===== Performer ===== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 896: | Line 905: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | |||
− | === | + | ===== Human Performer ===== |
− | = | + | ===== Potential Owner ===== |
− | == Participant == | + | == Processes Collaboration == |
+ | |||
+ | ==== Participant ==== | ||
'''Spec:''' OMG p., | '''Spec:''' OMG p., | ||
Line 922: | Line 932: | ||
'''Extension Elements/Attributes''' | '''Extension Elements/Attributes''' | ||
− | |||
− | = Supporting Classes (Common Executable Conformance Sub-Class) = | + | ==== Lanes ==== |
+ | |||
+ | ==Foundation== | ||
+ | ====baseElement==== | ||
+ | |||
+ | '''Attributes''' | ||
+ | *id: generally mapped to Stardust element-id. | ||
+ | |||
+ | '''Related Elements''' | ||
+ | *documentation [Documentation]: See [[#Documentation|Documentation]]. | ||
+ | *extensionDefinitions: Not used, as the transformation relies on XML Schema based interchange. | ||
+ | *extensionValues: Not used, as the transformation relies on XML Schema based interchange. | ||
+ | |||
+ | |||
+ | ====Documentation==== | ||
+ | |||
+ | '''Mapping description:''' The content of documentations is used as description of Stardust elements. As BPMN foresees multiple documentations for most elements, the text is concatenated. | ||
+ | |||
+ | '''Attributes''' | ||
+ | *text: Stardust description. | ||
+ | *textFormat: not used (only plain text supported). | ||
+ | |||
+ | |||
+ | ====Common attributes==== | ||
+ | |||
+ | In addition to ''id'' and ''documentation'' (from baseElement), most elements have a ''name'' attribute (not 'globally' inherited) which is also available for Stardust elements. | ||
+ | |||
+ | |||
+ | ==Infrastructure== | ||
+ | |||
+ | =====Definitions===== | ||
+ | |||
+ | '''Mapping Description:''' The root element of the BPMN Document corresponds to a Stardust Model. It may contain several processes, data structures, imports etc. | ||
+ | |||
+ | '''Transformation:''' available | ||
+ | |||
+ | '''Attributes''' | ||
+ | *targetNamespace: not transformed (XML specific). | ||
+ | *expressionLanguage: not used (supported expression languages are declared in specific [[#expression|expression]] elements) - tbd | ||
+ | *typeLanguage: not used (default = XML Schema is supported) | ||
+ | *exporter: unused (may be set for export) | ||
+ | *exporterVersion: unused (may be set for export) | ||
+ | |||
+ | '''Related Elements''' | ||
+ | *relationships: tbd | ||
+ | *imports: XML Schema and WSDL imports supported, further: tbd. | ||
+ | *rootElements: for modelling | ||
+ | *diagrams: for modelling | ||
+ | *extensions: unused (relies on XSD based extensions) | ||
+ | |||
+ | |||
+ | '''Extension Elements/Attributes''' | ||
+ | *attributeGroup ModelAttributes (see [http://git.eclipse.org/c/stardust/org.eclipse.stardust.ide.git/tree/model/org.eclipse.stardust.model.bpmn2/model/StardustBPMN20.xsd StardustBPMN20.xsd]) | ||
+ | **oid | ||
+ | **modelOID | ||
+ | **author | ||
+ | **created | ||
+ | **carnotVersion | ||
+ | **vendor | ||
+ | |||
+ | |||
+ | == Supporting Classes (Common Executable Conformance Sub-Class) == | ||
'''Spec.:''' cp. OMG p.7 | '''Spec.:''' cp. OMG p.7 | ||
Line 945: | Line 1,015: | ||
*TimerEventDefinition (id, timeDate): timeDate plus timeCycle plus stopTime extension (see [[#timerStartEvent|timerStartEvent]) | *TimerEventDefinition (id, timeDate): timeDate plus timeCycle plus stopTime extension (see [[#timerStartEvent|timerStartEvent]) | ||
− | = References = | + | |
+ | == References == | ||
OMG2011: Business Process Model and Notation (BPMN), Version 2.0, formal/2011-01-03, available from http://www.omg.org/spec/BPMN/2.0/ Notice: The pages referred to primarily indicate where attributes and the object model are described. Further information about specific elements (e.g. execution semantics etc.) may be found elsewhere in the specification. | OMG2011: Business Process Model and Notation (BPMN), Version 2.0, formal/2011-01-03, available from http://www.omg.org/spec/BPMN/2.0/ Notice: The pages referred to primarily indicate where attributes and the object model are described. Further information about specific elements (e.g. execution semantics etc.) may be found elsewhere in the specification. |
Revision as of 03:48, 18 October 2012
This page documents how Stardust relates to and supports BPMN 2.0 with respect to a) modeling support (browser modeler) and b) engine support (i.e. transformation of BPMN 2.0 XML into the Stardust object model).
The description targets the graphical BPMN elements as well as several supporting elements basically not visible in a process model.
The following aspects/items are provided for each (if applicable):
Spec: a hint on where to find a description in the BPMN 2.0 specification (i.e. class model and attributes/relations)
BPMN Modelling Conformance Subclasses: the conformance subclasses to which the element belongs (cp. chapter 2 of the BPMN 2.0 specification)
Modeler support: whether/how the browser modeler supports the corresponding element
Stardust Support: extent of execution support / limitations.
Mapping Description: which stardust element or configuration/construct corresponds to the BPMN element (i.e. how to reach the intended behaviour or functionality)
Transformation: current state of transformation
Testmodel(s): link(s) to BPMN XML testmodels (with Stardust extensions, if available) with corresponding elements
see also: link(s) to related or supporting elements providing more
Attributes: usage / mapping of BPMN element attributes
Related Elements: usage / mapping of BPMN element model associations
Extension Elements/Attributes: extensions to BPMN for Stardust specific information and links to object model classes, if available (note '::<super>' is used to indicate a superclass)
Specific types: list of more specific elements / subclasses not yet described separately
Contents
- 1 Callable Elements
- 2 Activities / Subprocesses
- 3 Tasks
- 4 Services
- 5 Data
- 6 Gateways
- 7 Sequence Flows
- 8 Start Events
- 9 Intermediate Events
- 10 End Events
- 11 Resources
- 12 Processes Collaboration
- 13 Foundation
- 14 Infrastructure
- 15 Supporting Classes (Common Executable Conformance Sub-Class)
- 16 References
Callable Elements
process
Spec: OMG p.146f
Stardust Support: full
Mapping Description: BPMN processes correspond to processes in Stardust.
Transformation: partial (related elements missing)
Testmodel(s): e.g. CollapsedSubprocess.bpmn (any testmodel contains at least one process).
see also: callActivity
Related Elements
- Auditing: tbd
- Monitoring: tbd
- Property: Stardust Variable (Data)
- Resource role: tbd
- Artifact: tbd
- CorrelationSubscription: tbd
- Interface: tbd
globalTask
Spec: OMG p.187f
BPMN Modelling Conformance Subclasses: -
Stardust Support: partial
Mapping Description: BPMN Global Tasks are not directly available in Stardust, however, a process with a corresponding 'global task' can be generated.
Transformation: TODO
Task call: see callActivity
Related Elements
- Property: Stardust Variable (Data)
- Resource role: tbd
- Interface: tbd
Specific types
- globalUserTask: see userTask
- globalManualTask: see manualTask
- globalScriptTask: see scriptTask
- globalBusinessRuleTask: see businessRuleTask
Activities / Subprocesses
Common Activity Extensions (Subprocess, Task etc.):
- TStardustActivity.java (::TStardustCommon TStardustCommon.java)
- EventHandlers
- HibernateOnCreation
subProcess
Spec: OMG p.173f
BPMN Modelling Conformance Subclasses: Executable (expanded) / Descriptive / Analytic
Stardust Support: partial (collapsed subprocesses)
Mapping Description: BPMN Sub-Processes correspond to Stardust Sub-Processes. In Stardust, subprocess-activities call a process whilst BPMN subprocesses contain their process elements (i.e. they are flow element containers). However, by specifying the called process in stardust as 'synchronous with shared data', the behaviour and even data visibility are similar to BPMN.
Transformation: available
Testmodel(s): CollapsedSubprocess.bpmn
Related Elements
Specific types
- AdHocSubprocess: tbd
- EventSubprocess: tbd
callActivity
- Activity
Spec: OMG p.183f,
BPMN Modelling Conformance Subclasses: Executable / Descriptive / Analytic
Stardust Support: partial (no direct call of GlobalTask)
Mapping Description: Call Activities correspond to the Stardust Subprocess Activity, whereas the configuration differs from a default Subprocess call (cp. BPMN Sub-Process) with respect to the data visibility (i.e. separate data).
Transformation: todo
Testmodel(s): todo .bpmn .bpmn
Attributes
- none
Related Elements
- calledElement [CallableElement]
Extension Elements/Attributes
- tbd (::StardustActivity)
Process Call
Mapping Description: The Stardust Sub-process Activity synchronously calls a process with separate data (i.e. process parameters / input-/output-paths are used, mapped to BPMN Process DataInput/DataOutput elements).
Transformation: todo
GlobalTask Call
Mapping Description: Global tasks are transformed to Stardust Processes containing an Activity that corresponds to the GlobalTask (see globalTask). The call then works similar to Process Call.
Transformation: todo
Tasks
Task (Abstract / None)
Spec: OMG p.156f
BPMN Modelling Conformance Subclasses: Descriptive / Analytic
Stardust Support: full
Mapping Description: BPMN unspecific task is not executable. It is mapped to a Route Activity in Stardust.
Transformation: available
Testmodel(s): AbstractTask.bpmn
userTask
Spec: OMG p.163,
BPMN Modelling Conformance Subclasses: Executable / Descriptive / Analytic
Stardust Support: full
Mapping Description: BPMN user tasks correspond to Stardust Manual Activities or Interactive Activites respectively.
Transformation: available
Testmodel(s): Stardust Manual Activity (with performers): UserTask.bpmn, Stardust Interactive Task: UserTaskWebApp.bpmn
Attributes
- implementation: Manual Activity=“##unspecified", JSP=http://java.sun.com/JSP/Page, JSF=http://java.sun.com/jsf, JFC= http://java.sun.com/jfc
Related Elements
- resources [ResourceRole]: Stardust Participant (if ResourceRole type Performer). See also Resources
- Rendering: not used (see extension)
Extension Elements/Attributes
- StardustUserTaskType StardustUserTaskType (::StardustActivity)
- interactiveApplicationRef -> BPMN Interface, see also Interface
serviceTask
Spec: OMG p.158f,
BPMN Modelling Conformance Subclasses: Executable / Descriptive / Analytic
Stardust Support: full (WebServices, Plain Java, Spring Beans, Transformation, Parsing, DMS Operation...)
Mapping Description: BPMN service tasks are mapped to Stardust (non-interactive) application tasks.
Transformation: available
Testmodel(s): Webservice call: ServiceTaskWebServiceApp.bpmn
Attributes
- implementation: ("##unspecified"), "#WebService", tbd: url's specifying the implementation type. Not used for execution.
Related Elements
- operationRef [Operation]: used to identify the Interface holding the application details (see Interface)
Extension Elements/Attributes
- StardustServiceTaskType (::StardustActivity, no further extensions)
sendTask
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full/partial
Mapping Description:
Transformation: todo
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
receiveTask
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full/partial
Mapping Description:
Transformation: todo
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
businessRulesTask
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full/partial
Mapping Description:
Transformation: todo
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
scriptTask
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full/partial
Mapping Description:
Transformation: todo
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
Services
Interface
Spec: OMG p.104f,
BPMN Modelling Conformance Subclasses: -
Stardust Support: based on extensions
Mapping Description: "An Interface defines a set of operations that are implemented by Services" (OMG p.104). Therefore the Interface element is used as container (see extension element StardustInterfaceType below) for the Stardust application specification. As Stardust has a variable concept for different kinds of applications (including a concept of 'accesspoints' e.g. exceeding the interface exposed by WSDL operations), the extension bases on the internal Stardust Object model.
Transformation: available
Testmodel(s): WebService Task: ServiceTaskWebServiceApp.bpmn, Interactive UserTask: UserTaskWebApp.bpmn, Message Events MessageEvents.bpmn
Attributes
- name: Application Name
Related Elements
- operations [Operation]: only used to reference from Activities
- callableElements[CallableElement]: not used
- implementationRef [Element]: dummy usage - references the nested extension element (StardustApplicationType)
Extension Elements/Attributes
- StardustInterfaceType
- StardustApplicationType (::org.eclipse.stardust.model.xpdl.carnot.ApplicationType)
- StardustTriggerType (::org.eclipse.stardust.model.xpdl.carnot.TriggerType)
Endpoint
Spec: OMG p.105,
BPMN Modelling Conformance Subclasses: -
Stardust Support: no
Mapping Description: Endpoint is an extensionpoint for service addresses related to BPMN participants. There is no correspondance in Stardust. The service addressing is contained in the application configuration (see Interface extension).
Transformation: N/A
Testmodel(s): N/A
Attributes none (in addition to baseElement)
Related Elements none (in addition to baseElement)
Data
dataObject
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full/partial
Mapping Description:
Transformation: available
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
dataAssociation
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full/partial
Mapping Description:
Transformation: available
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
Gateways
exclusiveGateway
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full/partial
Mapping Description:
Transformation: available
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
parallelGateway
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full/partial
Mapping Description:
Transformation: available
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
inclusiveGateway
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: partial (converging only)
Mapping Description:
Transformation: todo
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
eventBasedGateway
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: NO - REQUIRES CORE EXTENSION
Mapping Description:
Transformation: todo
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
Sequence Flows
sequenceFlow
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full
Mapping Description:
Transformation: available
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
unconditional SequenceFlow
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full
Mapping Description:
Transformation: available
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
uncontrolled Flow
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full
Mapping Description:
Transformation: available
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
conditionalSequenceFlow
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full
Mapping Description:
Transformation: available
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
defaultSequenceFlow
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full
Mapping Description:
Transformation: available
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
Start Events
startEvent (None)
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full
Mapping Description:
Transformation: available
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
timerStartEvent
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full
Mapping Description:
Transformation: available
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
messageStartEvent
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full (JMS, E-Mail)
Mapping Description:
Transformation: available
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
Intermediate Events
Catching message Intermediate Event
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full (JMS)
Mapping Description:
Transformation: available (JMS)
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
Throwing message Intermediate Event
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full (JMS, E-Mail)
Mapping Description:
Transformation: available (JMS)
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
Catching timer Intermediate Event
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full/partial
Mapping Description:
Transformation: todo
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
Boundary error Intermediate Event
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full/partial
Mapping Description:
Transformation: todo
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
End Events
endEvent (None)
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: no (only graphical)
Mapping Description:
Transformation: N/A
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
messageEndEvent
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full (JMS, E-Mail)
Mapping Description:
Transformation: available (JMS)
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
terminateEndEvent
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full/partial
Mapping Description: tbd
Transformation: todo
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
Resources
Resource
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full/partial
Mapping Description:
Transformation: available (roles/organisations/conditional performer)
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
ResourceRole
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full/partial
Mapping Description:
Transformation: available (performer)
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
Performer
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full/partial
Mapping Description:
Transformation: available
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
Human Performer
Potential Owner
Processes Collaboration
Participant
Spec: OMG p.,
BPMN Modelling Conformance Subclasses: (Executable / Descriptive / Analytic)
Stardust Support: full/partial
Mapping Description:
Transformation: todo
Testmodel(s): .bpmn .bpmn
Attributes
Related Elements
Extension Elements/Attributes
Lanes
Foundation
baseElement
Attributes
- id: generally mapped to Stardust element-id.
Related Elements
- documentation [Documentation]: See Documentation.
- extensionDefinitions: Not used, as the transformation relies on XML Schema based interchange.
- extensionValues: Not used, as the transformation relies on XML Schema based interchange.
Documentation
Mapping description: The content of documentations is used as description of Stardust elements. As BPMN foresees multiple documentations for most elements, the text is concatenated.
Attributes
- text: Stardust description.
- textFormat: not used (only plain text supported).
Common attributes
In addition to id and documentation (from baseElement), most elements have a name attribute (not 'globally' inherited) which is also available for Stardust elements.
Infrastructure
Definitions
Mapping Description: The root element of the BPMN Document corresponds to a Stardust Model. It may contain several processes, data structures, imports etc.
Transformation: available
Attributes
- targetNamespace: not transformed (XML specific).
- expressionLanguage: not used (supported expression languages are declared in specific expression elements) - tbd
- typeLanguage: not used (default = XML Schema is supported)
- exporter: unused (may be set for export)
- exporterVersion: unused (may be set for export)
Related Elements
- relationships: tbd
- imports: XML Schema and WSDL imports supported, further: tbd.
- rootElements: for modelling
- diagrams: for modelling
- extensions: unused (relies on XSD based extensions)
Extension Elements/Attributes
- attributeGroup ModelAttributes (see StardustBPMN20.xsd)
- oid
- modelOID
- author
- created
- carnotVersion
- vendor
Supporting Classes (Common Executable Conformance Sub-Class)
Spec.: cp. OMG p.7
- StandardLoopCharacteristics (id, loopCondition): Stardust Loop (While|Repeat with Loop Condition) (Todo)
- MultiInstanceLoopCharacteristics (id, isSequential, loopDataInput, inputDataItem): no direct support - tbd
- Rendering: not used (cp. userTask)
- Resource (id, name): Performer (see userTask and Resource)), further resources: tbd
- ResourceRole (id, resourceRef, resourceAssignmentExpression): Performer (see userTask and ResourceRoles))
- InputOutputSpecification (id, dataInputs, dataOutputs): Task Data Flow (see Data)
- DataInput (id, name, isCollection, itemSubjectRef): Data Flow (see Data)
- DataOutput (id, name, isCollection, itemSubjectRef): Data Flow (see Data)
- ItemDefinition (id, structure or import) [XSD Complex Type structure]: Data Flow (see Data)
- Operation (id, name, inMessageRef, outMessageRef, errorRefs): Applications / Interactive Applications (see serviceTask, userTask, (Message-) Events)
- Message (id, name, structureRef): not used for execution.
- Error (id, structureRef): tbd
- Assignment (id, from, to): used for Stardust DataMapping (Application Tasks / Interactive Tasks), ParameterMapping (Triggers) (see dataAssociation
- MessageEventDefinition (id, messageRef, operationRef): operationRef only (see (Message-) Events
- TerminateEventDefinition (id): tbd
- TimerEventDefinition (id, timeDate): timeDate plus timeCycle plus stopTime extension (see [[#timerStartEvent|timerStartEvent])
References
OMG2011: Business Process Model and Notation (BPMN), Version 2.0, formal/2011-01-03, available from http://www.omg.org/spec/BPMN/2.0/ Notice: The pages referred to primarily indicate where attributes and the object model are described. Further information about specific elements (e.g. execution semantics etc.) may be found elsewhere in the specification.