Chapter 1. Introduction

This document is an user-guide to create a Domain Specific Language (DSL) using the Kermeta language. This main document is a 10 minute-reading document and explains the different processes to rapidly achieve this goal. Thanks to the implemented functionalities inside Kermeta language, we can easily manipulate models, weave an compose elements without altering the core of our model.

[Important]Important

We recommend to the beginner to read this document till the end first. Advanced user might directly jump to the concrete examples : the FSM tutorial or the Logo Tutorial.

For the explanation of the concepts mentioned here, please refer to the Kermeta manual.

The main goal of this tutorial is to describe the main processes to provide Model Development Kit (MDK) to your DSL.

The big picture of this tutorial is illustrated in the figure below:

  1. starting from an ecore metamodel;

  2. we will provide editor to create its instance-model;

  3. we will add contracts (through aspect weaving with Kermeta) to manage constraints specified inside the metamodel;

  4. we will add some behavior (through aspect weaving with Kermeta) where you can bind with another framework (provide GUI defined with another language - Java for example).

MDK overview

Figure 1.1. MDK overview