//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
    
    
