The following kinds of Association relationships are defined in order of increasing semantics:
A Reference Association relationship is a nondescript relationship between two model elements, which indicates that one instance of the referencing model element may invoke operations or otherwise interact with instances of the referenced model element during an interaction between the two object. For example, if Block A has a Reference Association to Block B with Operation mumble, an instance of Block A may potentially send a message mumble to an instance of Block B during some interaction between the two objects.
A Part Association (a.k.a. Composition) relationship is a “whole-part relationship between two model elements, where one model element is the whole component and the other end is a part of the whole component, that is “owned by” the whole component. A Part Association relationship is drawn as an arrow where the tail is attached to the part element, and a black diamond arrowhead is attached to the whole component element. Part Association relationships manifest strong ownership semantics, where if the whole part is deleted or removed from the model, all the parts owned by the whole part will be deleted as well.
A Shared Association (a.k.a. Aggregation) relationship is a weaker form of the Part Association relationship described above. A Shared Association relationship is drawn as an arrow where the tail is attached to the part element, and a white diamond arrowhead is attached to the whole component element. Shared Association relationships manifest weak ownership semantics, where if the whole part is deleted or removed from the model, all the parts owned by the whole part will not be deleted.