Composite Elements

You might want to make one element represent a structure composed of other elements; for example, a general Use Case representing a collection of more specific Use Cases. To achieve this, you can make the 'general' element a composite element, as a pointer to a child diagram containing the 'detail' elements. The elements that you can turn into composites include Classes, Objects, Activities and Use Cases.

Access    Right-click element in diagram | New Diagram | Composite Structure Diagram
Right-click element in Project Browser | Add | Composite Structure Diagram

Make an element composite

Images

Step

Action

See also

CompositeObject

CompositePB

1

When you select to make an element composite, it displays in the diagram and in the Project Browser as illustrated on the left.

Note:

The small icon in the bottom right hand corner of the element shape, indicating that this is now a Composite element
The icon against the child diagram name in the Project Browser, indicating that this diagram was created as a child of the composite element

 

 

 

 

CompositeObject-ProjectBrowser

2

Double-click on the Composite element to access the child diagram that it points to. You can populate the child diagram with elements and connectors to represent the internal structure of the (parent) composite element.

At this point, embedded elements cannot be added to the child composite diagram. A modified procedure enables you to include them.

The Composite element and its child diagram are now represented in the Project Browser as shown. ClassX, ClassY and ClassZ are elements added to the child diagram.

 

 

 

Show Embedded Elements In Composite

 

3

If you already have, or subsequently create, another diagram that better represents the content of your composite element, you can select that diagram as the child of the composite.

Right-click on the composite element and select the New Diagram | Select Composite Diagram context menu option. The Select a Diagram browser displays, through which you can browse the entire project to locate the alternative diagram. Click on the diagram and on the OK key to apply it as the child of the composite element.

Neither the original nor the alternative child diagram move location or change icons in the Project Browser (unless you specifically make these changes as a separate operation).

 

 

Alternative Notation

You can display the contents (the child diagram) of a Composite element within the element, in two ways.

Display Format

Detail

See also

Display Composite Element as Frame

 

compel1

 

Composite elements can show their contents in place of their usual notation.

1.Right-click on the element to open the context menu.
2.Select the New Diagram | Show Composite Diagram in Frame option.

 
The element is replaced by a frame containing the child diagram. The frame label shows the composite element name. The element is resized to contain the diagram; whilst it can be enlarged, it cannot be reduced to less than the diagram size.

Some technologies, such as SysML, qualify the frame label to show the diagram type, element type, element name and child diagram name. If you design custom diagram profiles, you can also qualify the frame label as required.

 

 

 

 

 

 

Create Custom Diagram Profiles

Display Composite Element Content In Compartment

 

compel2

 

Composite elements can also show their contents in addition to their usual notation, in an  additional compartment of the element.

 

1.Right-click on the element to open the context menu.
2.Select the New Diagram | Show Composite Diagram in Compartment option.

 
A compartment is added to the element, containing the child diagram. The element is resized to contain the diagram; whilst it can be enlarged, it cannot be reduced to less than the diagram size.

You can also display a Composite Diagram inside its parent element, using a Shape Script. The diagram is displayed in a custom compartment in the center of the element and not necessarily with the standard compartments (such as attributes, tags).

 

 

 

 

 

 

 

Show Composite Diagram

Notes

If the Composite Structure Diagram option is not listed in the context menu, the option is not available for the type of element you have selected
If you select either of the alternative notation options to display the child diagram on the composite element, and then you select a different child diagram, the display settings are cleared; reselect the appropriate option to display the new diagram on the composite element
Automation support is available for Composite elements; Element has an Elements collection and a Diagrams collection

Learn more