![]() |
![]() |
![]() |
![]() |
![]() |
Working with Symbols
The main operations provided by the SDL Editor on symbols is described in this section.
- Working with Diagram Reference Symbols
- Working with Diagram Instantiation Symbols
- Working with Dashed Symbols
- Selecting Symbols
- Adding Symbols
- Inserting a Symbol into a Flow Branch
- Navigating in Flow Diagrams
- Navigating from Symbols
- Cutting, Copying and Pasting Symbols
- Moving Symbols
- Resizing Symbols
- Mirror Flipping Symbols
- Adjusting Symbols to the Grid
- Editing the Diagram Kernel Heading.
In addition, text editing functions are provided for the text associated with the symbols.
Working with Diagram Reference Symbols
When you perform certain modifications to the diagram reference symbols listed in the left margin (system type, block, block type, substructure, service, service type, process, process type, procedure and text reference symbols), the SDL Editor checks with the Organizer to verify that the modifications are valid. This occurs in the following situations:
- Adding a Diagram Reference Symbol
- Adding an Operator Diagram Reference Symbol
- Renaming a Diagram Reference Symbol
- Removing Symbols
Working with Diagram Instantiation Symbols
Instantiating a Diagram Type
The implication of an instantiation symbol is that the description of the type diagram is actually instantiated, i.e. a physical copy is created. This copy may then be given additional properties using SDL's inheritance and specialization mechanisms.
When a diagram type is to be instantiated, do as follows:
- Make sure the type diagram is visible according to the SDL scope rules.
- Insert a diagram reference symbol. When specifying the name of the symbol, use the syntax <instance_name>:<type_name>.
- When the symbol is deselected, the diagram structure is immediately updated to show the instantiation (this is only true if the Instance Diagram option is on in the Organizer's View Options).
Working with Dashed Symbols
Dashing and Undashing a Reference Symbol
Dashed reference symbols are used to refer to an object that is defined elsewhere in one of the supertypes of the current subtype.
Note that a symbol cannot be dashed if there are syntax errors in the name attached to the symbol. Also if a syntax error is introduced in a dashed symbol the symbol will automatically be undashed.
Selecting Symbols
With the SDL Editor, you often perform actions that apply on a selection. This section discusses topics related to selection of symbols.
Selecting a Flow of Symbols
You often want to select a flow of subsequent symbols in a flow page, including all branches - the tail of the flow. To select a flow of symbols:
- Click on the symbol where the flow starts.
- From the Edit menu point to Select Tail. The tail of the flow is selected. See Figure 379, where the left picture shows only one selected object and its associated connections, whereas the right picture shows the selected symbol and its connections plus the selected rest of the flow diagram - the Selected Tail.
Selecting a Symbol That Has Associated Objects
Consider the following when you select a symbol which has lines or text associated with it:
- When you select a symbol, you implicitly select the associated objects as well. A text cursor is inserted directly in the text associated with a symbol, and the text window will be updated to contain the text.
- If you point to a line associated with a symbol, you will select the line, not the symbol. The process of selecting lines is described in Selecting Lines.
- If you point to the text associated with a symbol, the resulting selection depends upon the type of the symbol.
Displaying Selected Symbol Attributes
Selected symbol attributes are displayed as follows:
- When you select a symbol from which you can draw lines, it is displayed with a handle which you use when drawing lines from that symbol. Handles are shown in Figure 380.
- Text attributes associated with a selected symbol are marked by a rectangle around the text, as shown in Figure 381. For class symbols, this only applies when text attributes contain no text.
- In an interaction page, a line is marked by drawing filled selection squares at the line's starting point, ending point, and each breakpoint. In the middle of each line segment is a tiny selection square that provides an easy way to create new breakpoints. See Figure 382.
- In a flow page, a selected flow line is marked by drawing filled selection squares in the middle of each line segment. This indicates that you can move the individual line segments (but not the flow line as a whole). See Figure 383.
Adding Symbols
You may place symbols into the drawing area in either manual mode or in automatic mode.
Adding Symbols in Manual Mode
This section describes how to do this in manual mode. The automatic mode is described in Adding Symbols in Automatic Mode.
Selecting and Placing a Symbol
- Click the symbol in the symbol menu.
- Click at the desired location in the drawing area. Overlap of symbols is not allowed.
Entering Symbol Text Attributes
Once a symbol has been added, you can enter the text into the symbol's text attributes. The symbol remains selected. Enter the text required directly using the keyboard or edit the text inside the text window.
Connecting the Symbol to Another Symbol
Once the symbol is at the desired location it can be connected to another symbol as required.
The line will be drawn only when the SDL syntax rules allow the symbols to be interconnected.
- Add the source symbol, i.e. the symbol from where you want to draw the line.
- Point the mouse onto the handle of the source symbol, and start dragging the handle. As soon as mouse motion has begun, you can release the mouse button. Point to the target symbol and click the mouse button. The line is drawn to the symbol and required text attributes are added to the connecting line. The box without brackets is reserved for the name of the channel, while the box with brackets [ ] is for the signal list.
Conversely, once you have placed a symbol in the drawing area, you can follow the same procedure from a symbol resident in the drawing area to the new symbol.
Connecting the Symbol to the Environment
- Hold the mouse pointer on the handle of the symbol, drag it to the frame (environment) and release the mouse button.
- Enter text in the channel or signal route and connection point boxes.
Adding Symbols in Automatic Mode
The automatic mode is particularly useful when you want to add symbols sequentially or in parallel in a symbol flow. Both situations are described below.
Adding in Sequence
To add symbols sequentially within a flow page, proceed as follows:
- Select the source symbol in the drawing area.
- Double-click the target symbol in the symbol menu.
- Fill in the text in the target symbol.
The target symbol is positioned directly beneath the source symbol if possible. Otherwise, the added symbol is placed in the first available location to the right.
After this operation, the target symbol is automatically selected and the source symbol is de-selected.
Adding in Parallel
To add symbols in parallel in a flow page:
- Select the source symbol in the drawing area.
- Press <Shift> and double-click the target symbol in the symbol menu.
You can repeat this procedure in order to add additional symbols to the selected symbol. The target is positioned immediately below the source symbol, if possible. Otherwise, the target symbol is placed in the first available location to the right.
Using Default Placement
You can also take advantage of the auto-placement by double-clicking a symbol without having to connect it to other symbols.
Insufficient Space Left
When you insert a symbol using the double-click facility, there may not be any space left to perform the operation, The SDL Editor informs you of this with a message.
You have the following options:
- Click OK to increase the page. The Drawing Size dialog will be opened, where you can specify the new size of the SDL Page.
- To Cancel the operation. Try to find a more suitable location for the new symbol and use manual placement (see Adding Symbols in Manual Mode).
Adding a Gate Symbol
The gate symbol differs slightly from other symbols when you add it.
Adding a Gate in Manual Mode
- Select the gate symbol.
- Move the pointer into the drawing area. The gate is immediately displayed and connected in a 90-degree angle to the frame and the environment.
- Move the mouse to a suitable location. The gate symbol follows the mouse motion and is automatically reconnected.
- Click the mouse.
- Enter the name of the gate and the signals it conveys.
Note: Coalesced Gates and Connection Points
See Connecting a Gate Symbol with a Channel or Signal Route if you get a message with the text "A Gate has coalesced with a connection point...".
Adding a Gate in Automatic Mode
You may add and connect a gate to a channel or signal route with a double-click. The channel or signal route must not be already connected to a gate or connection point.
- Select the channel or the signal route.
- Double-click the gate symbol in the symbol menu.
- If required, redirect or bidirect the gate so that it matches the direction of the channel or signal route.
- Enter the name of the gate and the signals it conveys.
Adding a Diagram Reference Symbol
When you add a diagram reference symbol, the SDL Editor checks that the name and type are unique within the SDL diagram. The SDL Editor will refuse any duplicates. The newly added reference symbol is then inserted into the Organizer's diagram structure.
- Select the symbol to be added from the symbol menu and add it to the diagram.
- Type in the name of the symbol.
- Deselect the symbol. The SDL Editor checks that the name and type are unique within the SDL diagram being edited.
Adding an Operator Diagram Reference Symbol
In a data type construct it can be stated that an operator diagram is referenced elsewhere. This means that the operator will not be described in the current place, but in an operator diagram.
The SDL Editor does not know that the operator is referenced in a data type. The operator reference symbol is available for this situation. It is a convenience that has been added to the SDL Suite tool set to facilitate navigating within an SDL system. Its presence in an SDL diagram does not modify the meaning of the diagram.
You add an operator reference symbol in a similar manner as when adding any other reference symbol. See Adding a Diagram Reference Symbol.
Adding a Text Reference Symbol
The Text reference symbol is used to include SDL PR into the SDL system.
You add an operator reference symbol in a similar manner as when adding any other reference symbol. See Adding a Diagram Reference Symbol.
Inserting a Symbol into a Flow Branch
The SDL Editor allows you to insert symbols into a flow branch. When inserting symbols, the SDL Editor will rearrange the page in order to prepare the required space for inserting the symbol. This can be done in different ways:
- By pushing the tail of the branch downwards. This is the preferred method.
- By increasing the size of the SDL page.
Inserting a Symbol into a Flow Branch
- Select the symbol in the symbol menu.
- Point to the line interconnecting the symbols where the new symbol is to be inserted.
- Click the mouse.
Inserting a Symbol by Double-Click
To insert a symbol into a flow branch by double-clicking it:
- Select the line that interconnects the two symbols. Alternatively you can select the symbol preceding the line, see Insert Paste.
- In the symbol menu, double-click the symbol to be inserted.
Navigating in Flow Diagrams
For certain symbols you can use the Navigate command in the Tools menu or double click on the symbol to navigate around in the diagrams. These symbols are:
- Create request, procedure call and macro call
- State and nextstate
- Inconnector and outconnector
- Reference symbols; see further Navigating from a Diagram Reference Symbol
Note: Navigating from a Class Symbol
Navigating from a class symbol is possible only by using Tools>Navigate. See further Navigating from Class Symbols
Navigating from Create Request and Procedure/Macro Call
For a create request, procedure call or macro call the Navigate command will show the corresponding process, procedure or macro diagram. The diagram is found by searching in the Organizer structure for all relevant diagram types matching the name used in the symbol. If one and only one match is found this diagram will be shown in the editor. If there exists more than one diagram a dialog is issued.
Navigate to the desired diagram by selecting it in the dialog.
Navigating from State/Nextstate
For a state or nextstate the Navigate command will show other occurrences of the same name(s) in other state or nextstate symbols within the same diagram. If only one symbol matches the name search this symbol will be shown. If more than one symbol have the same name, a dialog is shown.
Navigating from Connectors
For an outconnector, the Navigate command will show the corresponding inconnector in the same diagram having the same name as the outconnector.
Similarly for an inconnector; you can navigate to all occurrences of outconnectors within the same diagram having the same name as the inconnector.
Navigating from Symbols
Navigating from a Diagram Reference Symbol
When you double-click or choose the Navigate command on a diagram reference symbol, the SDL diagram that the reference symbol refers to is opened, provided that the diagram is included in the Organizer structure.
This feature allows easy navigation down an SDL hierarchy.
See also Navigating from an Instantiation Symbol and Navigating from a Dashed Symbol.
Navigating from an Instantiation Symbol
You may use instantiation symbols to navigate in the diagram structure.
When you choose Navigate in the Tools menu or double-click on an instantiation symbol, the SDL Editor matches the name of the type referred to in the instantiation symbol against the existing type diagrams in the Organizer structure. The following happens depending on how many type diagrams that match the given diagram name.
- One and only one diagram is found: This diagram will be shown.
- No diagram matches the name: A dialog will appear which offers the possibility to open the Type Viewer window which can be used to navigate among the inheritance and redefinition trees extracted from the SDL system:
- More than one diagram is found: A dialog will appear showing the file names of all the found diagrams. Additionally the possibility to show the Type Viewer window is available.
Navigating from a Dashed Symbol
When you select Navigate in the Tools menu or double-click a dashed symbol, a scenario similar to the action of navigating from an instantiation symbol takes place. See Navigating from an Instantiation Symbol
Navigating from Class Symbols
For a class symbol, the Navigate command will show other occurrences of the same name(s) in other class symbols within the same diagram. If only one symbol matches the name search, this symbol will be shown. If several symbols have the same name, a select dialog is shown.
Cutting, Copying and Pasting Symbols
The clipboard of the SDL Editor allows you to cut or copy a selection of symbols. The selection may then be pasted to:
- The same page
- Pages of the same diagram, provided the page types match
- Other diagrams, provided the diagram types match
See also Cutting, Copying and Pasting Reference Symbols.
Cutting and Pasting Symbol(s)
A dialog may appear when cutting or pasting an object with link endpoints. See Deleting an Object or Pasting an Object.
Limitations when Pasting
Pasting is not always possible. Note the following cases, and refer to Relationship between Diagrams and Pages.
- The selection cannot be pasted if the page is too small. In this case, you need to enlarge the page. See Resizing a Page.
- You are not allowed to paste symbols so that they overlap existing symbols in the drawing area. If you attempt to do this, the Paste operation is cancelled. Try another suitable location.
- You are not allowed to paste flow symbols into an interaction page and vice versa. In this situation, the Paste menu choice is dimmed.
Pasting on Flow Pages
On a flow page, symbols are pasted along with the flow lines that interconnect them.
Pasting on Interaction Pages
On an interaction page, symbols are pasted along with the lines that interconnect them. Any lines that connect the pasted symbols to the environment will also be drawn.
Pasting Symbols into a Flow Branch
On a flow page, symbols can be pasted into a flow branch in a similar manner as Inserting a Symbol into a Flow Branch.
- Copy or Cut one or more symbols in a flow page. The symbols must be connected and placed below each other.
- Go to the page where you want to insert the symbols and select a symbol or a flowline.
- Select Insert Paste from the Edit menu.
- The pasted symbols will be placed below the selected symbol and inserted into the flow branch. Any previously following symbols will be automatically shifted downwards to make place for the inserted symbols.
Cutting, Copying and Pasting Reference Symbols
When you cut or copy a reference symbol, the possible sub-hierarchy shown in the Organizer below this reference symbol is also placed in the clipboard. When pasted in the same diagram or in another diagram this sub-hierarchy will be restored at the new position.
When a reference symbol is cut, the sub-hierarchy that is shown in the Organizer will be removed. However, the hierarchy will be restored if you select Paste or Undo.
When you copy or paste a diagram reference, it is assigned a new name that consists of the original name, preceded with the prefix CopyOf. The prefix is repeated as many times as necessary in order to build a name / type combination that is unique within the SDL diagram being edited. If the cut/copied symbol had an underlying structure this structure is restored after the paste.
Cutting, Copying and Pasting Class Symbols
When cutting, copying or pasting a class symbol, one or more operators with a defined body code may be completely removed, i.e. there is no longer any class symbol that refers to a specific operator. If so, the following dialog is shown:
You have the following options:
- Accept the deletion of the listed operators and their defined body code by pressing OK.
- Cancel the issued operation by pressing Cancel and try to correct the error.
By confirming the deletion of the operators, you accept that the listed operators, and possibly defined body codes, will be permanently removed. No Undo option is available.
Moving Symbols
You may move one or more symbols in a single operation. The lines and text objects that are related to the symbol will be moved accordingly in order to preserve as much as possible of the original appearance. When you move a symbol, its position is automatically adjusted to fit exactly into the symbol grid.
Symbols are not allowed to be moved to positions where they would overlap other symbols.
Moving Symbols and Text Attributes
You can move symbols and text attributes by pointing and dragging to the desired position. To grab the text attribute the pointer must be at the border of the text extent.
You cannot move text within flow symbols and class symbols.
Connecting a Gate Symbol with a Channel or Signal Route
When you move a gate symbol in order to reconnect it to a line or vice versa (channel or signal route that is connected to a connection point), the following takes place:
- If the connection point is not assigned any name, the SDL Editor connects the gate symbol and the line.
- If the connection point is assigned a name, a conflict occurs, since the line cannot be connected to the connection point and the gate simultaneously. The following dialog is issued:
- You have the following options:
The situation above also occurs if you add a new gate symbol and place it on a connection point.
Resizing Symbols
The procedure for resizing a symbol differs slightly depending on whether the symbol is a flow page symbol or an interaction page symbol. When you resize a symbol, its size is automatically adjusted to fit exactly into the symbol grid. Any lines connected to the symbol are similarly adjusted to preserve as much as possible of the original appearance.
The text, the additional heading, the package reference, comment, class, and text extension symbols are handled differently. Their size is determined by the SDL Editor to fit the text they contain.
Specifying Default Size of Symbols
You define the default sizes for symbols in the Preference Manager:
- For interaction pages, the predefined size of a symbol is 30 * 20 mm.
- For flow pages, the predefined size of a symbol is 20 * 10 mm. The width / size relationship is always 2:1.
Resizing Interaction Page Symbols
- Point to a corner of the rectangle that delimits the symbol. From this point on, the corner that you are pointing to is movable, while the opposite corner is fixed.
- Drag the corner until the symbol has the desired size. An interaction symbol cannot be adjusted to a size less than 15*10 mm.
- Release the mouse button. The symbol is redrawn with its size adjusted to fit exactly into the symbol grid. The lines connected to a resized interaction symbol are automatically adjusted to preserve a nice appearance.
Resizing Flow Page Symbols.
- Point to a corner of the rectangle that delimits the symbol. From this point on, if you pointed to any of the lower corners, the top of the symbol is fixed (and in a similar way, if you were pointing to any of the upper corners, the bottom of the symbol is fixed).
- Drag the corner until the symbol has the desired size. The symbol shrinks or swells both horizontally and vertically, the proportions remaining 2:1. A flow page symbol cannot be adjusted to a size less than 20*10 mm.
- Release the mouse button. The symbol is redrawn.
Resizing the Class Symbol
The class symbol contains three text boxes. Whenever the text in any of the boxes grows bigger than the symbol, the class symbol is automatically re-sized.
Resizing Text / Additional Heading / Package Reference /
Comment / Text extension SymbolsThe text, additional heading and package reference symbol look like a piece of paper. When all of the text within a text symbol is in view, the upper right corner is "folded" down. When any portion of the text within a text symbol cannot be seen (because the text symbol is too small), the upper right corner is clipped or diagonally cut off. See Figure 392.
Clipped text symbols are printed in their whole on a separate sheet of paper.
These symbols react in the same way for resizing. There are several ways you can resize these symbols:
Adjusting to a Specific Size
(only for Text / Additional Heading / Package Reference)
- Place the mouse pointer on the filled selection square at the bottom right corner of the symbol.
- Holding the left mouse button down, make the symbol smaller by pushing to the left or larger by pulling the corner to the right.
Toggling Between Minimum and Maximum Size
You may rapidly toggle between a text symbol's maximum and minimum size. This can be accomplished in two ways:
- Select the symbol and choose the Collapse/Expand command in the Edit menu.
- Double-click on any part of the symbol.
Mirror Flipping Symbols
The input, priority input, output, comment and text extension symbols are drawn by default as displayed in the symbol menu. In some cases, the layout of the connecting lines would be nicer if the symbols were drawn flipped L/R.
Adjusting Symbols to the Grid
The drawing area of the SDL Editor provides two grids for easier positioning of objects. These are the symbol grid and the line grid, which are invisible.
After you move or resize symbols, the position of the upper left corner of each symbol is positioned on the closest intersection in the symbol grid. In addition, resizing a symbol will adjust the size so that it matches the resolution of the grid, horizontally as well as vertically. The resolution of the symbol grid is variable and can be set with the Preference Manager. The default is 5 * 5 mm for interaction pages, and 25 mm * 15 mm for flow pages.
You can temporarily disable the grid by toggling the Use Grid to off in the Diagrams Options dialog.
Handling Symbols of Different Sizes
Since symbols adhere to the symbol grid, mixing symbols of different sizes may imply that symbols cannot be aligned symmetrically, and that enlarging symbols becomes impossible due to overlap of symbols already laid out.
You can align symbols of different sizes by disabling the symbol grid.
Editing the Diagram Kernel Heading
You can rename, retype and re-qualify a diagram with the SDL Editor, by modifying the diagram's kernel heading.
See also Transforming the Type of a Diagram for more complicated transformation of diagram types.
The SDL Suite accepts a number of syntaxes for kernel headings, 13 in all. See The Kernel Heading.
Changing the Name of a Diagram
This is the bottom-up method you would use when renaming diagrams in an SDL structure.
- Select the kernel heading.
- In the text window, edit the kernel heading text.
- Deselect the kernel heading. The SDL Editor checks that the name is still valid according to SDL rules. Any syntax error will cause a dialog with the following alternatives to be issued:
- Clicking OK, you are returned to the text window where you should correct the error.
- Clicking Revert, the kernel heading is reverted to its original contents.
- Clicking Ignore, the erroneous kernel heading is accepted. The error will probably lead to other kind of error reports, typically when verifying the diagram with the Analyzer tool.
- To correct the mismatch, you have to update the name of the reference symbol accordingly. Use the command Edit Reference Page to bring the page with the reference symbol into view. Locate the reference symbol and rename it accordingly.
For renaming diagrams in a top-down fashion., see Renaming a Diagram Reference Symbol.
Changing the Type of a Diagram
It is possible to re-type a diagram, provided the old and the new types are "compatible" from the SDL Editor's point of view. The basic compatibility criteria is that the old and new type of diagram must both be interaction diagrams or both be flow diagrams. Also checks are made on the pages that are contained in a diagram (some diagram types are allowed to have different types of pages in the same diagram, see Relationship between Diagrams and Pages. The table below summarizes the type changes that are allowed.
To change the type of a diagram:
- Select the kernel heading.
- In the text window, edit the kernel heading text to apply a new type. See the table above for allowed transformations.
- Deselect the kernel heading. The SDL Editor checks that the type is still valid according to the table above. Any violation of these rules will cause a dialog with the following alternatives to be issued:
- Clicking OK, you are returned to the text window where you should correct the error.
- Clicking Revert, the kernel heading is reverted to its original contents.
- Clicking Ignore, the erroneous kernel heading is accepted. The error will probably lead to other kind of error reports, typically when verifying the diagram with the SDL Analyzer.
Changing the Qualifier of a Diagram
By changing the qualifier that appears in the kernel heading, you can change the context of the diagram.
The SDL Suite accepts the two Z.100 notations for a qualifier, namely with and without the surrounding "<< >>".
Example 321 : An SDL Qualifier
PROCESS TYPE <<SYSTEM MYSYS/BLOCK MYBLOCK>> MyprocPROCESS TYPE SYSTEM MYSYS/BLOCK MYBLOCK Myproc
- Select the kernel heading.
- In the text window, edit the kernel heading text to apply the new qualifier.
- Deselect the kernel heading. The SDL Editor checks that the new qualifier is syntactically correct. Any syntax error will cause a dialog with the following alternatives to be issued.
- Clicking OK, you are returned to the text window where you should correct the error.
- Clicking Revert, the kernel heading is reverted to its original contents.
- Clicking Ignore, the erroneous kernel heading is accepted. The error will probably lead to other kind of error reports, typically when verifying the diagram with the SDL Analyzer.
Renaming a Diagram Reference Symbol
When you change the name of a diagram reference symbol, the SDL Editor checks that the new name is not in conflict with existing symbols. If the reference symbol passes this check, the Organizer structure is updated accordingly.
When renaming diagrams in a top-down fashion, you start by changing the name of a reference symbol. After the reference symbol is renamed, you should also update the referenced diagram's kernel heading accordingly to maintain consistency in the diagram structure.
To rename a diagram reference symbol and the referred diagrams:
- Select the symbol to be renamed.
- Change the name of the reference symbol.
- Deselect the symbol. The SDL Editor checks that the name and type are still unique within the diagram.
- To ensure that the change also applies to the referred diagram, you should use the Organizer command Update Headings (see Update Headings). This command verifies and possibly changes the name in the diagram kernel heading against the expected name (which is the one that now is shown in the reference symbol). The mismatch between the name of the diagram is reported in a dialog:
For renaming in a bottom-up way, see Changing the Name of a Diagram.
Removing Symbols
When you remove a diagram reference symbol, the underlying structure is also removed from the Organizer structure. However, the hierarchy will be restored if the remove operation is restored by doing Undo.
- Select the symbol(s) to be removed.
- Select Clear from the Edit menu. The symbol(s) are removed, as well as the lines that were connected to these symbols.
Printing Symbols
A selection of symbols can be printed. This allows for instance to print only the portion of a diagram which is of interest.
- Select the symbols to be printed.
- Select Print from the File menu.
- In the Print Dialog, click the Setup button. The Print Setup dialog will be issued. In the dialog, select the Print only selected symbols option.
- Adjust, if necessary, other Print options and click the OK and Print buttons. See Printing a Diagram for more information.
http://www.ibm.com/rational |
![]() |
![]() |
![]() |
![]() |