Community
Participate
Working Groups
I'm opening this bug to keep track of some (apparent) inconsistencies and similar problems in the specification while we stumble across them, together with their implications in our model. Problem 1 - Multiplicity of Collaboration.conversationAssociations This reference is single and required [1..1] in Figure 9.1 of the specification text (dtc/2010-06-05) and in the CMOF file (http://www.omg.org/spec/BPMN/2.0/20100501/BPMN20.cmof, dtc/2010-05-04). In table 9.1, however, it is specified as "ConversationAssociation [0..*]", the same in the XSD (http://www.omg.org/spec/BPMN/2.0/20100501/Semantic.xsd). The XSD is probably the correct version in this case. We use the CMOF version.
Problem 2 - Reference by QName in XSD where no cross-file reference is possible In some places, the XSD uses a QName for the type of a reference, implying that referenced elements could reside in a different file (definitions), although both referencing and referenced element will, in all cases, be contained in the same container element. For example, sequence flow should only connect elements of the same process (choreography) - see chapter 7.5.1. This applies to: * BoundaryEvent.attachedToRef:Activity, * FlowNode.incoming:SequenceFlow, FlowNode.outgoing:SequenceFlow, * LinkEventDefinition.source:LinkEventDefinition, LinkEventDefinition.target:LinkEventDefinition We plan to disallow cross-file references in these cases, setting resolveProxies to false.
(In reply to comment #1) > * LinkEventDefinition.source:LinkEventDefinition, > LinkEventDefinition.target:LinkEventDefinition Correction: these could span across files, as they are defined on EventDefinitions (not Events) and EventDefinition is a RootElement which can be stored anywhere.
The XSD defines StandardLoopCharacteristics.loopMaximum as an Integer, but the bpmn2 model defines it as a reference to an Expression. This causes parsing and serializing of a model file that has loopMaximum to fail.