The general approach to this process step is to take the IL model from before the change and merge the changes into the model. Additionally, the id registry must be updated to reflect the newly composed model.
The merging happens through the TGG rules. Afterwards, a post processing creates a new id registry.
The IL model from before the change (prior IL model)
The ID registry from before the change (prior ID registry)
The changed ADL model (changed ADL model)
A TGG to translate between the IL and the ADL, that contains integration rules (IT rules) and forward propagation rules (FWPPG rules)
The prior IL model and the changed ADL model are loaded into the ADL-to-IL TGG. Then the IT rules are executed.
New and changed ADL elements in the model are not mapped to IL elements by the IT rules.
The FWPPG rules are executed. This has the following effects:
For elements that were added during the changes in the ADL model, corresponding IL elements are created.
For elements that were removed during the changes in the ADL, the corresponding IL elements will be also removed in the IL model.
For elements that were changed during the changes in the ADL, the corresponding IL elements will be deleted, and new corresponding elements will be created.
The last point is problematic for tracing changes, because elements are deleted and newly created instead of being changed. The new elements have new IDs. To reflect this, a new ID registry has to be created, and the IL model needs to adapted. This is done in the next step.
In this step, a ID registry is created based on the prior ID registry. The post-processing consists of the following steps:
The prior ID registry is copied.
Entries in the new ID registry referencing elements that were added during the changes in the ADL model are created.
Entries in the new ID registry referencing elements that were removed during the changes in the ADL model are removed.
IL elements corresponding to elements that were changed during the changes in the ADL model get the ID that their ancestor had.