Bookshelf Home | Contents | Index | PDF

When you define a relationship, you can specify a minimum, maximum, and default cardinality. Cardinality refers to the quantity of the products the user can select from a relationship. For example, you define a relationship called Hard Drives. It contains a 20 GB drive and a 30 GB drive. If you set the minimum cardinality to 2, the user must pick 2 items from this relationship. The user can do this in any of the following ways:

• Pick one 20 GB drive and one 30 GB drive
• Pick two 20 GB drives
• Pick two 30 GB drives

The three types of cardinality you can define for a relationship are as follows:

• Minimum Cardinality. Governs whether or not selecting items from this relationship is optional or is required. If you set the minimum cardinality to 0, selecting items is optional. If you set the minimum cardinality to greater than 0, the user must select that number of items from the relationship.
• Maximum Cardinality. Sets the maximum number of items that the user can select from a relationship. If you set the minimum cardinality to greater than 0, you must set the maximum cardinality to a number at least as large If you do not enter a maximum cardinality, the default is 999. To revise this default, see Revising the System Default Cardinalities.
• Default Cardinality. Specifies what quantity of the default product is automatically added to the initial solution that the user sees. Default cardinality must be equal to or greater than the minimum cardinality and must be less than or equal to the maximum cardinality.

If you specify a default cardinality and do not specify a default product, the system uses the first product that displays when you expand the relationship folder in the Product Designer.

#### Combinations for Setting Cardinality

Table 18 describes several combinations for setting cardinality. The table shows what the user will see in the initial solution and what actions that the user can take. In the table, N is the quantity of the default product in the initial solution. In all the cases where the Min Card is greater than 0, the user can substitute other products for the default product.

Table 18.  Combinations of Cardinality
Min Card
Default Card
Max Card
User Pick Reqd?
Initial Solution
User Actions Allowed

=0

= Min Card

>Default Card

No

No

No items

Increase item quantities to Max Card.

=0

> Min Card

=Default Card

No

No

N=Max Card

Decrease Item quantities to 0 but cannot increase them.

=0

> Min Card

>Default Card

No

No

N=Default Card

Increase item quantities to Max Card or decrease them to 0.

>0

= Min Card

=Default Card

Yes

Yes

N=Min, Default, Max

Cannot increase or decrease item quantities.

>0

= Min Card

> Default Card

Yes

Yes

N=Min

Can increase item quantities to Max Card but cannot decrease them.

>0

> Min Card

= Default Card

Yes

Yes

N=Default

Can decrease item quantities to Min Card but cannot increase them.

>0

> Min Card

>Default Card

Yes

Yes

N=Default

Can decrease item quantities to Min Card or increase them to Max Card.

Generics are notifications to the user from the engine that one or more items within a relationship needs to be selected for the customizable product to be correct. An example of generics is a red star displayed next to the relationship name and product title during a configuration session because some minimum cardinality requirements were not satisfied. The configurator gives users a warning when they try to save a configuration that has generics in it, but it allows users to save the configuration and also saves the fact that the configuration is incomplete to the quote or order.

When the user verifies a quote, the application checks for incomplete configurations as well as for other information. If the configuration saved was incomplete because of unsatisfied cardinalities on relationships, the application displays a message when the user verifies saying that the configuration of the item is not complete and the user should reconfigure the item.