Composition Techniques for Rule-Based Model Transformation Languages

Composition Techniques for Rule-Based Model Transformation Languages
复制标题

DOI:
10.1007/978-3-540-69927-9_11
复制
发表时间:
2008-07
期刊:
--
影响因子:
--
通讯作者:
Dennis Wagelaar
Dennis Wagelaar
中科院分区:
其他
文献类型:
--
作者:
Dennis Wagelaar

文献摘要

被引文献

相似文献

模型转换语言已经成熟到了这样一个程度,除了编写模型转换定义的语言之外,人们还开始自己试验模型转换定义。除了转换语言属性之外,模型转换定义本身的属性也变得很重要,例如可伸缩性、可维护性和可重用性。模型转换的组合允许创建更小的、可维护的和可重用的模型转换定义,这些定义可以向上扩展到更大的模型转换。有两种用于模型转换的组合。外部组合通过将模型从一个转换传递到另一个来处理将单独的模型转换链接在一起。内部组合将两个模型转换定义组合成一个新的模型转换,这通常需要转换语言的知识。本文重点研究了两种基于规则的模型转换语言的内部组合。一个是ATLAS转换语言,它是我们的实现工具。另一种是QVT关系语言,它是MOF的标准转换语言。我们提出了一种称为模块叠加的组合技术。我们讨论了模块叠加如何与ATL中的其他组合技术交互,如助手、称为规则和规则继承。这些技术结合在一起,允许强大地组合整个转换模块以及单独的转换规则。通过将叠加应用于QVT关系,我们证明了我们的合成技术也与ATL语言之外的相关。
Model transformation languages have matured to a point where people have started experimenting with model transformation definitions themselves in addition to the language they are written in. In addition to the transformation language properties, the properties of model transformation definitions themselves become important, such as scalability, maintainability and reusability. Composition of model transformations allows for the creation of smaller, maintainable and reusable model transformation definitions that can scale up to a larger model transformation. There are two kinds of composition for model transformations. External composition deals with chaining separate model transformations together by passing models from one transformation to another. Internal composition composes two model transformation definitions into one new model transformation, which typically requires knowledge of the transformation language. This paper focuses on internal composition for two rule-based model transformation languages. One is the ATLAS Transformation Language, which serves as our implementation vehicle. The other is the QVT Relations language, which is a standard transformation language for MOF. We propose a composition technique called module superimposition. We discuss how module superimposition interacts with other composition techniques in ATL, such as helpers, called rules and rule inheritance. Together, these techniques allow for powerful composition of entire transformation modules as well as individual transformation rules. By applying superimposition to QVT Relations, we demonstrate that our composition technique is relevant outside the ATL language as well.