QVT

QVT Architecture as shown in the OMG standard

QVT (Query/View/Transformation) is a standard set of languages for model transformation defined by the Object Management Group.[1]

Overview

Model transformation is a key technique used in model-driven architecture. As the name QVT indicates, the OMG standard covers transformations, views and queries together. Model queries and model views can be seen as special kinds of model transformation, provided that we use a suitably broad definition of model transformation: a model transformation is a program which operates on models.

The QVT standard defines three model transformation languages. All of them operate on models which conform to Meta-Object Facility (MOF) 2.0 metamodels; the transformation states which metamodels are used. A transformation in any of the three QVT languages can itself be regarded as a model, conforming to one of the metamodels specified in the standard. The QVT standard integrates the OCL 2.0 standard and also extends it with imperative features.

Finally there is a mechanism called QVT-BlackBox for invoking transformation facilities expressed in other languages (for example XSLT or XQuery).

Although QVT has a broad scope, it does not cover everything that has been considered as a model transformation, view or query. For example, the QVT languages do not permit transformations to or from textual models, since each model must conform to some MOF 2.0 metamodel. Model-to-text transformations are being standardised separately by OMG (see MOFM2T).

History

In 2002, OMG issued a Request for proposal (RFP) on MOF Query/View/Transformation to seek a standard compatible with the Model Driven Architecture (MDA) recommendation suite (UML, MOF, OCL, etc.).

Several replies were given by a number of companies and research institutions that evolved during three years to produce a common proposal, based on a draft by UK research Dr Laurence Tratt. The first version was submitted and approved in 2005.[3] QVT Version 1.1 was released in January 2011.[1]

Implementations

QVT-Operational:

QVT-Core:

QVT-Relations:

QVT-Like:

See also

References

  1. 1 2 Bast, Wim; Murphree, Michael; Lawley, Michael; Duddy, Keith; Belaunde, Mariano; Griffin, Catherine; Sendall, Shane; Vojtisek, Didier; Steel, Jim; Helsen, Simon; Tratt, Laurence; Reddy, Sreedhar; Venkatesh, R.; Blanc, Xavier; Dvorak, Radek; Willink, Ed (January 2011). "Meta Object Facility (MOF) 2.0 Query/View/Transformation (QVT)" (pdf). Object Management Group. Retrieved 9 May 2011.
  2. Stevens, Perdita (2011). "A simple game-theoretic approach to checkonly QVT Relations". Software and Systems Modeling. Berlin / Heidelberg: Springer. 12: 175. doi:10.1007/s10270-011-0198-8.
  3. Bast, Wim; Murphree, Michael; Lawley, Michael; Duddy, Keith; Belaunde, Mariano; Griffin, Catherine; Sendall, Shane; Vojtisek, Didier; Steel, Jim; Helsen, Simon; Tratt, Laurence; Reddy, Sreedhar; Venkatesh, R.; Blanc, Xavier; Dvorak, Radek; Willink, Ed. "Meta Object Facility (MOF) 2.0 Query/View/Transformation (QVT)" (pdf). Object Management Group. Retrieved 1 Nov 2013.
  4. [m2m-dev] Borland QVT contribution
  5. 1 2 Eclipse M2M Project. http://www.eclipse.org/m2m/ . Retrieved 9 May 2011.
  6. ModelMorf beta. "Archived copy". Archived from the original on March 23, 2012. Retrieved May 9, 2011. . Retrieved 9 May 2011.
  7. TCS Code Generator Framework (previously known as MasterCraft). "Archived copy". Archived from the original on August 9, 2011. Retrieved May 9, 2011. . Retrieved 9 May 2011.
  8. Medini QVT. http://projects.ikv.de/qvt/wiki . Retrieved 9 May 2011.
  9. Kiegeland, J.; Eichler, H. (February 2008), "medini QVT workshop", medini QVT workshop (ppt), Enschede, Telematica Instituut: ikv++ technologies ag, retrieved 2015-09-24
  10. Echo. http://haslab.github.io/echo.[] Retrieved 2 Nov 2013.
  11. jQVT. https://sourceforge.net/projects/jqvt/
  12. Model Transformation Framework. http://www.alphaworks.ibm.com/tech/mtf . Retrieved 9 May 2011.
This article is issued from Wikipedia - version of the 9/7/2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.