© University of Kent - Contact | Feedback | Legal | FOI | Cookies
A Relational Approach to Defining and Implementing Transformations in Metamodels
David Akehurst, Stuart Kent, and Octavian Patrascoiu
Software and Systems Modeling, 2(4):182-196, December 2003.Abstract
Metamodelling is becoming a standard way of defining languages such as the UML. A language definition distinguishes between concrete syntax, abstract syntax and semantics domain. It is possible to define all three using a metamodelling approach, but it is less clear how to define the transformations between them. This paper proposes an approach which uses metamodelling patterns that capture the essence of mathematical relations. It shows how these patterns can be used to define both the relationship between concrete syntax and abstract syntax, and between abstract syntax and semantics domain, for a fragment of UML. A goal of the approach is to provide a complete specification of a language from which intelligent tools can be generated. The paper describes implementations of the examples, which have been partially generated from the metamodel definitions using a tool generation tool. A number of issues emerge which need to be solved in order to achieve the stated goal; these are discussed. The approach to defining mappings is also applicable to defining mappings between languages; this is discussed.
Bibtex Record
@article{1764, author = {David Akehurst and Stuart Kent and Octavian Patrascoiu}, title = {{A} {R}elational {A}pproach to {D}efining and {I}mplementing {T}ransformations in {M}etamodels}, month = {December}, year = {2003}, pages = {182-196}, keywords = {determinacy analysis, Craig interpolants}, note = {}, doi = {}, url = {http://www.cs.kent.ac.uk/pubs/2003/1764}, publication_type = {article}, submission_id = {6344_1074168491}, journal = {Software and Systems Modeling}, volume = {2}, number = {4}, publisher = {Springer-Verlag}, }