Model Page
The Model Page of DEXi model window provides workspace and commands for editing a DEXi model: its structure, attributes, scales and utility functions, but excluding options and program settings.
Workspace
The workspace consists of four main areas that correspond to the following model components:
Tree of attributes: On the left, there is an “Explorer-like” Tree View that displays the structure of the edited model. It has an associated vertical toolbar. All toolbar buttons and most of the corresponding Edit Menu commands refer to the currently selected attribute in the tree.
Attribute: There are two entry fields in which you can name (or rename) the currently selected attribute and optionally provide its description.
Scale of the currently selected attribute: You can either select an existing scale from a pull-down list, or press to open the Scale Editor. Whenever the attribute’s scale has been already defined, the list of scales contains only ‘compatible’ scales - the ones having the same number of values.
Utility function of the currently selected aggregate attribute. There are three parts: a read-only field showing the current status of the function, the button to invoke the Function Editor, and a field for entering an optional description of the function. The utility function area is not available for basic attributes.
Commands
To invoke a command, you may either:
press a button shown in the window,
select an item from the Edit Menu, or
select an item from the pop-up menu that appears after right-clicking the mouse button.
The Model Page provides the following commands:
Add attribute: This command creates a new attribute and inserts it into the tree as a descendant (‘child’) of the currently selected attribute. The new attribute is automatically called “New”, so you should consider giving it a more meaningful name.
Delete subtree or item: This command depends on the type of the currently selected attribute:
For an aggregate attribute: it discards all its descendants and its utility function, effectively converting it into a basic attribute.
For a basic attribute: it deletes that attribute
Thus, to completely delete a sub-tree of attributes, you should “delete it twice”.
Cut: Equivalent to Copy followed by Delete subtree or item.
Copy: Copies the currently selected sub-tree into the clipboard for further use.
Paste: Inserts previously Cut or Copied sub-tree into the model, positioning it as a descendant (‘child’) of the currently selected attribute.
Duplicate: Makes a copy of the currently selected sub-tree and inserts it as a new top-level tree in the model, so that it can be easily moved around.
Move up: Moves the currently selected attribute one place up according to what is shown in the tree view.
Move down: Moves the currently selected attribute one place down according to what is shown in the tree view.
Find…: Opens a window in which you can define a text to be searched for in the model. You can also select components in which to search: attribute names, attribute descriptions, and/or scales. The search can be case sensitive or not.
Find next: Continues searching from the current position in the model.
Shrink tree: Shrinks the display of the tree by one level.
Expand tree: Extends the display of the tree by expanding the inner-most collapsed sub-trees.
Undo: Undo the last tree-editing operation.
Redo: Redo the last undone tree-editing operation.
Scale: Invokes the Scale Editor to create or edit the scale of the currently selected attribute.
Delete scale: Deletes the scale of the currently selected attribute.
Reverse scale: The scale of the currently selected attribute is reversed: all scale’s values are put in reverse order, and the scale’s order is changed from decreasing to increasing or vice versa. The underlined utility functions, if any, are also changed so that the original value mappings are preserved.
Utility function: Invokes the Function Editor to create or edit the utility function of the currently selected aggregate attribute.
Delete function: Deletes the utility function of the currently selected aggregate attribute.
Remarks
Changing the structure and scales of attributes can severely affect previously defined utility functions. In some cases, for example when adding or deleting an attribute value, DEXi tries to adapt the affected function so that its ‘meaning’ is preserved as much as possible. Unfortunately, such adaptation is impossible with more extensive changes, particularly when adding or deleting function arguments. In these cases, the function must be deleted and defined anew. Before deleting a function, DEXi issues a warning and asks for your confirmation.
Consequently, you might want to develop your tree structure as completely as possible before attempting to define utility functions.