Specifying MetaAssociation Behavior
The MetaAssociationType, associated with its orientation, enables determination of the operation to be executed on each of its MetaAssociationEnds for the following functions: extraction, protection, object deletion, query isolated objects, comparison and impact analysis in the explorer. Main operators are the following:
|
_Operator
|
Used for
|
|
Extract
|
Object extraction
|
|
Delete (Propagate)
|
Object deletion
|
|
Protect
|
Object protection
|
|
Isolate
|
Query isolated objects
|
|
Compare
|
Comparison of repositories
|
|
Duplicate
|
Object duplication
|
Operators act differently depending on major/minor orientation of links and the MetaAssociationTypes associated with the MetaAssociations .
The behavior of an operator related to a MetaAssociation is specified in the "Operator Name Behavior" attributes calculated on each MetaAssociationEnd. This attribute is visible:
• in the Behavior tab of the properties of a MetaAssociation.
A MetaAssociation can have only one type. To modify the MetaAssociationType, you must disconnect it from its current type and then connect it to the new type.
This can be done in the metamodel diagram by opening the Properties window of each MetaAssociation.
You can directly modify the behavior of a link for a given operator in the Behavior tab of the MetaAssociation:

Link type processing during extraction:
The extraction processes the values in the following order:
• The value of the "Minor to major behavior" or "Major to minor behavior" characteristic (depending on whether the MetaAssociationEnd followed is major or minor) for the link between the link and the operator, if it exists.
• The value of the "Minor to major behavior" or "Major to minor behavior" characteristic of the link between the link type and the operator.
• The default value A (Abort) for "Minor to major behavior" and D (Deep) for"Major to minor behavior" if none of the previous links are specified.
If the determined value is S (standard), the value of the _Scantype characteristic for the link between the object type (segment) and the operator is also used, if it exists.
This is the case for Entity, Relationship, MetaAssociationEnd , Rule, and Information, where the value is D (Deep).
This means the Entity, etc. is extracted plus the dependencies.
The behavior of an operator related to a link is specified in the calculated attributes on each MetaAssociationEnd.