Our approach to defining transformation languages is to use rich metamodels to capture all aspects of their definition, including syntax and semantics. A key property is that definitions of existing languages and technologies (such as XOCL) can be merged in with the new language, creating richer, more expressive capabilities. The result is a precise definition that is: platform independent (no reliance on external technology), transparent (the entire definition, including its semantics can be traced back through the metamodel architecture); extensible and interoperable (new features can be added by adding new language components), and executable (enabling the language to be tested and validated). There has been much recent interest in the design of domain specific languages, and the approach described in this paper offers a scalable solution to the problem of how to generate new languages and tools that support those languages in a generic fashion. In summary, our position is that a crucial step in the design of transformations languages must be the adoption of more complete and semantically rich approaches to metamodelling.
展开▼