Interface Properties

To view or edit an interface's properties, double-click its diagram symbol or Browser or list entry. The property sheet tabs and fields listed here are those available by default, before any customization of the interface by you or an administrator.

The General tab contains the following properties:

Property

Description

Name/Code/Comment

Identify the object. The name should clearly convey the object's purpose to non-technical users, while the code, which is used for generating code or scripts, may be abbreviated, and should not normally include spaces. You can optionally add a comment to provide more detailed information about the object. By default the code is generated from the name by applying the naming conventions specified in the model options. To decouple name-code synchronization, click to release the = button to the right of the Code field.

Extends

Indicates the name of the class or interface that the current interface extends.

Stereotype

Extends the semantics of the object beyond the core UML definition. You can enter a stereotype directly in this field, or add stereotypes to the list by specifying them in an extension file.

The following common stereotypes are available by default:
  • <<metaclass>> - interface that will interact with a model that contains classes with metaclass stereotypes

  • <<powertype>> - a metaclass whose instances are sub-classes of another class

  • <<process>> - heavyweight flow that can execute concurrently with other processes

  • <<thread>> - lightweight flow that can execute concurrently with other threads within the same process. Usually executes inside the address space of an enclosing process

  • <<utility>> - a class that has no instances

Visibility

Specifies the visibility of the object, how it is seen outside its enclosing namespace. When an interface is visible to another object, it may influence the structure or behavior of the object, or similarly, the other object can affect the properties of the interface. You can choose between:
  • Private – only to the object itself

  • Protected – only to the object and its inherited objects

  • Package – to all objects contained within the same package

  • Public – to all objects (option by default)

Inner to

Indicates the name of the class or interface to which the current interface belongs as an inner classifier.

Type

Allows you to specify that an interface is a generic type, or that it is bound to one. You can choose between:
  • Interface

  • Generic

  • Bound – If you select this option, then an additional list becomes available to the right, where you can specify the generic type to which the interface is bound.

If you specify either Generic or Bound, then the Generic tab is displayed, allowing you to control the associated type variables (see Generic Types and Methods).

Generate code

The interface is automatically included among the objects generated from the model when you launch the generation process.

Keywords

Provide a way of loosely grouping objects through tagging. To enter multiple keywords, separate them with commas.

The following tabs list objects associated with the interface:

  • Attributes - lists the attributes associated with the interface. You can create attributes directly in this page, or add already existing attributes. For more information, see Attributes (OOM).

  • Operations - lists the operations associated with the interface. You can create operations directly in this page, or add already existing operations. For more information, see Operations (OOM).

  • Generic Parameters - lets you specify the type parameters of a generic interface or values for the required type parameters for an interface that is bound to a generic type (see Generic Types and Methods

  • Inner Classifiers - lists the inner classes and interfaces associated with the interface. You can create inner classifiers directly in this page. For more information, see Composite and Inner Classifiers.

  • Related Diagrams - lists and lets you add model diagrams that are related to the interface (see Core Features Guide > Modeling with PowerDesigner > Diagrams, Matrices, and Symbols > Diagrams > Specifying Diagrams as Related Diagrams.