51) When the total specialization rule is set for a supertype/subtype relationship, one could roughly compare the supertype to an abstract class in object-oriented programming. 52) The disjoint rule specifies that if an entity instance of the supertype is a member of one subtype, it MUST simultaneously be a member of another subtype. 53) The overlap rule specifies that if an entity instance of the supertype is a member of one subtype, it can simultaneously be a member of two (or more) subtypes. 54) The following figure is an example of the overlap rule. 55) In the figure shown below, a rental unit can be both a house and an apartment. 56) In the figure shown below, a rental unit has to be either a house or an apartment. 57) In the figure shown below, there could be an instance of a rental unit that is neither an apartment nor a house. 58) In the figure shown below, a rental unit can be both an apartment and a house but must be at least one. 59) When subtypes are overlapping, an additional field must be added to the supertype to act as a discriminator. 60) There are three separate discriminators in the following diagram because of the overlap rule.