DOI

Model querying is an integral part of Model-Driven Engineering. Developers query models when specifying model transformations, when defining model constraints, or simply when they need to extract some information from the model. Model queries are often specified in a general-purpose programming language, with developers just navigating models through their programming interfaces. OCL is the best known model query language, and while successful, it is difficult to express complex structural properties featured in target model elements. In this paper we describe a model query facility that aims at easing the description of structural features in a query. In our approach, developers model their queries by reusing fragments of the target model to specify the invariant parts of the template, augmented with variables and special relations to specify what can vary. The query itself conforms to a meta-model that extends the meta-model under-query. By reusing the queried meta- model developers can reduce the mental overhead that comes from using a different language to specify the queries. We have developed a proof of concept tool for the Eclipse Modeling Framework (EMF) that (1) generates a query meta-model from a target meta- model, (2) allows the construction of queries using a graphical, graph-based editor and (3) executes the queries by translating them to a set of logic predicates that are then evaluated using an extension of the logic-based query language Ekeko.
Original languageEnglish
Title of host publicationProceedings of the 2015 ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences
Place of PublicationNew York, NY, USA
PublisherACM
Pages181-184
Number of pages4
ISBN (Print)978-1-4503-3687-1
DOIs
Publication statusPublished - 2015
EventGPCE - 2015 ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences - Pittsburgh, United States
Duration: 26 Oct 201527 Oct 2015

Conference

ConferenceGPCE - 2015 ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences
CountryUnited States
CityPittsburgh
Period26/10/1527/10/15

ID: 13906564