GTM Requirements
This is a draft requirements document for GTM, the Graphical Topic
Maps Notation, which will eventually become ISO 13250-7. This draft is
based on the requirements discussion at the ISO meetings in Seoul,
Montréal, and Leipzig, but primarily the Leipzig meeting. As it is not
yet clear if this document represents the community consensus on the
requirements for GTM, feedback on this document is requested.
Proposed graphical Topic Maps notations are also requested from the
community.
It has been tentatively decided that GTM will consist of two
sub-parts, for the time being informally known as GTM level
0 and GTM level 1. This does not imply that GTM will
be a multi-part standard in the ISO sense of this term; simply that
GTM will define two closely related, but different, modelling
languages. (For more information, see below.)
Purpose
GTM is being created to enable the communication of information by
means of graphical models. However, GTM should support the
communication of two different kinds of information, and so there are
two different sets of purposes being served by it:
- GTM should be usable for communicating the contents of a
topic map to students and readers of technical papers. This means
that GTM should effectively be able to express the same information
as the TMDM, but in a visual form. This is the purpose served by GTM
level 0.
- GTM should be usable to communicate the constraints on a Topic
Maps ontology to customers, developers, students, and readers of
technical papers. This means that GTM should effectively be able to
express the same information as TMCL Schema, but in a visual
form. This is the purpose served by GTM level 1.
General requirements
The following requirements are goals, which GTM should satisfy:
- GTM must support both of the purposes described above.
- GTM should be easy for humans to read.
- GTM should be easy for humans to write, using either
- a modelling
tool with GTM support,
- a general vector drawing tool, or
- simply
manually on a whiteboard or blackboard.
- GTM models should be compact, and conserve visual real estate.
- The two parts of GTM should be visually consistent; that is,
they should use a common set of shapes.
- The GTM standard should not rely on colour for communicating model
information. That is, if a GTM model is printed in black and white,
no standardized information should be lost.
- A GTM model is not required to display every aspect of the
represented TMDM/TMCL instance. If essential information is omitted,
GTM must specify the shapes to be used as a "shorthand" for the
omitted information. (Note that this applies only to simplifications
such as omitting the type and role types of an association, and is
not a general templating mechanism or support for clustering of
topics.)
- The visual structure of a GTM model should correspond as closely
as possible to the structure of the topic maps being either
represented directly (in level 0) or constrained by the model (in
level 1).
- The shapes used by GTM must be fit for purpose (e.g, something
with multiple connection points should be designed in such a way as
to aesthetically facilitate this).
- All GTM models must be required to use a consistent set of
shapes to represent the various underlying TMCL and TMDM
constructs. (That is, the shape used to represent, e.g, topic types
should be consistent across all GTM models.)
- Requirements on shapes must be specified as minimal requirements
only, to allow users to make extensions to GTM (such as use of
colour and fill patterns) without being incompatible with the
standard.
- GTM must define precisely what is considered to be consistent
with the standard, and what is not. (For example, is rotation of the
shape allowed; is using a fill colour inside the shape allowed, etc
etc)
- GTM should aim to not constrain visual representations of GTM
models any more than what is necessary for consistency. That is,
the constraints on visual representations should be minimal.
- GTM must provide some way of visually representing both
information from level 0 and level 1, and the connections between
the two levels.
The following functionality will not be provided by GTM:
- There will be no interchange format for GTM diagrams and models
similar to XMI for UML. (Except in so far as this is supported by
CTM and XTM.)
- Features such as filtering, zooming, and layering will not be
defined by GTM, although tools may well provide these functions, so
long as the resulting models conform to GTM.
- No data model for the visual shapes will be defined.
Requirements on GTM level 0
The following are requirements on the part of GTM that is intended
to represent TMDM instances:
- GTM level 0 must be able to represent all item types and
properties in the TMDM.
- GTM level 0 may also define shapes for representing the
type-instance and supertype-subtype association types defined by
TMDM.
- There must be a precise definition of how the shapes in GTM
level 0 map to constructs in the TMDM.
The following are requirements that GTM level 0 will not
attempt to meet:
- GTM level 0 only represents TMDM, and no attempt will be
made to represent any aspects of CTM and XTM beyond those present in
TMDM.
An example of information that could be represented with GTM level
0 is: "Tosca was composed by Puccini" (an association item with two
role items).
Note that since TMCL constraints have a TMDM representation it is
possible to represent these constraints in GTM level 0. This is
considered to be useful for communicating the TMDM representation of
TMCL constraints, but not to be suitable for communicating an
actual set of constraints to customers etc as described under
"Purpose" above. This is why a level 1 is proposed in addition to
level 0.
Requirements on GTM level 1
The following are requirements on the part of GTM that is intended
to represent constraints:
- GTM level 1 must be able to express everything that TMCL Schema
can express. That is, it must be possible to generate a TMCL Schema
from a GTM level 1 model.
- GTM level 1 must be conceptually similar to existing modelling
formalisms such as UML, ORM, and ER.
- GTM level 1 must allow a representation of TMCL constraints
that is more compact than the representation of the TMDM form of
these constraints in GTM level 0.
- There must be a precise definition of how the shapes in GTM
level 1 map to constraints in TMCL.
An example of information that could be represented with GTM level
1 is: "every opera must have at least one composer" (a constraint on
the use of the association type with the opera topic type).
Editorial requirements
The goal of the editors is to get both level 0 and level 1 into ISO
13250-7 at the same time. However, level 0 depends on TMDM, which is
finished, while level 1 depends on TMCL, which is not. There is
therefore a danger that level 0 could be finished before TMCL is
finished. There is a general understanding that in this case, GTM will
initially be published with only level 0, without waiting for level 1,
and that level 1 will be added later.