Extensions files (*.xem) allow you to
customize and extend the PowerDesigner metamodel to support your exact modeling
needs. You can define additional properties for existing objects or specify
entirely new types of objects, modify the PowerDesigner interface (reorganizing
and adding property sheet tabs, Toolbox tools and menu items), and define
additional generation targets and options.
Creating Extensions from a Property Sheet
- To create an extended attribute directly from an object property sheet, click the menu button, and select New Attribute.
- To create a new collection directly from an object property sheet, click the menu button, and select New List of Associated Objects.
Working with Extension Files
- To attach an existing extension file to a model, select , and click the Import tool.
- To create a new extension file, select , click the Add a Row tool, enter a name for the file, and then click the Properties tool.
Types of Extension
You can extend the metamodel in the following ways:
- Create or sub-classify
new kinds of objects:
- Metaclasses – drawn from the metamodel as a basis for extension.
- Stereotypes [for metaclasses and stereotypes only] – sub-classify
metaclasses by stereotype.
- Criteria – sub-classify metaclasses by evaluating conditions.
- Add new properties and collections to
objects and display them:
- Extended attributes – to add
metadata.
- Extended collections and
compositions – to enable manual linking between objects.
- Calculated collections – to
automate linking between objects.
- Dependency matrices – to show
dependencies between two types of objects.
- Forms – to modify property sheets and add custom dialogs.
- Custom symbols – to change the
appearance of objects in diagrams.
- Add constraints and
validation rules to objects:
- Custom checks – to test the validity of your models on demand
- Event handlers – to perform
validation or invoke methods automatically.
- Execute commands on
objects:
- Methods – VBScripts to be invoked by menus or form buttons.
- Menus [for metaclasses and
stereotypes only] – to add commands to PowerDesigner menus.
- Generate objects in new
ways:
- Templates – to extract text from object properties.
- Generated Files - to assemble templates for preview and generation of
files
- Transformations – to automate
changes to objects at generation or on demand.
- Map correspondences between different metamodels:
- Object generations - to define mappings between different modules in the
PowerDesigner metamodel for model-to-model generation.
- XML imports - to define mappings between an XML schema and a
PowerDesigner module to import XML files as models.
Documentation
For detailed documentation, see Customizing and Extending PowerDesigner > Extension Files.