//Artefact:ModelClass/com/sphenon/modelling/xmodel/XMAssociation

Description

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/Polymorphic

Description

Type of polymorphism that applies to this mapping association.
If type is "none", this is a normal association.
If type is "SubScope", a value associated with a base type B does also apply per default to all derived types D.
If type is "SuperScope", a value associated with a base type B does also apply per default to all derived types D.
Applies to
▸ Model level: ☑ logical model ∙ ☐ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/ItemType

Description

Type of elements this association does point to. This corresponds to the element type of the collection that is used to implement the association.
Applies to
▸ Model level: ☐ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/OnAdd

Description

Code that is executed after an item is added to the collection implementing this association and after bidirectional synchronisation has taken place.
Applies to
▸ Model level: ☑ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/OnRemove

Description

Code that is executed after an item is removed from the collection implementing this association and after bidirectional synchronisation has taken place.
Applies to
▸ Model level: ☑ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/OnLoad

Description

Code that is executed after an item is added to the collection during loading state from the database.
Applies to
▸ Model level: ☑ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/OnAddSynchronisation

Description

Code that is executed after an item is added to the collection implementing this association to complete the update with respect to bidirectional associations, but before OnAdd code is executed.
Applies to
▸ Model level: ☐ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/OnRemoveSynchronisation

Description

Code that is executed after an item is removed from the collection implementing this association to complete the update with respect to bidirectional associations, but before OnRemove code is executed.
Applies to
▸ Model level: ☐ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/AddConstraints

Description

A condition which must be fulfilled before an instance of the respective class can be added to the association.
Applies to
▸ Model level: ☑ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/RemoveConstraints

Description

A condition which must be fulfilled before an instance of the respective class can be removed from the association.
Applies to
▸ Model level: ☑ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/EndIndex

Description

Position of this association end (attribute) in the corresponding association. This position provides a natural ordering. Such an ordering is useful e.g. in Many-To-Many relationships, where a desigated owning end is required.
Applies to
▸ Model level: ☐ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/OtherName

Description

Name of the attribute at the other end of this relation. Used in bidirectinal relationships.
Applies to
▸ Model level: ☐ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/OtherPath

Description

Model path of the corresponding technical model element at the other end of this relation.
Applies to
▸ Model level: ☐ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/Bidirectional

Description

If true, this attribute represents one end of a bidirectional association.
Applies to
▸ Model level: ☑ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☑ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/SingularName

Description

Returns the Singular Name of Association
Applies to
▸ Model level: ☑ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☑ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/Ordering

Description

Defines whether the members of this association are ordered and if so, how.
Applies to
▸ Model level: ☑ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/OtherOrdering

Description

Defines whether the members of the other end of this association are ordered and if so, how.
Applies to
▸ Model level: ☐ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/SortOrder

Description

If this association is sorted by members, this property specifies the respective sorting attributes and the sort direction.
Applies to
▸ Model level: ☑ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/Cascading

Description

Controls cascading behaviour, i.e. what happens to items at the other end if items at the property owning end are modified corresponding to the named cascading types.
Applies to
▸ Model level: ☑ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/OnRemoveDelete

Description

If true, the respective item is deleted after and whenever it is removed from this association. Basically, this is a special case of "OnRemove", executing "delete" on the item afterwards.
Applies to
▸ Model level: ☑ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/RequiredReference

Description

If true, the respective item requires at most one instance on the other side of this association, or at the other side of any assocation also tagged with this property (XMAssociation/RequiredReference).
If after an update of the associations of this item no partner on any of these associations is found, the item is deleted automatically.
Note: this mechanism requires either that all such involved associations are either bidrectional (so that the partners to be checked can be found), or otherwise that this item needs to support reference counting (not implemented yet).
Applies to
▸ Model level: ☑ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☑ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/DeletionConditions

Description

If this item is managed automatically (see XMAssociation/RequiredReference), these conditions are checked additionally.
If all conditions evaluate to 'true', and there are no further checks that prevent it, deletion is performed. A value of 'false' of one of these conditions unconditionally prevents deletion.
Applies to
▸ Model level: ☑ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☑ classes ∙ ☐ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/OnRemoveNotify

Description

If true, after removing from this association, the other side gets informed that such a modification happened.
This is used e.g. to check if instances shall destroy themselves when they get unreferenced. This property will be automatically set in the technical model if the other side of the assocation is marked as See XMAssociation/RequiredReference.
Applies to
▸ Model level: ☐ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☑ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states

//Artefact:ModelAttribute/com/sphenon/modelling/xmodel/XMAssociation/OnAddNotify

Description

If true, after adding to this association, the other side gets informed that such a modification happened.
This is used e.g. to check if instances shall destroy themselves when they get unreferenced. This property will be automatically set in the technical model if the other side of the assocation is marked as See XMAssociation/RequiredReference.
Applies to
▸ Model level: ☐ logical model ∙ ☑ technical model
▸ Model elements: ☐ packages ∙ ☐ classes ∙ ☑ attributes ∙ ☐ operations ∙ ☐ association ends ∙ ☐ states