A complex diagram may comprise several instances of the same class. The one in the example above has 9 instances of chemical_agent , 2 instances of distributed_stock, and 2 instances of distributed_flow. The large part of the diagram above is occupied by attributes "label" pertained to the instances of chemical_agent. And as a result the attributes that carry less significant, trivial knowledge consume the largest amount of the diagram space! Can we device special symbols for such frequently encountered objects? For example we may write the label of a chemical agent right after its name, separated by a column:

It is in generally good to have a clear mark on abbreviated symbols which would allow to quickly distinguish them from regular GFL symbols. For example we can paint a box for abbreviated chemical agents in blue color. The main concern however is that we should not loose the complete information pertained to the chemical agents. We should have a way back from our abbreviations to the original notations. This could be resolved if we describe our abbreviations with the help of logical implications as follows:

These notations are similar to the F-Logic rules introduced in the previous sections and in fact they will be translated into some sort of rules (see notes on implementation). However in this case the implication goes in both directions. The symbol defined in the graphic rule implies the set of conditions (meaning). At the same time those conditions that match the meaning of the symbol imply the possibility of using this symbol. Another important distinction- our rule is associated with instances of some class, in this case chemical_agent. The only one instance of this class is the subject of our definition. The new symbol introduced is related to this instance. The graphic definition suggests that any instance of certain class may have the specified graphic representation. We may also introduce rules for signatures of subclasses and for the attributes. Yet in all the cases the object oriented features of our language will provide a vehicle for the systematic graphic definitions. We will consider our graphic rules as legends. In fact they can serve as legends in complex diagrams. Yet another distinction- although we draw all variables boxes in green color, this convention is applied only to the meaning part of the rule. It is necessary as long as we wish to use different colors for the newly introduced symbols.
An abbreviation for an object of some class does not necessary wrap all the features (attributes, isa arrows) pertained to the class. But all the features (read " all arrows") related to original version of a symbol could also be attributed to the abbreviated version. The following principle articulates this idea:
Principle of substitution
Any arrow which originates or terminates at non -abbreviated version of a symbol, which is not included into meaning of the (new abbreviated) symbol can be used with the new symbol exactly in the same way as it is used with original symbol.
For instance if we have arrow:

We can draw the same arrow for the abbreviated symbol:

It is important to note that the new symbol introduced in the define symbol part of the diagram is related to the only one instance of the class mentioned in the legend. Here are the legends for distributed_stock and in this case we define abbreviation for instances of distributed_stock.

In fact, the definition of a symbol for one class instance introduced several graphic conventions at once. First it suggest that distributed stocks will be represented by red boxes with double border. Second, it describes the relation between a distributed_stock and the container it belongs to. We wish to denote the container as a box which contains related instances of distributed stocks (and stocks). Third, the blue arrow with doted arrowhead represents related_ agents attribute. Thus a graphic definition creates a kind of abbreviation for a possibly large pattern of the diagram.
We would achieve a better clarity if we separate signatures from the instances which are represented by variables in symbol definition. Here is the legend for distributed_flow which uses this idea:

In the large nitrogen cycle diagram the signatures for distributed stock and distributed flow were related only to the instances of these objects. Therefore when we mentioned the entire signatures in the legends there is no further need to show them in the diagram which describe the instances of these classes. Now the entire map from the previous section will be represented as follows:

Legends: chemical_agent districbuted_stock distributed_flow
This map contain exactly the same information as the one in previous section. (A few chemical agents not related to the other elements of the diagram were omitted intentionally). In fact it can be translated back to that format. Yet it has discernable advantage of clarity and readability. These advantages will increase as we add more instances of distributed_ flow and distributed_stock to the main diagram ,which we will certainly need to do as we move to the real biogeochemical cycles models.
At the bottom of the diagram there are links to the legends. Alternatively, such links can be attached to the symbols on the diagram , so that while clicking on unfamiliar symbol user can retrieve its meaning. We can envisage structure of such maps. We may think of graphic symbols defined in terms of non standard graphic symbols, i.e. those symbols which have their own graphic definition.
C 2003 S. Krivov Send your comments to skrivov@zoo.uvm.edu