The most basic feature of each language is creating instances of classes and setting values. With the set assignment statement, it is possible to create objects of base types like strings, integers, booleans, etc. whereas objects of complex types need to be instantiated (created) first with the create statement.
If you define an output object node having a complex type (opposed to base types like String, Integer, etc.), it needs to be created first. In object-oriented terminology: class objects need to be instantiated (that is creating an instance of the corresponding class). Once the instance of the class (the object) has been created, it can store data in its attributes.

Creating Base Types with the set Assignment Statement

The following examples shows how to use the set assignment statement to create base type objects.

 

Syntax
set anObject = aValue;
SemanticsAssigns a value to anObject.
SubstitutablesanObject Can be an object node, an attribute, or an association end.
aValue Can be a literal, a base type object node, or an EAL operation or expression returning a base type.
Examples
set aString = "Hello World!"; 
set anInteger = 12345; 
set currentDate = currentDateTime();

The example in the figure below shows how to create base type objects like strings, integers, etc. Base type objects need not to be instantiated, they are created by using the set assignment statement to directly assign a value to the variable.
All variables are drawn as object nodes with all objects being of base type (see also Base Types). 

Figure: Creating Base Type Objects

Attributes of an object are also assigned values by using the set assignment statement as shown in the figure below.

Figure: Setting Attribute Values

Creating Arrays by Appending Items

Creating Objects of Complex Type

The following example shows how to use the create statement to create objects of complex type.

 

Syntax
 create anObject;
SemanticsCreates an object of complex type. The object reference is stored in anObject. Initial values defined on the class attributes will be set.
SubstitutablesanObjectCan be any valid object name. 
Examples
 create simpleObject;

In the following cases, objects need to be created with the create statement:

In the following cases, the create statement is not necessary:

Scalar base type objects are never created using the create statement.