Customizing the metamodel : Keywords for USRPROPS : BROWSER (Explorer)
  
BROWSER (Explorer)
Specifies whether a property and its value shows up in the Properties box of System Architect’s explorer when the respective diagram, symbol, or definition is selected in the explorer.
The following explorer control statements are permitted (the word ‘object’ is used to mean a Diagram, Symbol, or Definition).
In the specification of a property
BROWSER { SHOW }: Requires the explorer to display the value of that property when displaying the object containing that property.
BROWSER { HIDE }: Requires the explorer to not display the property when displaying the object containing that property.
BROWSER { NAMEONLY }: Where the property is a reference-type property to a keyed definition, this forces presentation of the name as opposed to the fully qualified name.
In the specification of an object but not in the description of a property
BROWSER { OMITKEY }: Requires the explorer to not display key properties of the object under conditions in which it otherwise would.
BROWSER { OMITTYPE }: Requires the explorer to not display the type of the object under conditions in which it otherwise would.
Not in the specification of an object
BROWSER { OMITKEY }: Requires the explorer to not display key properties of any object under conditions in which it otherwise would.
BROWSER { OMITTYPE }: Requires the explorer to not display the type of any object under conditions in which it otherwise would.
The term “under conditions in which it otherwise would” is used above because the explorer often does not display some (or all) key properties – when the object is being displayed subordinate to one of its key objects – and often does not display the type – when it is being displayed subordinate to a type header.
Example 1
DEFINITION "Association End"
{
PROPERTY "Package" { KEY EDIT OneOf "Package" RELATE BY "is keyed by" READONLY BROWSER { SHOW }}
..}
In the example above, the value of the package property is shown in the explorer even though it is normally not shown.
Example2
DEFINITION "Class"
{
PROPERTY "Stereotype" {EDIT Text LIST "Class Stereotype" INIT_FROM_SYMBOL Default"" LENGTH 20 BROWSER { HIDE }}
}
In the example above, the stereotype property becomes hidden even though it is normally shown in the explorer.
Example 3
DEFINITION "Class Attribute"
{
BROWSER { OMITTYPE }
..}
In the example above, a class attribute is a definition of type “Class Attribute”. By default, this would be shown in the explorer, which would be a bit redundant and might be considered visually annoying. Without the BROWSER { OMITTYPE } command, the explorer would display attributes shown in the diagram below.
Using the BROWSER { OMITTYPE } command makes the explorer display an attribute as shown in the diagram below.
Example 4
DEFINITION "Association"
{
BROWSER { OMITKEY }
LAYOUT { COLS 1 ALIGN OVER TAB }
CHAPTER "Roles"
PROPERTY "Association GUID" { KEY EDIT Text LENGTH 64 INVISIBLE READONLY}
PROPERTY "Class Roles" { EDIT COMPLETE ListOf "Association End" KEYED BY { "Association GUID":"Association GUID", "Association":"Name", "Package" QUALIFIABLE, "Class" QUALIFIABLE, "Role GUID" QUALIFIABLE, "Name" } RELATE BY "uses" LENGTH 4096 ASGRID COUNT_FIXED
BROWSER { SHOW } }
..
}
In the example above, the value of the property “Class Roles” is displayed in the explorer (since the classes that an association attaches to is important information to know), even though it normally is not shown.