Total Disjoint vs U-type in EERD

55 views Asked by At

enter image description here What's the difference between these two? I see both of them in extended ERD, but I'm confused about what's the difference. I read both as "A Vehicle is either a Car or a Truck". Are U-types (categories) an alternative way to show total disjoints, or are there any advantages of using one over the other?

The only thing I found online is: Choose hierarchy representation if superclasses have many common attributes

1

There are 1 answers

0
Christophe On

There are several different EERD formats. The one you describe, instead of using a simple IsA specialisation is certainly not the most used:

  • The U stands for Union. It means that Vehicle groups the superclasses Truck and Car. In other words, each instance of a Vehicle is an instance of Truck or an instance of Car or an instance of both. This logic is based on the set theory, since entities correspond to sets.
  • The D stands for Disjoint. It means that the class Vehicle can be specialised into either a Truck or a Car, but that an instance must be the one or the other (no overlap between subclasses under a same D). Indeed when using the more traditional IsA with several classes lead to an ambiguity, i.e. if an element of the subclass can be both or if they are mutually exclusive.

Your example applies the same recipe to two different cases. As the difference is very subtle, it doesn't help to understand. In the first case Vehicle is only a synonym for Truck of Car, which are defined independently of Vehicle. In the second case, Truck and Car are defined as a specialization of Vehicle. Vehicle can hold a common part that is inherited by all its specialisation.