Issue 11807: Figure 7.48 and the accompanying discussion under 7.3.21 (uml2-rtf) Source: (, ) Nature: Clarification Severity: Minor Summary: Figure 7.48 and the accompanying discussion under 7.3.21 GeneralizationSet>Examples on pp 78-79 uses the example of a generalization set consisting of a single class to explain the proper use of the isCovering and isDisjoint attributes. I believe this example is infelicitous in the context of this exposition because generalization sets consisting of a single class present a special case, and this detracts from the exposition. In what way are they a special case? IF (a generalization set consists of a single class AND it is {incomplete}) THEN it can *only* be {disjoint}. This is because if the complement of an {incomplete} generalization set is non-empty, and consists of all instances that are NOT members of the solitary class in the generalization set. In other words, for a generalization set consisting of a single class, the combination {incomplete, overlapping} is self-contradictory. IF (a generalization set consists of a single class AND it is {complete}) THEN it can *only* be {overlapping}. This is because the complement of a {complete} generalization set is the null set, and the null set is a member of every set. In other words, the combination {complete, disjoint} is self-contradictory. I would recommend pointing out that generalization sets consisting of a single class represent a special case, and I would treat them separately (?footnote). For purposes of the exposition, I would modify Figure 7.48 to include at least two classes (perhaps Employee, Manager) instead of just Employee in the right-hand generalization set. Resolution: Revised Text: Actions taken: December 9, 2007: received issue Discussion: End of Annotations:===== m: webmaster@omg.org Date: 09 Dec 2007 11:59:07 -0500 To: Subject: Issue/Bug Report -------------------------------------------------------------------------------- Name: John Madden Company: Duke University mailFrom: john.madden@duke.edu Notification: Yes Specification: Unified Modeling Language: Superstructure Section: 7.3.21 FormalNumber: formal/2007-02-5 Version: 2.1.1 RevisionDate: 02/05/2007 Page: 79 (pdf page 94) Nature: Clarification Severity: Minor HTTP User Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X; en-us) AppleWebKit/523.10.3 (KHTML, like Gecko) Version/3.0.4 Safari/523.10 Description Figure 7.48 and the accompanying discussion under 7.3.21 GeneralizationSet>Examples on pp 78-79 uses the example of a generalization set consisting of a single class to explain the proper use of the isCovering and isDisjoint attributes. I believe this example is infelicitous in the context of this exposition because generalization sets consisting of a single class present a special case, and this detracts from the exposition. In what way are they a special case? IF (a generalization set consists of a single class AND it is {incomplete}) THEN it can *only* be {disjoint}. This is because if the complement of an {incomplete} generalization set is non-empty, and consists of all instances that are NOT members of the solitary class in the generalization set. In other words, for a generalization set consisting of a single class, the combination {incomplete, overlapping} is self-contradictory. IF (a generalization set consists of a single class AND it is {complete}) THEN it can *only* be {overlapping}. This is because the complement of a {complete} generalization set is the null set, and the null set is a member of every set. In other words, the combination {complete, disjoint} is self-contradictory. I would recommend pointing out that generalization sets consisting of a single class represent a special case, and I would treat them separately (?footnote). For purposes of the exposition, I would modify Figure 7.48 to include at least two classes (perhaps Employee, Manager) instead of just Employee in the right-hand generalization set.