next up previous
Next: 3.3.4 Variable actions Up: 3.3 Read and write Previous: 3.3.2 Attribute actions

3.3.3 Association actions

Associations are the classes of links. When instantiated, a link connects two or more objects6. There can be multiplicity of more than $1$ for each end of an association, but the multiplicity for a link end can only be $1..1$, because when instantiated, there should be exactly one object at a link end. (Link ends with no object are not considered.)

Association actions actually perform read/write actions on links. A link cannot be passed to an action from input pins. Instead, it is the objects on link ends that are passed to the action. So, each association action is statically bound to a specific association, with exactly one input pin for each end of the association. From those input pins, objects can be passed to the action as parameters specifying a link instance.

For write actions, all the link objects are given at run time. The action can thus locate the link and modify it. There are strict limitations for write actions: when a link is created, it can only be destroyed or reordered; neither qualifiers nor link objects can be changed.

For read actions, $n-1$ objects are given on input pins, where the link actually has $n$ objects. The read action is to find the omitted object, which becomes the result on an output pin when the action is completed.


next up previous
Next: 3.3.4 Variable actions Up: 3.3 Read and write Previous: 3.3.2 Attribute actions
Thomas Feng 2003-04-18