UMLX Documentation Page
UMLX Development Tools GMT subproject
 Welcome to the UMLX documentation page

UMLX is an experimental concrete syntax for a transformation language. While not part of the official OMG QVT standardization process, it is expected that UMLX will evolve towards the OMG standard, and it is hoped that UMLX will influence that standard in a constructive fashion.

Caution: Most of the publications describe work performed in 2003. The basic principles outlined then remain valid but it is likely that some details will have to change in order to align with the imminent QVT standard.

 Publications

E.D.Willink, UMLX - A Graphical Transformation Language for MDA.

This paper provides an introduction to UMLX, using an AddressBook example to demonstrate definition of application level transformation.

This revision updates the QVT context and concentrates on the language principles and the application programming example. See earlier versions for compiler transformation and transformation transformation examples.

E.D.Willink, A concrete UML-based graphical transformation syntax - The UML to RDBMS example in UMLX, accepted for Workshop on Metamodelling for MDA, University of York, England, 24-25 November 2003. 14 pages.

This paper provides a solution to the UML to RDBMS working example used on the MOF QVT submissions mailing list. The syntax of UMLX is first introduced as the solution is presented. Then more detailed issues are discussed.

The PowerPoint slides contain less detail but more context.

[This a more conventional compiler-level example with much more detail, but lacks discussion of the wider context.]

E.D.Willink, UMLX - A Graphical Transformation Language for MDA, 2nd OOPSLA Workshop on Generative Techniques in the context of Model Driven Architecture , OOPSLA'2003, Anaheim, 26 October 2003.

This paper provides an introduction to UMLX, using an AddressBook example to demonstrate definition of application level transformations, and then considers the need for support for PIM + PDM to PSM transformation with a very simple compiler-level transformation example. A consistent meta-modelling perspective is then demonstrated with an overview of the UMLX models for the UMLX compiler.

The PowerPoint slides consider the broader MDA context.

[Use of an application example makes for a gentle introduction, which may leave readers searching for more typical compiler-level examples unsatisfied.]

E.D.Willink, UMLX - A Graphical Transformation Language for MDA, Workshop on Model Driven Architecture Foundations and Applications, University of Twente, The Netherlands, 26-27 June 2003, pages 13-24.

This paper is superseded by the OOPSLA version. This version has less UML compliant graphics, and a very superficial and now dated overview of the compiler and execution engine.

The PowerPoint slides contain more detail but no explanation.

The original submission is much longer, with more discussion of the meta-modelling perspectives, and more technical details.

 Documents

E.D.Willink, The UMLX Language Definition

See Towards a formalization of UMLX for precision, M4M03.pdf for overview.

E.D.Willink, UMLX Compiler Models 72 pages

This is the working design document for the original UMLX Compiler and the UMLX Execution Engine.

Once the Compiler was working, the models could have become the compiler source code.

[This provides examples of nearly 200 transformations, but has very scant descriptions. Diagrams and descriptions are not necessarily consistent because diagrams have to be manually pasted from GME screen shots.]

E.D.Willink, Towards a formalization of UMLX 38 pages

This working document provides a formal definition of UMLX.