# 20.3.7 Different Notations and the Reidentification Key

### Intended learning outcomes: Describe the commonly used crow’s-foot notation for depicting associations in the entity-oriented approach. Identify the common notation for associations in the entity-oriented approach. Explain the Representation of associations in an object-oriented form, as well as the concept of the reidentification key.

Figure 20.3.7.1 shows a common notation for the entity-oriented approach.

Fig. 20.3.7.1       Commonly used crow’s-foot notation for depicting associations in the entity-oriented approach: Crow’s-foot symbol for a multivalued role, and solid circle for a partial role.

In the characterization of the association, the multivalued role dominates here, in that role names are shown only for the multivalued role. The requirement is that the name of the single-valued role can be derived from the property of the associated classes. A multivalued role is indicated by a line ending (toward the target class) in a crow’s-foot symbol, a foot with three toes (maximum cardinality is not shown). A partial role is represented by a solid circle before the crow’s foot.

Figure 20.3.7.2 shows another notation style for the entity-oriented approach.

Fig. 20.3.7.2       Common notation for associations in the entity-oriented approach: m for a multivalued role, and c for a partial role.

The crow’s-foot symbol is replaced by the letter m (for many). The number 1 stands for a total, single-valued role. If the role is partial, this is indicated by the letter c (for conditional). In contrast to the above definition of the single letter n in the 1-to-n association, the letter m without a c stands here for the total, multivalued role (which occurs rarely), and mc for partial, multivalued role (occurs frequently).

In addition, Figure 20.3.7.2, like Figure 20.3.7.1, shows the phenomenon of reidentification specifically for classes that were introduced to break up an n-to-n association.

A reidentification key is a primary key that consists of one single attribute and is equivalent in meaning to a primary key composed of more than one attribute.

The reidentification is usually already expressed in the name of the class, and it is indicated in the list of attributes by the symbol “≡ .” The original primary key attributes are placed in parentheses.

Figure 20.3.7.3 shows the breaking up of a many-to-many (n-to-n) association using object-oriented notation in accordance with UML (see [UML13]), and complemented by the notation for the primary and secondary keys and the re-identification. As mentioned above, because of the splitting, the single-valued roles can be named “belongs to.”

Fig. 20.3.7.3       Representation of associations: object-oriented form.

It is typical of the association class that is formed by breaking up an n-to-n association that a possible primary key is always the set union of the primary keys of the classes that generated it, which in the example are customer ID and item ID. In practice, this primary key is often reidentified by a single attribute, in this case order position ID. On their own, both customer ID and item ID are secondary keys. Via customer ID, all items ordered by a customer can be obtained. Via item ID, all customers that have ordered that item can be identified. Furthermore, In Figure 20.3.7.3, the two attributes mentioned in Figure 20.3.6.1, order quantity and delivery due date, have also been added.

## Course section 20.3: Subsections and their intended learning outcomes

• ##### 20.3 Modeling Information Systems in the Data View and Object View

Intended learning outcomes: Present terms such as object, attribute, object class, view, primary and secondary keys. Explain basic concepts such as association, association role and type. Describe the breaking up of an n-to-n association – in particular a reflexive one – and the association class. Disclose the use of the hierarchical constructs for developing a company-wide generic object model.

• ##### 20.3.1 Object, Attribute, and Object Class

Intended learning outcomes: Differentiate between entity, object, and data record. Differentiate between attribute and data field. Differentiate between object class, file, and table. Explain the class customer as a table in the relational database model.

• ##### 20.3.2 View and Primary and Secondary Keys

Intended learning outcomes: Produce an overview on the view on a class. Differentiate between primary key and secondary key. Describe characteristics for a “good” primary key. Explain the representation of a class in an object-oriented approach (with example) and the representation of an object.

• ##### 20.3.3 Association and (Association) Role

Intended learning outcomes: Differentiate between binary association and reflexive association. Explain Abrial’s access function and the example of the association of the classes “book” and “customer” in library systems. Identify the (association) role.

• ##### 20.3.4 Single-Valued and Multivalued Roles, and Total and Partial Roles

Intended learning outcomes: Differentiate between a single-valued role and a multivalued role. Differentiate between a total and a partial role, or access function.

• ##### 20.3.5 Association Types

Intended learning outcomes: Differentiate between the 1-to-1 association, the 1-to-n association, the n-to-1 association, and the n-to-n association. Explain various examples of different binary associations.

• ##### 20.3.6 Breaking up an n-to-n Association; Association Class

Intended learning outcomes: Explain the association class formed by breaking up an n-to-n association into a 1-to-n association and an n-to-1 association.

• ##### 20.3.7 Different Notations and the Reidentification Key

Intended learning outcomes: Describe the commonly used crow’s-foot notation for depicting associations in the entity-oriented approach. Identify the common notation for associations in the entity-oriented approach. Explain the Representation of associations in an object-oriented form, as well as the concept of the reidentification key.

• ##### 20.3.8 Breaking Up a Reflexive n-to-n Association

Intended learning outcomes: Explain Breaking up a reflexive n-to-n association, consisting of step 1: Duplicate the class to create its two subclasses, step 2: Classical breakdown and step 3: Merge the generating classes.

• ##### 20.3.9 Using the Hierarchical Constructs Based on Basic Ob­ject Classes: The Company-Wide Generic Object Model

Intended learning outcomes: Explain the basic object classes and possible subclasses (specializations) of an industrial company. Describe the concept of a company-wide data model, or generic model.