🚀 Welcome to MDriven Learn –  MDriven is now on Discord!  Don’t miss the latest Release Notes.
Diagrams in Diagrams
This page was created by Alexandra on 2018-10-24. Last edited by Wikiadmin on 2026-07-29.

You can place diagrams inside other diagrams in MDriven Designer to create an overview and navigation map for anyone working through a model.

Use diagrams as an overview

A diagram is a visual representation of model information. You can create as many diagrams as you need, show the same class on multiple diagrams, and use a diagram to organize related class diagrams, state diagrams, and process diagrams.

A placed diagram appears as a small thumbnail on the containing diagram. It is a navigation item, not an editable copy of the placed diagram.

For example, an Order overview class diagram can contain:

  • Classes such as Order and OrderLine.
  • A placed state diagram that describes the states of Order.
  • A placed process diagram that documents the workflow for handling an order.

This lets you start with one overview and open the detailed diagram when you need it.

Diagram types you can place

In AppComplete, you can place these diagram types inside another diagram:

Diagram type What it shows Example use in an overview diagram
Class diagram Classes, attributes, methods, and associations. Place a detailed Order fulfillment class diagram on an overall domain diagram.
State diagram The states and transitions for a state attribute. Place the Order.State state diagram beside the Order class.
Process diagram A workflow: the order in which activities are performed. Place a Fetching Mail process diagram that documents steps such as GoToPostOffice, TalkToLady, and GoHome.

For an introduction to creating and organizing diagrams, see Documentation:MDriven designer overview Part 1. For guidance on deciding which classes and details to show in each diagram, see MDrivenStart:MDrivenStart Diagrams.

Place a diagram on another diagram

  1. Create or locate the diagram that you want to use as the overview diagram.
  2. In the repository tree, locate the diagram you want to place.
  3. Drag that diagram from the repository tree onto the overview diagram.
  4. Position the resulting thumbnail where it makes the overview easiest to read.

The original diagram remains where it is in the repository. Placing it on another diagram adds another representation for navigation; it does not move, duplicate, or change the underlying model.

For example, you can drag DiagramMyNewDiagram onto DiagramMyFirstDiagram. The first diagram then shows a thumbnail for the second diagram, while both diagrams remain available in the repository tree.

Open a placed diagram

You cannot edit the contents of a diagram through its thumbnail on the containing diagram.

To work in the placed diagram:

  1. Double-click its thumbnail.
  2. Edit the diagram in its own diagram view.
  3. Use the back navigation arrow to return to the diagram you came from.

You can also navigate directly through the repository tree.

This separation is intentional: the containing diagram is an overview, while each placed diagram keeps its own layout and editing surface.

Build a useful navigation hierarchy

Use placed diagrams to keep a large model readable without removing detail from the model.

A practical structure is:

  • A top-level domain overview diagram that contains the most important classes and placed detail diagrams.
  • One class diagram for each area of the domain, such as orders, customers, or mail handling.
  • A state diagram placed near the class whose state it describes.
  • A process diagram placed near the domain area whose workflow it documents.

For example, a mail-handling overview can show a MailItem class, a placed state diagram for its state attribute, and a placed Fetching Mail process diagram. A reader can see that these artifacts are related, then double-click the appropriate thumbnail to inspect the detail.

Nested diagrams and recursion

A placed diagram can itself contain another placed diagram. This makes it possible to build recursive navigation structures.

For example:

  1. Place a state diagram and a process diagram on a class diagram.
  2. Place that class diagram on the process diagram.
  3. Open either diagram and follow the placed-diagram thumbnails to navigate between the related views.

MDriven Designer limits recursive display to two levels. This prevents a recursive structure from expanding indefinitely on the screen.

Treat this as an overview feature, not a way to embed editable diagram content. If a diagram appears within another diagram, double-click it to edit the original diagram.

Keep diagram views focused

A class can appear on any number of diagrams, and removing a class from one diagram does not remove the class from the model. Use this to create focused views for different audiences.

For example, a detailed implementation-oriented class diagram may show attributes and associations, while an overview diagram shows only the classes and placed diagrams needed for navigation. The same Order class can appear in both views.

Do not use a nested diagram thumbnail as a substitute for showing the relationships that readers need to understand in the current view. Show the key classes and associations on the overview; use placed diagrams to lead readers to deeper detail.

See also