





C. The Company's Products and Services

     1. A Scenario

Let us examine how the Xanadu Hypertext System might help the manager of a
large systems project in maintaining his software.  For example, let us assume
that he has just received a bug report from a user in the field:

The various portions of the project are tied together with links:
specifications are connected to related requirements documentation and to code,
code is connected to comments, bug reports are connected to the appropriate
specifications and other documentation, and so on.  Thus a new bug report can
lead directly to the portions of the specifications that are related and thence
to the code and the comments.  Xanadu's versioning capability allows managers
and programmers to determine the changes that have been made to the system
since the version that the bug report relates to was created, as such changes
could effect the validity of the new report.  With this information at hand,
the appropriate response to the bug report can be determined: inform the user
of the availability of a new version of the software, revise the documentation,
modify the software to fix the problem, or whatever.  Action resulting in a
change may propagate through the complete project, affecting specifications,
code, documentation and the interconnection of pieces.  However, the
relationships of the pieces (both before and after the change) are stored and
available for examination and use.  All interconnections and recognized
cross-dependencies can be stored and easily retrieved.

     2. Why the Xanadu Hypertext System is Unique

As the above scenario illustrates, the Xanadu Hypertext System is a tool for
storing, retrieving, and organizing information, although it is not a "database
management system" in the traditional sense of the term.  It differs both in
its form and its function.

In the Xanadu System, information is stored in the form of documents: letters,
memos, articles, engineering specifications, scribbled notes, textbooks,
manuals, computer programs, contracts, reports, and so on.  These can vary
greatly in their size and in the nature and complexity of their internal
structure. This contrasts sharply with database management systems, where the
information stored consists of aggregates of records holding chunks of data in
fairly fixed formats and in fairly homogeneous arrays.  In short, DBMS's store
lists of items, where every item in the list has the same structure.  Clearly,
these two forms of information storage have different purposes and are
appropriate for different kinds of information.

DBMS's arose out of traditional record keeping systems in which information was
stored on paper in the form of ledgers, lists, card files, etc., and the
storage, retrieval, and update functions were performed by hand, often by
armies of clerks. As these functions were computerized, it was discovered that
the computer made possible a variety of capabilities that had not previously
been considered.  In addition to allowing vastly larger bodies of data to be
accessed and manipulated far faster and more accurately than ever before,
entirely new functions could be performed.  It was found that if the data was
stored according to certain kinds of generalized schemes, one could impose
different patterns of organization on the same body of data, allowing
appropriately different organization schemes to be used for different
applications.  Also, it was realized that one could store information about
the relationships between different chunks of data, in addition to storing the
data itself, and then manipulate this relational information as well, using the
very same techniques.  One could even store relational information about other
relational information, enabling the most general organizational structures to
be built.

Today, DBMS's are a standard tool for handling information.  Research goes on
to make them ever more powerful, efficient and general-purpose. Tomorrow's
DBMS's will be even more sophisticated.

Techniques for handling information in the form of documents, however, have not
kept pace with database technology. While there are numerous systems available
which allow one to store, retrieve, and to some extent manipulate document-type
data using a computer, systems that allow one to organize and interrelate this
information, in the sense that DBMS's allow one to organize and interrelate
bulk data, have been crude to non-existent. The Xanadu Hypertext System ends
this state of affairs.

The Xanadu Hypertext System is the first and so far the only effective system
for document management which allows one to organize and interrelate document
type information in a totally general and application independent fashion.

This is what the Xanadu Hypertext System can do:

  --It can store, retrieve and update documents on command.

  --On command, it can create explicit linkages between arbitrary sets of
arbitrary portions of arbitrary documents and other linkages.  It can retrieve
these linkages at will, including information about what is being linked to
what and about the nature and type of the link itself.  It can correctly
maintain these linkages in the midst of changes to the very data being
interlinked.

  --It can maintain multiple versions of any given document, efficiently
storing the common portions in common, with separate portions of storage
required only for those parts of the documents which are actually different.
It can provide historical traceback information in dated chronological order
about any and all changes to a given document, for purposes of error recovery
or auditing.

  --It can do all of this efficiently, with only logarithmic overhead in terms
of both storage space and response time.  This means that storage overhead
requirements will grow quite slowly as the volume of data stored grows (as
opposed to many systems of various sorts in which storage overhead increases
much more rapidly than the volume of data does).  Response time will remain
effectively constant no matter how vast the body of stored documents may
become.  It can make effective use of ultra-high density write-once storage
technology, such as video disks.  It can effectively and efficiently operate
in a totally distributed storage environment in which the data is spread over
a network of intercommunicating computers which may be located all over the
country or all over the world.
