When a transformation is performed, it establishes traces between the transformation source model elements and the transformation result model elements. These traces carry information of what was transformed into what. Traces are stored in an auxiliary package under the transformation destination package carrying the
«transformation» stereotype and containing a lot of instance specifications (since this is implementation specific data, please, do not edit the internals). If you want to remove trace information, simply delete this package.

Trace information can be used for navigating between the model layers. This is done with the traceability features of MagicDraw. To navigate in the forward direction, i.e., from the transformation source model element to the destination model element, right-click that element and choose Go To > Traceability > Model
Transformations > Transformed To > <element>. To navigate in the backward direction, i.e., from the transformation destination model element to the source model element, right-click that element and choose Go To > Traceability > Model Transformations > Transformed From > <element>.

Traceability information is also visible in the element’s Specification window, the Traceability tab; in the Properties panel, Traceability tab; it can also be depicted in the Relation Map diagram or in the custom dependency matrix.

Traces can be used for running the transformation update. The transformation update reapplies the transformation with the same source and target for the purpose of carrying additional changes from the source (which occurred after transformation was made) into the destination.

During the transformation update, presence of unmapped model elements in the source model indicates that these are newly added elements. Usual rules and the same behavior for the transformation are used for these elements as if this were the first application of the transformation.

During the transformation update, if model elements already contain mapping, and the source and destination does not match, the question arises - which properties to use. This is fundamental problem for all updating operations. The general solution is to have some kind of merge between the source and target. But merge is
clumsy and expensive. MagicDraw implements a simplistic approach meaning that during the transformation update a user can choose, wherever he/she wants the source model element properties to win (destination model element properties are overwritten) or wherever he/she wants the destination model properties to win (destination model properties are not changed).

 

To update a transformed model


  • Right-click the destination package and select Tools > Update Transformed Model.

 

The Model Refresh Options dialog opens.

Model refresh options dialog

The Change destination properties according to source option causes overwriting of element properties in the destination model with properties from the source model (only for the elements connected with mapping dependencies).

The Leave destination properties intact option leaves the destination model properties unchanged but different from the source model, in other words retains changes made to the destination model while it ignores changes made to the source model.

In Oracle DDL transformation updates, only changing of destination properties according to the source is available. It means, all changes are overwritten when updating a transformed Oracle DDL model, and the Model Refresh Options dialog does not appear in this case.

If new elements are added to the source, once the update occurs, copies of the new elements will be created in the destination model. If an element is deleted
from the source, it will not be removed from the destination after the update.