| This use case presents a bridge between Domain Specific Languages (DSLs) and UML profiles. Domain Specific Languages (DSLs) and UML profiles are two different views of Model Driven Engineering (MDE). DSLs aims at using small, well-focused languages dedicated to a particular domain. Each DSL can be associated to different metamodel. It provides appropriate abstractions and notations to describe a particular domain. UML profiles provide some extension mechanisms to customize UML models to a specific domain. UML profiles are used to model those aspects of systems or applications that are not directly describable by native UML elements. Both approaches are currently used by different communities. It is important to provide tools to interoperate between them. The Object Management Group (OMG) has specified several UML Profiles (see the UML Profile Catalog) and the mappings to different metamodels (DSLs). However, the mappings are specified in a table in a text document. They cannot be processed by any tool. The bridges must be implemented manually. We describe below how a bridge between a UML Profile and a DSL can be rapidly developed using AMW and ATL. We illustrate our approach using the UML Profile for MOF (see the OMG specification). |
Detailed description |
This document contains a complete and detailed description of this use case. It identifies more precisely the relations between UML profiles and metamodels, and presents a tool using AMW and ATL that enables to bridge between these two approaches. |
Presentation |
This presentation is a general overview of the approach. It was created based on the detailed documentation. |
Publication |
The publication titled "A Practical Approach to Bridging Domain Specific Languages with UML profiles" presents the motivations of creating bridges between DSLs and UML profiles. It also shows the main issues that appeared while developing a MDE solution. |
Example |
This example implements a bridge between MOF and a UML profile for MOF. |
User guide |
This user guide presents the main steps on how to configure AMW an ATL to run the example. |
Matching |
Matching is the generic process that creates weaving models. This use case gives a general overview of the matching process, and how it is handled by AMW and ATL. |
Metamodel comparison |
This use case demonstrates how weaving models are used to compare different metamodels and to produce executable model transformations (we use two metamodels used to define embedded software in the avionics industry). |
Bridge between SQL and KM3 |
This use case shows how weaving models and model transformations are used to translate SQL-DDL (Data Definition Language) into KM3 (a modeling technical space) and to translate KM3 into SQL. |
Relational DB to XML |
This use case shows how weaving models can be used to perform the data mapping between relational DBs and XML. |
Merge of geographical information (GML) and statistical data |
This use case presents a weaving model used to define a merge operation between a metamodel with geographical information (an extension of GML) and a metamodel with statistical data into a graphical representation (SVG). |
System Architecture (SA) management |
This use case shows how to map the overlapping concepts of different views of a complex system. It uses a System Architecture (SA) framework called DoDAF (Department of Defense Architecture Framework). |
| This work is supported by the OpenEmbeDD project. |