7.1 Metamodel Browser
The Metamodel Browser
is a tool for
viewing and editing modeling language specifications. Through the Metamodel
Browser the modeling language developer has access to all modeling languages
available in currently open projects, along with the types they contain. To open
a Metamodel Browser, either activate its tab on the MetaEdit+ Launcher or select
Metamodel | Metamodel Browser from the menu.
Figure 7–1. Metamodel Browser.
As
Figure 7–1 illustrates, the Metamodel
Browser is similar to the other browsers of MetaEdit+. The left-hand list shows
all the projects that are currently opened in the MetaEdit+ client. If the
project you want is not visible, you can open it explicitly from the
list’s pop-up menu.
The middle list shows all the available graph types,
filtered by the projects selected in the left-hand list.
The list on the right shows the types contained in the
graph type that is selected in the middle list. You may determine which element
types are visible in the right hand list from the pull-down list labeled Show.
In
Figure 7–1, all object types of
the WatchApplication graph type are shown.
The Metamodel browser also allows you to view the graph
types by their explosion and decomposition hierarchies, by viewing both
hierarchies simultaneously, or according to the subtype structure of the graph
types. This viewing option can be selected from the Tree pull-down
list.
As in other browsers of MetaEdit+, you can choose the
default project for graph and type creation, and set wildcard string filters for
the middle and right-hand list contents.
In addition to browsing the modeling language
specifications, you can open them for editing with the metamodeling tools, and
view more detailed information about type usage.
Editing is carried out in the metamodeling tools described
earlier (Graph, Object, Relationship, Role and Property tools). To open these
tools select the type from the list and double click it, or alternatively choose
Edit Type from the component’s pop-up menu. This opens a
metamodeling tool for that type. To edit the symbol, select Edit Symbol
from the popup menu.
The pop-up menu for a type also includes
Type Info,
which opens a Type Info tool showing which types use this type, and which types
it uses. The Type Info
tool is similar to the Info tool
for design data, and is illustrated in
Figure 7–2.
Figure 7–2. Type Info tool.
The Type Info tool has
three fields. The label at the top shows in which project the type is stored.
The upper list shows which types use this type, along with the project where
they are defined, and the function of this type within the using type. The lower
list shows which types are used by this type, along with the project where they
are defined.
In
Figure
7–2 a Type Info tool has been opened for State [Watch]. This type is
defined in the Watch project. It is used in the WatchApplication diagram in the
Watch project. State [Watch] itself uses other types as its properties, e.g. the
Name [Watch] property type, which is defined in the Watch project.
More information about a type shown in the Type Info tool
can be seen by selecting that type. From the pop-up menu you can then choose
Info to open it in its own Type Info Tool, or double click the type to
open it in the appropriate metamodeling tool.