PTL: A Model Transformation Language based on Logic Programming
Identifiers
URI: http://hdl.handle.net/10835/5277
ISSN: 2352-2208
DOI: http://doi.org/10.1016/j.jlamp.2015.06.006
ISSN: 2352-2208
DOI: http://doi.org/10.1016/j.jlamp.2015.06.006
Share
Metadata
Show full item recordAuthor/s
Almendros Jiménez, Jesús Manuel; Iribarne Martínez, Luis Fernando; López Fernández, Jesús J.; Mora-Segura, ÁngelDate
2016Abstract
In this paper we present a model transformation language based on logic programming. The language, called PTL (Prolog based Transformation Language), can be considered as a hybrid language in which ATL (Atlas Transformation Language)-style rules are combined with logic rules for defining transformations. ATL-style rules are used to define mappings from source models to target models while logic rules are used as helpers. The implementation of PTL is based on the encoding of the ATL-style rules by Prolog rules. Thus, PTL makes use of Prolog as a transformation engine. We have provided a declarative semantics to PTL and proved the semantics equivalent to the encoded program. We have studied an encoding of OCL (Object Constraint Language) with Prolog goals in order to map ATL to PTL. Thus a subset of PTL can be considered equivalent to a subset of ATL. The proposed language can be also used for model validation, that is, for checking constraints on models and transformations. We have equi...