Composition modeler is a tool to arbitrarily replace tasks of the frame model with the models in the component models. (It is an extension of collapsing/opening subprocesses because the additions can be full diagrams, e.g. collaboration models and are not restricted to be a single process).
Using the composition has the following steps:
Labels are used to simplify creating connections. Clicking on a model element in the composition modeler opens the labels information. It is possible to add any number of labels and for each label the user has to choose whether the connection of this label is incoming to this model element or going out from the model element.
During the composition the labels with the same name but different direction can be joined to create new connections (data flow, message flow or sequence flow in the model). The right type or the connection is determined automatically based on the types and locations (same or different pool) of the elements that are connected.
The composition tool supports BPMN leaks-when and automatically changes the scripts of the component models to reflect that some data from the component model is replaced by the data object in the frame model.
In order to maintain the condition that all data objects have unique names the composition tool renames all the data objects inside the component models by giving them a unique random prefix.
There is limited support to correctly compose information of some PE-BPMN stereotypes. It currently supports symmetric encryption, attribute based encryption.