Please note : This help page is not for the latest version of Enterprise Architect. The latest help can be found here.

Defining a Modeling Language


If you want to perform more specialized modeling, you can extend the base UML modeling elements and their use to develop your own modeling language or solution. A simple method of doing this is to develop and deploy an MDG Technology, which can contain a number of specialized Profiles and a range of other mechanisms to provide the broadest scope for your customized solution.

Extension Facilities



See also

MDG Technologies

An MDG Technology is a vehicle for providing access to the resources of a commercially-available technology or one that you have created yourself. Such resources include a wide range of facilities and tools, such as UML Profiles, code modules, scripts, Patterns, images, Tagged Value Types, RTF report templates, linked document templates, Toolbox pages and Learning Center pages.


MDG Technologies - Creating


Profiles are a means of extending UML; you use them to build models in particular domains.

A Profile is a collection of additional stereotypes and Tagged Values that extend or are applied to elements, attributes, methods and connectors, which together describe some particular modeling problem and facilitate modeling constructs in that domain.


Using UML Profiles


Developing Profiles


Stereotypes are an inbuilt mechanism for logically extending or altering the meaning, display and syntax of a model element. Different model elements have different standard stereotypes associated with them.

The same principles apply when you customize your own stereotypes, either through the UML Types dialog to qualify an element of an existing type, or as elements that extend a specific metaclass to define a new element type.

UML Stereotypes

Custom Stereotypes

Create UML Profiles


Design Patterns

Patterns are groups of collaborating Objects/Classes that can be abstracted from a general set of modeling scenarios (that is, parameterized collaborations).

They generally describe how to solve an abstract problem, and are an excellent means of achieving re-use and building in robustness.


Design Patterns

Create a Pattern

Shape Scripts

A Shape Script is a script that applies a custom shape and orientation to an element or connector, in place of that object's standard UML notation. Each script is associated with a particular stereotype, and is drawn for every object having that stereotype.

Where you redefine the properties of a standard UML object to create a new object, you can apply a new shape to the object as well.


Shape Scripts

Tagged Value Types

You use Tagged Values to add further properties to a model element. You can apply them at three levels:

As a standard Tagged Value associated with the model element
As a customized Tagged Value based on a standard Tagged Value Type
As a customized Tagged Value based on a customized Tagged Value Type


Tagged Values

Tagged Value Types

Create Custom Tagged Value Type

Code Template Frameworks

Within Enterprise Architect, you can modify the way code is generated or transformed, including generating code for behavioral models, by customizing the templates that control these actions. You can also incorporate these templates in a technology, to add the customized generation and transformation to the facilities of that technology.


Code Template Framework