By default roles are created with a relation, one on each side of the binary relation. N-ary relations can be created by adding roles to a relation. These operations are described in 5.3.

A role is the binary relationship between two objects. In ICOM, role is used to denote the connection of an entity to a relationship. It is also used to express the cardinality constraints of an entity in a relation. A role may have two constraints: Totality, or the minimum cardinality, reflects participation; while uniqueness represents the maximum cardinality. A minimum cardinality of 1 indicates all instances of an entity must participate in the relationship at least once. A maximum cardinality of 1 indicates all instances of an entity can only participate once in the relationship (unique). When a role is selected, two checkboxes are enabled in the respected Data tab panel to reflect the constraints of the relationship respectively. Selecting the boxes changes the constraints applied. The table in figure 8 shows the possible combinations of constraints and their visual representation.

Figure 8: Cardinality constraints for roles in ICOM.
Minimum Cardinality Maximum Cardinality Visual Representation
0 1 Image Rol01
0 n Image Role0n
1 1 Image Role11
1 n Image Rol1n

Pablo Fillottrani 2010-08-17