Controlling the Namespace of a Package

PowerDesigner applies uniqueness checks on the names of objects. The namespace defines an area in which the name and the code of an object of a given type must be unique.

  • For the CDM, PDM, DMM, and FEM - the entire model is, by default, a single namespace, and all the packages use their parent namespace. PowerDesigner applies checks on uniqueness at the model level.

  • For the OOM, RQM and BPM – each package is, by default, a separate namespace. PowerDesigner applies checks on uniqueness at the package level.

Depending on the type of model where you create a new package, the Use Parent Namespace check box is selected in the package property sheet.

Note: The XML model does not support packages. For more information on namespaces in the XSM, see XML Modeling.

In the following example, the class Printer is located in the Peripheral Package of an OOM where each package is, by default, a separate namespace:



If you were to select the Use Parent Namespace check box in the property sheet of Peripheral Package, the internal names of objects in this package would no longer be prefixed by the name of the package. The parent of the folder, in this case the model itself, becomes the namespace, and you could not create a Printer class in the Internal Network package, because PowerDesigner would verify its uniqueness in the entire model.

  1. Open the property sheet of the package.
  2. Select or clear the Use Parent Namespace check box.


  3. Click OK to return to the model diagram.