Skip to end of metadata
Go to start of metadata

When using external libraries or defining your own types you usually refer to them inside your model. For example when using them as a type of an Attribute or as the type of an parameter in an Operation.

Often users tend to refer to these types with a string value in the Type field of the Attribute/Parameter.

By using a Primitve element inside your model, you can refere to it via an actual model reference. 

This has the following advantages:

  • You exaclty see which types are used inside your model
  • Typing errors can be traced back to only one source
  • Refactoring/renaming can be done by changing a single element
  • Better tracebility

Since the code generation will use the "Normalized Name" for an element/type it is not always possible to write certain type and or keyword combinations.

To do this you can use a Primitve element, since the code generation will output the name of the element as it is (not using the "Normalized Name").

Normalized element name

all illegal characters are replaced by '_'.

Legal characters:

  • first character: _ or [a-z] or [A-Z]
  • following characters: _ or [a-z] or [A-Z] or [0-9]


  • No labels