Une transformation permet de convertir les éléments d'un modèle source en éléments d'un modèle cible. Par exemple, les modèles source et cible peuvent être des fichiers texte, des modèles de code ou des modèles UML. Si les modèles source et cible sont tout deux des modèles UML, la transformation convertit en général les éléments d'un niveau d'abstraction à un autre. Une configuration de transformation est une instance d'une transformation contenant des information utilisées par toutes les transformations (un nom unique, la source et la cible de la transformation, par exemple). Une transformation utilise les informations que vous fournissez dans une configuration de transformation lors de son exécution.
Une configuration de transformation peut également inclure des propriétés spécifiques à une transformation donnée. Lorsqu'une configuration est exécutée, une instance de la transformation est créée et exécutée avec les propriétés définies dans ladite configuration.
L'exécution d'une transformation dépend des règles de conversion permettant de convertir un type d'élément source en un ou plusieurs éléments cibles. Outre les règles de conversion, une transformation contient un mécanisme permettant de parcourir les éléments du modèle source et d'exécuter de manière sélective les règles appropriées en fonction du type d'élément et des critères spécifiques à la règle. Par exemple, une règle donnée peut uniquement être exécutée si le type d'élément de modèle est une classe UML et que cet élément est associé à un stéréotype particulier qui lui est appliqué. Par conséquent, certaines transformations peuvent exiger qu'un profil UML particulier soit appliqué aux éléments de modèle sources avant leur conversion en éléments cibles.