HOWTO easily assign multiple diagram hyperlinks and GoTo to a chosen one in MagicDraw UML

The following example is from MD SysML Plugin and uses a Block with multiple Internal Block Diagrams (IBDs), however the same principle works for Composite Structure Diagrams in MD SysML.

The "active" hyperlink is the one that is used when you click on a symbol, however you can have more than one hyperlink.

Structured Classes (& Blocks) and the "focus" diagram in MagicDraw UML (& MD SysML)

By default a structured block (see the diagram menubar) in MD SysML gets a "focus" IBD of the same name and the name of it is synched to the block name: it is also set by default as the active hyperlink. (On MD UML a structured class gets a "focus" Composite Structure Diagram.) So when you first create a structured block just clicking on it will open up its "focus" IBD.

Assigning multiple diagram hyperlink targets

You can also assign and get to any of the other diagrams easily, too. Simple drag any number of diagram icons onto your block ! (The last one dragged will become active, so if you want your original focus diagram as active again, drag it on again.)

This has already been done for the example below. The aim is to have separate IBDs dedicated to electrical, mechanical, and optical systems, each one representing a different view of parts of the same block. (When doing this it is a good idea to use a lower case diagram name, so that they are not named like "focus" diagrams that correspond to Blocks.)

Now follow the trail to the next diagram to see how to choose to GoTo a given target diagram.

 

Click once on a symbol and a small hyperlink icon will appear bottom left

Make sure you only click once on the symbol (otherwise you'll already go to the currently active hyperlink target).

Click once (only) on the tiny hyperlink icon to bring up a pull-down menu of target diagrams you can GoTo

The image shows a Symbol with multiple hyperlink targets showing.

Closeup of multiple hyperlink targets

Note also the Usage in Diagrams sub-menu; please explore this alternative way to navigate.

Follow the Usage In Diagrams sub-menu on a symbol to reach other diagrams in the project that show the symbol

When you click on the little hyperlink icon bottom left of a symbol you can choose between:

  • selecting one of the (possibly multiple) assigned hyperlinks
  • going deeper into the Usage in Diagrams sub-menu, which shows every diagram where a symbol for the chosen element appears

The Usage in Diagrams option is particularly good for navigating to SysML BDDs (UML2 class diagrams) of (possibly unknown and unanticipated) "assembly" blocks that use a given Block (or Class):

  • the usage context should not be anticipated by a used element; so placing a diagram symbol for a "composing" parent on a main diagram for a used Element is not usually recommended:
    • consider that the diagram icon for a parent packaged elsewhere can block modularisation of your reusable building blocks !
  • The Usage in Diagrams feature is computed "on-the-fly"; it even works for symbols of read-only elements !

Diagram: somewhere else showing Block used by a composing "parent" Assembly

One can navigate to this diagram from the Block's symbol using the GoTo Usage in Diagrams feature.

The Internal Block Diagrams (IBDs) assigned to the Block symbol as diagram hyperlinks

Just for completeness, the full set of IBDs for the Block are given.

Block IBD

Shows all parts of the system (only stub parts are shown, they are placeholders for parts of different layers).

electrical IBD

Would show all parts of the electrical layer, only one shown.

mechanical IBD

Would show all parts of the mechanical layer, only one shown.

optical IBD

Would show all parts of the optical layer, only one is given.