Generalization Checks

PowerDesigner provides default model checks to verify the validity of generalizations.

Check

Description and Correction

Redundant generalizations

Only one generalization is allowed between two classes or two interfaces.

  • Manual correction: Remove redundant generalizations

  • Automatic correction: None

Class multiple inheritance

The following check applies only to Java and PowerBuilder.

Multiple inheritance is accepted in UML but not in this language.

  • Manual correction: Keep single inheritance

  • Automatic correction: None

Extend final class

A final class cannot be extended.

  • Manual correction: Remove the generalization link, or remove the final property in the parent class

  • Automatic correction: None

Non-persistent specifying attribute

If a generalization has a specifying attribute, the attribute must be marked as persistent.

  • Manual correction: Select the Persistent checkbox on the Detail tab of the specifying attribute property sheet.

  • Automatic correction: None

Generic: Child type parameters

A child of a generic classifier must resolve all of the type parameters defined by its parent.

  • Manual correction: Resolve the missing type parameters.

  • Automatic correction: None.

Generic: Child cannot be bound

A bound classifier cannot be the child of any classifier other than its generic parent.

  • Manual correction: Remove the additional links.

  • Automatic correction: None.