@MASTERSTHESIS\{IMM2012-06383, author = "R. Acretoaie", title = "An implementation of {VMQL}", year = "2012", school = "Technical University of Denmark, {DTU} Informatics, {E-}mail: reception@imm.dtu.dk", address = "Asmussens Alle, Building 305, {DK-}2800 Kgs. Lyngby, Denmark", type = "", note = "Supervised by Associate Professor Harald St{\"{o}}rrle, hsto@imm.dtu.dk, {DTU} Informatics", url = "http://www.imm.dtu.dk/English.aspx", abstract = "As domain models may reach considerable sizes, retrieving the knowledge contained in them is often a nontrivial task. The fact that this task, known as model querying, must sometimes be performed by non-technical domain experts only makes matters more difficult. Existing model querying techniques suffer from limitations that make them unsuitable for many practical purposes. A proposed solution attempting to overcome the drawbacks of current ad-hoc model querying facilities is the visual model query language (VMQL). It aims to simplify the process of retrieving information from models by allowing modelers to express queries using the host modeling language, thus eliminating the need for them to learn a new query language. Additional expressive power is added to queries through model annotations. {VMQL} is a highly portable solution which may be applied to a wide array of host modeling languages. This thesis presents a tool implementing {VMQL} for {UML}. Since it is the second prototype to attempt this, the tool is called {MQ-}2. In order to provide seamless integration with existing modeling facilities, it is integrated with the MagicDraw {UML} modeling tool. {MQ-}2 is based on a query execution algorithm written in the Prolog logic programming language." }