These proposals come from a consideration of requirements for personal
knowledge management. However, they may prove helpful in a wider context.
Our laboratory has prepared a calendar
of projects to further develop these proposals.
The contexts of sequence, of hierarchy, and of cross-reference are the only ones that explicitly relate thoughts. In writing, these three contexts promote qualitatively different kinds of thinking. Writing in sequence brings out the strengths and weaknesses of an argument. Writing in a hierarchy distinguishes the broad and the narrow. Writing in a web lets one write in a private language that refers questions to footnotes.
A thought can be explicitly related to others in any or all of the three ways. Implemented in the most general way, thoughts are records in a table. The table has a field for unlimited text, and additional fields for explicitly relating records. A thought may exist without explicit relation to other thoughts, which is to say, these additional fields need not have values.
How should the additional fields be defined ? The hierarchical position should be given by one field that orders every branch and places no limit on the depth of the hierarchy or the number of branches. The sequential position should be given by two fields, one that references a record that represents the sequence and need not be part of it, and another that gives the position within the sequence. The cross-reference should be given by three fields because the reference from one record to another record should be annotated by a third record. One field provides an identifying key for every cross-referenced record. The other two fields indicate within the annotating record which is the source record and which is the target record. Note that any or all fields may be Null.
This completes the standard for explicit relations, the syntax.
There are seven or eight basic types of cross-reference !? They correspond to raising the counterquestions: How does this seem to me? What else should I be doing? Would it make any difference? What do I have control over? Am I able to consider the question? Is this the way things should be? Am I doing anything about this? There is perhaps one additional type. The counterquestions give the ways of placing a point of view into a situation. They help us find our bearings when our experience may be corrupt, and are the functions that a hyperlink can serve.
A chronicle adds a hierarchy to a sequence. Chronological events get organized in eras and ages.
An evolution injects a sequential parameter into a hierarchy. This lets us see how a tree of possibilities grows in time.
An atlas adds a hierarchy onto a network. This makes for global and local views.
A catalog grafts crossreferences onto a hierarchy. Short cuts help relieve a file manager.
A Markov process observes over the course of a sequence the ultimate behavior of a network.
A canon adds a network onto a sequence. This occurs when we have reuse, as when key machinery gets reused in a factory, or new associations are found for key passages in Scripture.
The second context is always more unstable than the first. For example, as time goes on, historians keep adding new "modern" ages. The pragmatic question is, when is instability least painful ? Instability is most painful when change in the more stable first context makes for large change in the less stable second context. The growth of a network and of a hierarchy affects more structure, and that of a sequence affects less. Therefore evolutions are less painful than chronicles, and Markov processes are less painful than canons. A linear factory process will, in the long term, always hit up against a wall where extensions become prohibitively expensive because of their consequences on the overlying structure. When a hierarchy has less structure than a network, then atlases are less painful than catalogs, and when a hierarchy has more structure, then it is the other way around.
Computers are so fast that they make it painless for us to model painful situations. But we should be aware of the pain involved. Software should help us contrast visualizations and appreciate their pragmatic differences.