AROM Knowledge Representation in AROM AROM Documentation Download AROM Contacts Partners
 
 
Associations   

Associations

In AROM, associations and classes are equally important. Associations represent sets of similar links between two or more objects. Associations in AROM are similar to those in OO models like OMT and UML. An association connects some or all of the instances of n (n >= 2) classes, not necessarily distinct. An association thus defines a subset of the cross-product of the classes which are connected.

An association is characterized by its roles and its variables. A role r of an association corresponds to the connection between the association and the class it connects, called corresponding class of the role, and noted C(r). Each n-ary association has thus n roles and the value of each role is an instance of the corresponding class of the role. In AROM, each role has a name and a multiplicity. Multiplicity has in AROM the same meaning as in UML except that the semantics of multiplicity has been extended to associations with an arity greater than 2. The multiplicity of the role r in an association A is an interval of integers [min..max], such that:

  • min is the minimum number of objects in C(r) which must appear in A with the role r for any given (n-1)-uple of objects in the other roles.
  • max is the maximum number of objects in C(r) which can appear in A with the role r for any given (n-1)-uple of objects in the other roles.
For instance, the multiplicity of role employer in association WorksFor is [1..1]. It means that any instance of Employee works for exactly one instance of Division. Conversely, the multiplicity of role employee in association WorksFor is [0..*]. It means that in any instance of Division work an arbitrary number of Employee.

Graphical Notation