Abstract Clause

An abstract relationship indicates that a user will not be able to create a connection of the relationship. An abstract relationship is helpful because you do not have to reenter groups of attributes that are often reused. If an additional field is required, it needs to be added only once.

Use one the following clauses:

abstract true

Or:

abstract false

If the user can create a connection of the defined relationship, set the abstract argument to false. If not, set the abstract argument to true. If you do not use the Abstract clause, false is assumed, allowing users to create instances of the relationship. For example:

add relationship parentrel from type T1 to type T2 abstract true;
add relationship childrel derived parentrel;

Since the relationship “parentrel” is abstract, there will never be any actual instances made of the “parentrel” relationship. However, “parentrel” can be inherited by other relationships that are not abstract. The child relationship “childrel” is not abstract and instances of this relationship can be created.