Class Diagram Elements (UML 1.5)

From RAD Studio
Jump to: navigation, search

Go Up to UML 1.5 Class Diagrams

Model element is any component of your model that you can put on a diagram. Model elements include nodes and links between them.

Available Model Elements of Class Diagrams

You can create model elements using the context menus in the Model and Diagram Views and using the Tool Palette.

The sets of available model elements are different for design and implementation (Delphi and C++) projects. The following table lists the available model elements of UML 1.5 class diagrams. The types of applicable projects are specified in square brackets.

UML 1.5 class diagram elements

Icon Element Name Type Comment

Package icon

Package element

Package
 - [UML]
Namespace
 - [Delphi,C++]

Node

Class icon

Class element

Class
 - [UML,Delphi,C++]

Node

Interface icon

Interface element

Interface
 - [UML,Delphi]

Node

Association Class icon

Association Class element

Association Class
 - [UML,Delphi,C++]

Node

An association class has both association and class properties and can be seen as an n-ary association that also has class properties. See N-ary Association in Relationships Among Elements of Class Diagrams.

Structure icon

Structure element

Structure
 - [Delphi,C++]

Node

Enumeration icon

Enumeration element

Enumeration
 - [Delphi,C++]

Node

Union icon

Union element

Union
 - [C++]

Node

Delegate icon

Delegate
Delegate as Function
 - [Delphi]

Class member

Can be inserted into classes, association classes, structures, and namespaces.

Typedef icon

Typedef element

Typedef
 - [Delphi]

Node

Object icon

Object element

Object
 - [UML,Delphi,C++]

Node

Generalization icon

Generalization relationship

Implementation relationship

Generalization
 - [UML,Delphi,C++]
Implementation
 - [UML,Delphi,C++]

Link

Link

Generalization and Implementation links are created by the same Generalization icon command. Generalization indicates the inheritance between two classes or two interfaces. Implementation indicates a class that implements an inherited interface. See the description of Generalization and implementation relationships in Relationships Among Elements of Class Diagrams.

Association icon

Association relationship

Association
 - [UML,Delphi,C++]

Link

Possible types: association, aggregation, and composition.
See the description of Association relationships in Relationships Among Elements of Class Diagrams.

Association End icon

Association End links

Association End
 - [UML,Delphi,C++]

Opens the Association End context menu to select the type (class, structure, enumeration, union) of a participant to add as an association end.

Used to specify association end classes (participants) in an association, which property is represented by an Association Class. See N-ary Association in Relationships Among Elements of Class Diagrams.

Dependency icon

Dependency relationship

Dependency
 - [UML,Delphi,C++]

Link

See the description of Dependency relationships in Relationships Among Elements of Class Diagrams.

Node by Pattern icon

Node by Pattern
 - [UML,Delphi,C++]

Node

Opens Pattern Wizard.

Link by Pattern icon

Link by Pattern
 - [UML,Delphi,C++]

Link

Opens Pattern Wizard.

Constraint icon

Constraint element

Constraint
 - [UML,Delphi,C++]

"OCL expression" or "free-syntax constraint"

By default, the Modeling tries to validate the specified constraint text as an OCL expression. If it cannot be validated, then the Constraint is red highlighted. To suppress red highlighting, set the Constraint language property to Text (in the Object Inspector).

Constraint link icon

Constraint link

Constraint link
 - [UML,Delphi,C++]

Constraint link

Note icon

Note element

Note
 - [UML,Delphi,C++]

Annotation

Note Link icon

Note Link

Note Link
 - [UML,Delphi,C++]

Annotation link

You see the note connected by the note link with another modeling element.

Image icon

Image element

Image
 - [UML,Delphi,C++]

Illustration - frame of the image placeholder.

The Tool Palette command puts on a diagram only the empty frame of the image placeholder. To render an image in this frame:

  • Select this image placeholder.
  • In the Image path property of the Object Inspector, specify the file of the image to be rendered.

Here you see the Embarcadero image, rendered in the frame of the image placeholder.

Image Link icon

Image Link

Image Link
 - [UML,Delphi,C++]

Illustration link

You see the Embarcadero image connected by the image link with another modeling element.


Container Elements. Members of Container Elements

On class diagrams, some types of elements (containers) can have internal members. Internal members can be created in container elements using the context menus of container elements in the Model View and in the Diagram View.

Note that the sets of available container elements and their members are different for design and implementation (Delphi and C++) projects. The table below lists the available container elements of UML 1.5 class diagrams along with the members that can be added into them.

Available container elements and members

Container element Members available
UML Delphi C++

Package
 - [UML]
Namespace
 - [Delphi,C++]

Package
Class
Association Class
Interface

Namespace
Class
Association Class
Interface
Structure
Enumeration

Delegate
Delegate as Function

Namespace
Class
Association Class

Structure
Enumeration
Union

Class
 - [UML,Delphi,C++]

Class
Interface




Attribute

Operation

Constructor

Class
Interface
Association Class
Structure
Enumeration

Field
Property
Function
Procedure
Constructor
Destructor
Delegate
Delegate as Function

Class

Association Class
Structure
Enumeration
Union
Attribute

Method

Constructor
Destructor

Interface
 - [UML,Delphi]

Attribute
Operation

Property
Function
Procedure
Delegate
Delegate as Function

Structure
 - [Delphi,C++]

Class
Association Class
Structure
Enumeration
Interface

Field
Case of Field
Property
Function
Procedure
Constructor

Delegate
Delegate as Function

Class
Association Class
Structure
Enumeration

Union
Attribute


Method

Constructor
Destructor

Enumeration
 - [Delphi,C++]

Enum Value

Enum Value

Union
 - [C++]

Class
Association Class
Structure
Enumeration
Union
Attribute
Method
Constructor
Destructor


Classifiers. Inner classifiers

In general, those modeling elements that can have instances are called classifiers. Classifiers have structural features (attributes) and behavioral features (operations). In the Modeling, classifiers are the basic nodes of Class diagrams: classes, interfaces, association classes, structures, and unions. Some of them can include other classifiers, or inner classifiers. Notice that interfaces may not have attributes and interfaces may not have any direct instances, but you can model a prototypical instance of an interface, representing one of any potential instances of particular classes that realize that interface.

The table below lists the container elements of class diagrams along with the inner classifiers that you can add into container elements.

Inner classifiers:

Container element Available inner classifiers
UML Delphi C++

Class
 - [UML,Delphi,C++]
Association Class
 - [UML,Delphi,C++]

Class
Association Class
Interface

Class
Association Class
Interface
Structure

Class
Association Class

Structure
Union

Interface
 - [UML,Delphi]

Structure
 - [Delphi,C++]

Class
Association Class
Structure
Interface

Class
Association Class
Structure

Union

Union
 - [C++]

Class
Association Class
Structure
Union


See Also