There is an advanced property of role arrows that is set using this
dialogue box. Note that it is not normally necessary or desirable to set
this property. It allows the program generation routines to make certain
assumptions. If these assumptions are not valid, chaos will result.
An exclusive role is one such as motherhood. Although each mother may
have many children, each child has only one mother. This is often
expressed as a one-to-many relationship.
If you know there is always exactly one element in the list returned
from the association submodel in this role, then you may (but do not need
to) check the "Exclusive role" check box. The single element will then be
returned by itself, without being enclosed in a list as would otherwise be
the case. This allows you to use the value as an argument to functions
such as element(). It
may also be necessary to use this in conjunction with the property of
influence arrows: "Use values
made in same time step". It would probably help to talk to us about your
model.
If you want to use one-sided
relation enumeration, then the base model whose index you are looking
up (as you loop over the instances of the other base model) has to be the
one whose index is referred to as index(1) in the relation model. By
default this would be the one with the role arrow that you added most
recently, but it can be set using this property on its role arrow.
Since only one base model index can correspond to index(1) in the
association submodel, setting this property on one role arrow clears it
from other role arrows going to the same association submodel.
Free-form comments can be entered in this text box, and are stored with
the model.
In: Contents >> Working with submodels >> Association submodels