Metaclasses are defined in the PowerDesigner metamodel and provide the basis for your extensions. You add a metaclass to the Profile category when you want to extend it in some way by modifying its behavior, adding new properties, changing its property sheet or symbol, or even excluding it from your models.
You can either make extensions to an existing type of object or create an entirely new kind of modeling object by adding the ExtendedObject, ExtendedSubObject or ExtendedLink metaclass (see Extended Objects, Sub-Objects, and Links (Profile)).
|
Extensions are inherited, so that any extensions made to a
metaclass are available to its stereotyped children, and
those that are subject to criteria. The various extended
attributes defined under the table metaclass will be
available to table instances according to the following rules:
For example, a table bearing the FederatedTable stereotype, and for which the SecureTable criteria evaluates to true, would display the SecurityLevel, EncryptionKey, and ExternalLogin attributes, while a table bearing the PriorityTable stereotype, and for which both the SecureTable and Replicated criteria evaluate to true, would display these attributes and, additionally, the ReplicationPath and Availability attributes. |