Translating essential OCL invariants to nested graph constraints for generating instances of meta-models
Translating essential OCL invariants to nested graph constraints for generating instances of meta-models
复制标题
DOI:
10.1016/j.scico.2017.08.006
复制
发表时间:
2018-01-15
影响因子:
1.3
通讯作者:
Taentzer, Gabriele
中科院分区:
文献类型:
--
作者:
Radke, Hendrik;Arendt, Thorsten;Taentzer, Gabriele
Domain-specific modeling languages (DSMLs) are usually defined by meta-modeling using the Object Constraint Language (OCL) for specifying invariants. This approach is purely declarative in the sense that instance construction is not supported. In contrast, grammar-based language definition incorporates the stepwise construction of instances by applying production rules. Since the underlying structure of models are generally graphs, graph grammars are well suited to define modeling languages. Establishing a formal relation between meta-modeling and graph grammars opens up the possibility to integrate techniques of both fields. This integration can be advantageously used for optimizing DSML definition. We follow an approach where a meta-model is translated to a type graph with a set of nested graph constraints. While previous meta-model translations neglected OCL constraints, we focus on the translation of Essential OCL invariants to nested graph constraints in this paper. We show that a model satisfies an Essential OCL invariant iff its corresponding instance graph satisfies the corresponding nested graph constraint. In addition, nested graph constraints can be translated to application conditions of graph transformation rules. Composing both translations, an instance-generating graph grammar can be equipped with application conditions such that it generates instances of the original meta-model only. (C) 2017 The Authors. Published by Elsevier B.V.