Page 171 -
P. 171

156     NGUYEN  AND  DILLON
                    Enter judges for events

                             Judge (name) . . . is assigned to Event ( ) . . .
                             Constraint: If Judge j is assigned to Event e, and Event e is of EventType t, then Judge
                             j is (must be) qualified for EventType t.

                      Note: As mentioned earlier, while identifying fact types, we are in a good position to identify the
                    constraints applied to the fact types under consideration, and we can then express the constraints
                    in terms of these fact types. In this section, to save space, we will record only the “less common”
                    constraints. In particular, we omit “common” constraints such as uniqueness constraints (e.g., each
                    club must be at one address) or mandatory constraints (e.g., each club must have a phone number). In
                    practice, these common constraints, due to their importance, are routinely specified on the conceptual
                    schema diagram, especially when tools such as VisioModeler (see ORM, 2007) are used.

                    Fact Types About the Team Registrations

                    Register a team and its members in a meet (for a competition). Similar to the notion that a team
                    is a club in a competition, we have the concept of a “member” (for want of a better term) as a
                    gymnast participating in a team. The inclusion of “member” makes it a little clearer to express,
                    for example, in the case of the awarding of a score, which the gymnast receives as a member of
                    a team rather than just as a gymnast of a club.

                             Team ([club] + [Competition]) . . . enter Competition ( ) . . .
                             Member ([Gymnast] + [Team]) . . . is Gymnast ( ) . . .
                             Member ( ) . . . belongs to Team ( ) . . .
                             Constraint (informally expressed): A gymnast (member) can belong to a team, which
                             is registered for a particular type of competition, only if the gymnast is eligible (hav-
                             ing suitable gender and age) for that type of competition.


                    Fact Types About Scoring
                    The fact types related to scoring are listed below. Note that the last two fact types can be derived
                    from the first fact type and other relevant fact types that have been identified earlier. For example,
                    the score received by a gymnast for an event is calculated by discarding the highest and the lowest
                    scores of the judges.


                    Enter a score
                             Judge ( ) . . . gives Score (number) . . . to Member ( ) . . . in Event ( ) . . .
                             Member ( ) . . . receives Score ( ) . . . for Event ( ) . . . [derived]
                             Team ( ) . . . receives Score ( ) . . . for Event ( ) . . . [derived]
                             Constraint (informally expressed): A gymnast participating in a competition must have
                             a score for each event of that competition from each of the judges of the event.

                    Conceptual Schema Diagram

                    From the fact types that have been identified above, we construct the ORM conceptual schema
                    shown in Figure 9.4.
   166   167   168   169   170   171   172   173   174   175   176