A specific graphical type is defined as an instance of the object GraphicalType. This layout description specifies graphical attributes of the presentation style like shape, colour, line thickness, font etc. Since the actual attributes and their admissible value depend on the used visualization tool, they are not hard-coded in ConceptBase. Therefore, the definition of GraphicalType looks very simple:
GraphicalType in Class end
The declaration of a graphical type for a concrete object is done by using the attribute graphtype which is defined for Proposition and therefore available for all objects:
Proposition with
attribute
graphtype : GraphicalType
end
The attribute can be defined explicitely for an object or can
be specified by using a deductive rule (see section
for an
example). If there exists an extensional and an intensional
definition for the same object, the explicitly specified overwrites the
deduced one. The explicit specification acts then as an exception from the
general rule (see
for an example).
Many applications employ multiple notations to provide different perspectives on the same set of objects. Each perspective emphasizes on a specific aspect of the world, such as the data oriented, the process oriented and the behavior oriented viewpoint, and uses an aspect-specific notation. A graphical notation (as e.g. the Entity-Relationship diagram) typically consists of a set of different graphical symbols (as e.g. diamonds, rectangles, and lines). A graphical palette is used to combine the set of graphical types that together form a notation:
Individual GraphicalPalette in Class with
attribute
contains : GraphicalType
default : GraphicalType
end
In such a setting the same object may participate in different perspectives. ConceptBase offers the possibility to specify multiple graphical types for the same object. A tool can then provide different graphical views on the same object. To get the desired graphical type of an object under a specific palette, an application program specifies the name of the actual graphical palette as answer format when querying the ConceptBase server. Although this mechanism is available for arbitrary application programs we restrict our description to the ConceptBase Graph Browser. For all graphical palettes the following constraint must hold: The graphical palette in conjunction with the above mentioned preference rule specifies for every answer object at most one applicable graphical type. In other words: The palette defines a selection of at most one graphical type out of the set of graphical types specified for an object.
The default specification serves as a catch all: an answer object, for which none of the graphical types of the current palette is specified, is presented using the default graphical type of that palette.