Generalization (dictionary item)
For automation interface information about a Generalization, see Generalization (automation interface).
A Generalization describes a relationship between the following items:
An Activity and another Activity.
An Actor and another Actor.
A Class and another Class or Interface.
A Data Type and another Data Type.
An Interface and another Interface or Class.
A Signal and another Signal.
A Use Case and another Use Case.
If you need to find out whether inheritance is set up for an item, you can do so in the following ways:
On a diagram, right-click the item and populate sub or super items.
Right-click the item, point to Report, and then click Details. The report that is generated to the Output pane will record if the item is a specialization or specialized.
Right-click the item, point to Find, and then click In Relationships Browser. You can then expand the item and through the Parent/Super<item type> and Child/Sub<item type> subfolders determine which items are inherited to and from.
In the Modeler panes, a short-cut symbol on the Generalization's icon indicates that the item is a stub.
The access permissions you have to a Generalization are determined by the access permissions you have to the child Actor.
When used with Activities
A Generalization expresses a relationship between a super Activity and one or more sub Activities. The super Activity describes common characteristics that are shared by its sub Activities.
You create a Generalization through the Class Diagram, by clicking the Generalization button, clicking the sub Activity, and then clicking the super Activity.
When used on a Use Case diagram, a Generalization's notation is as follows:
When used with Actors
A Generalization expresses a relationship between a super Actor and one or more sub Actors. The super Actor describes common characteristics that are shared by its sub Actors.
You create a Generalization through the Class Diagram or Use Case Diagram, by clicking the Generalization button, clicking the sub Actor, and then clicking the super Actor.
When used on a Use Case diagram, a Generalization's notation is as follows:
When used with Classes
A Generalization expresses the relationship between a Super Class and one or more Sub Classes or Sub Interfaces. Each Sub Class and Sub Interface represents a specialization or refinement of the Super Class. Through the Generalization link the properties of the Super Class are inherited by each Sub Class and Sub Interface. A Generalization is an independent dictionary item and you can reuse Generalizations to keep Sub Classes and Sub Interfaces in convenient groups.
To help you work with Super Classes and Sub Classes, Modeler includes the Class View Browser. To open the Class View Browser for a Class, right-click the Class, and then click Browse Class. For more information about the Class View Browser, see Class view browser.
You create a Generalization through the Class Diagram, by clicking the Generalization button, clicking the sub Class or Interface, and then clicking the super Class or Interface.
When used on a Class Diagram, a Generalization's notation is as follows:
When used with Data Types
A Generalization expresses a relationship between a super Data Type and one or more sub Data Types. The super Data Type describes common characteristics that are shared by its sub Data Types.
To help you work with Super Data Types, and Sub Data Types, Modeler includes the Class View Browser. To open the Class View Browser for a Data Type, right-click the Data Type, and then click Browse Class. For more information about the Class View Browser, see Class view browser.
You create a Generalization through the Class Diagram, by clicking the Generalization button, clicking the sub Data Type, and then clicking the super Data Type.
When used on a Class Diagram, a Generalization's notation is as follows:
When used with Interfaces
A Generalization expresses the relationship between a Super Interface and one or more Sub Interfaces or Sub Classes. Each Sub Interface and Sub Class represents a specialization or refinement of the Super Interface. Through the Generalization link the properties of the Super Interface are inherited by each Sub Interface and Sub Class. A Generalization is an independent dictionary item and you can reuse Generalizations to keep Sub Interfaces and Sub Classes in convenient groups.
To help you work with Super Interfaces and Sub Interfaces, Modeler includes the Class View Browser. To open the Class View Browser for an Interface, right-click the Interface, and then click Browse Class. For more information about the Class View Browser, see Class view browser.
You create a Generalization through the Class Diagram, by clicking the Generalization button, clicking the sub Class or Interface, and then clicking the super Class or Interface.
When used on a Class Diagram, a Generalization's notation is as follows:
When used with Signals
A Generalization expresses the relationship between a Super Signal and one or more Sub Signals. Each Sub Signal represents a specialization or refinement of the Super Signal. Through the Generalization link the properties of the Super Signal are inherited by the Sub Signal. A Generalization is an independent dictionary item and you can reuse Generalizations to keep Sub Signals in convenient groups.
To help you work with Super Signals and Sub Signals, Modeler includes the Class View Browser. To open the Class View Browser for a Signal, right-click the Signal, and then click Browse Signal. For more information about the Class View Browser, see Class view browser.
You create a Generalization through the Class Diagram, by clicking the Generalization button, clicking the sub Signal, and then clicking the destination super Signal.
When used on a Class Diagram, a Generalization's notation is as follows:
When used with Stereotypes
A Generalization expresses a relationship between a super Stereotype and one or more sub Stereotypes. The sub Stereotypes inherit the super Stereotype's valid Model Item Types, Tag Definitions and Scripts.
When a sub Stereotype inherits Tag Definitions and Scripts through a Generalization, you can redefine those Tag Definitions and Scripts independently of the super Stereotype's Tag Definitions and Scripts. To redefine a Tag Definition or Script: right-click the Tag Definition or Script, and then click Redefine.
You redefine selected properties and relationships of a Tag Definition that is inherited: right-click the Tag Definition, and then click Redefine.
You create a Generalization through the Profile Diagram, by clicking the Generalization button, clicking the sub Stereotype, and then clicking the super Stereotype.
When used on a Profile Diagram, a Generalization's notation is as follows:
When used with Use Cases
A Generalization expresses a relationship between a super Use Case and one or more sub Use Cases. The parent Use Case describes common characteristics that are shared by its sub Use Cases.
You create a Generalization through the Class Diagram or Use Case Diagram, by clicking the Generalization button, clicking the sub Use Case, and then clicking the super Use Case.
When used on a Use Case diagram, a Generalization's notation is as follows:
The following sections provide information about how a Generalization is used in the model. For more information about a property, item, model part or diagram, click it.
Properties
In addition to the standard properties, a Generalization has these properties:
Overlapping Generalization (Overlapping through the automation interface)
Private Access (only when linking Classes)
Virtual Base Class (only when linking Classes)
* 
For automation interface purposes, Private Access and Virtual Base Class are properties of a Specialization.
Owned by
* 
A Generalization is owned jointly by the two items it links, that is, if either item is deleted the Generalization is deleted as well. The access permissions you have to a Generalization are determined by the access permissions you have to sub item.
Owns
Dependency —The Dependency is owned jointly by the Generalization and the other associated item. The access permissions you have to a Dependency are determined by the access permissions of the dependent item.
Defined in these parts of the model
Shown on these diagrams
Can be linked to these dictionary items
*