Overview of Xtext Framework - mn-mikke/Model-driven-Pretty-Printer-for-Xtext-Framework GitHub Wiki

This page describes the [Xtext Framework](http: //www.eclipse.org/Xtext/), which is a plug-in for Eclipse IDE , from user's point of view. Xtext is being developed by Itemis AG company and is freely available under the Eclipse Public License (EPL).

Domain of Use

The Xtext framework is primarily intended for the development of small textual domain-specific or full-blown general purpose programming languages. A great advantage of the Xtext framework is its continuity with Eclipse Modeling Framework (EMF) that enables conversion of code written in a particular language to a model, which can be further modified, transformed to another model or serialized to code of any language. The only matter which is necessary to establish a link between code and a model is to have a meta-model and refer to it in the rules of the given language grammar. The meta-model is essentially the description what the model structure should look like. If the structure of the final model is not important, a meta-model does not have to be defined by a user but can be generated from the grammar. The main ideas expressed in this paragraph are depicted in the Figure.

Figure

A diagram expressing how a model, a meta-model, a grammar and DSL code are interconnected. The diagram utilizes a simple example with animals in a zoo.

Figure

Details

The Xtext framework exploits the Grammar Language for defining a grammar of a particular language. Moreover, the Xtext framework allows for defining support tools making work with a developed language more easier. Especially, the framework offers to configure code formatting and syntax highlighting for a language with a defined grammar.