Theses
Thesis/Dissertation Collections
1991
HyperManual a hypermedia construction and
browsing system in Smalltalk/V Mac
James Tracy Burdick
Follow this and additional works at:
http://scholarworks.rit.edu/theses
This Thesis is brought to you for free and open access by the Thesis/Dissertation Collections at RIT Scholar Works. It has been accepted for inclusion
in Theses by an authorized administrator of RIT Scholar Works. For more information, please contact
Recommended Citation
HyperManual
A Hypermedia Construction and Browsing System
in
Smalltalk/V Mac
by James Tracy Burdick
A thesis, submitted to
The Faculty of the Department of Computer Science
in partial fulfillment of the requirements for the degree of
Master of Science in Computer Science
Approved by:
Robert T. Gayvert
John. A. Biles
I, James Tracy Burdick
The
process oflocating
neededinformation
in
a paperdocument
is
oftenfrustrating
andtime
consuming.The
information may
be
availablebut,
sincethe
basic
access methodis
oftenlinear,
the
information
is
notreadily
available.Hypermedia
systems offer a computer-basedmechanismthat
cansimplify
the
search process andincrease
the
ratio ofusefulinformation found
to time
expended.Such
systems also supportthe
creation of alternate views on
the
samedata base
ofinformation.
This
thesis
describes
some currenthypertext
systems andthe
overall structure ofthe
HyperManual
system.This
systemincludes
both
the
toolsneeded
to
create andtraverse
a web oflinks
within adatabase
ofdocuments,
and an environmentthat
supportsthese
link
construction andinformation
browsing
activities.The
systemdiffers
from
otherhypermedia
systemsin
that
it
provides avariety
of modes of accessto
the
documents
in
ahyperdocument.
The HyperManual
system was writtenin
Smalltalk/V for
the
Macintosh* .
Key
Words
andPhrases
Hypertext
HyperMedia
Graphical
User
Interfaces
Smalltalk
Computing
Review Subject Codes
H.5.
1
:Multimedia Information
Systems
H.5.2:
User Interfaces
1.7.2:
Document
preparationI.
Introduction
1
Overview
ofThesis
1
II.
Background
2
History
ofHypertext
2
Current Systems
3
IH.
HyperManual Implementation
13
Design
Issues
13
Structural Issues
13
Interface Issues
13
HyperManual
System Description
14
Hyperdocument Structure
14
Browsing
Mode
14
Linking
Mode
15
Uniform User
Interface
15
Minimization
ofSystem
Complexity
15
Annotations
17
Class
Hierarchy
17
Dispatchers
17
Panes
18
Models
18
Chronology
23
IV.
Results
26
Integration
26
Modifiabihty
26
Criticism
ofFinal Product
26
Product
Overview
27
V.
Conclusions
29
The
Hypertext
Concept
29
The HyperManual System
29
Future
Extensions
30
Bibliography
33
Appendix A. User
Manual
35
Appendix
B.
Class
Hierarchy
67
Figures
Fig.
1
Intermedia: Local
Map
7
Fig. 2
--Table
of
Contents
21
Fig.
3
-Index
22
Fig.
4
-Annotation
Browser
23
Fig. 5
-HyperManual Initialize
37
Fig.
6
-ToolPalette
38
Fig. 7
-Table
of
Contents
39
Fig.
8
-Index
Window
41
Fig.
9
-Annotation Browser
43
Fig.
10
Document
Window
46
Fig.
11
-Destination List Window
47
Fig.
12
-Note
Window
48
Fig.
13
-New Annotation
Window
48
Fig.
14
Annotation Window
49
Fig.
15
-HyperText
Menu
51
Fig.
16
-Icon
Ribbon
51
Fig.
17
-Change
Preferences
Dialog
Box
55
Fig.
18
LinkMenu
56
Fig.
19
--Source
Selection
Overlap Dialog
Box
57
Fig.
20
-Save
Link
Dialog
Box
59
Fig. 21
Link Icon Ribbon
60
Fig.
22
--Info
Dialog
Box
62
Fig.
23
--FileMenu
62
Fig. 24
-Index Menu
64
I.
Introduction
A
fundamental
problem withlarge
technical
manuals andinstructional
books
is
finding
the the
neededinformation quickly
and easily.Paper
documents
may
include
atable
ofcontents,
list
offigures,
and anindex,
but
each ofthese
tends to
be
incomplete
sincethe
space allottedto these
accesstools
is
only
a small portion ofthe
entiredocument.
It
canbe
very
difficult
to
locate
the
desired information
and when
it is
located,
there
rarely is
aneasy
way
to
access relatedinformation.
Following
cross references canbe
atedious
andtime
consuming
task
oflocating
the
correctvolume,
entry,
and(finally)
the
relevant portion ofthe
referenceddocument. Hypermedia
systems offer a computer-based mechanismthat
can reducethe
drudgery
involved in
finding
information.
They
also offer aframework
that
can supportboth
non-sequentialassociationsamong data
and non sequential accessto
data in
additionto
standard sequentialdata
access.This
thesis
describes
the
design
and generalimplementation
of ahypermedia
system calledHyperManual. The
nameHyperManual
wasderived
from
the
original purpose of
the
project ,which wasto
design
a systemthat
couldbe
usedto
create andbrowse hypermedia
versions oftechnical
manuals.The
systemincludes
both
the tools
neededto
create andtraverse
a web oflinks
within adatabase
ofdocuments
and an environmentthat
supportsthese
link
construction andinformation
browsing
activities.The
HyperManual
system was writtenin
Smalltalk/V for
the
Macintosh.*Overview
ofThesis
The
introduction,
sectionI,
describes
the
general problem offinding
information in
complexdocuments
and gives abrief
description
of a partial solution.The
background,
sectionU,
sketchesthe
history
ofhypertext
anddiscusses
some current products with a particular emphasis onIntermedia from
Brown
University
andGuide from Owl
International.
Section
UI
describes
the
design
andimplementation
ofthe
HyperManual
system, the
focus
ofthe thesis.
Section IV
gives an overview ofthe
success ofthe
product.Section V describes
some of
the
problems withhypertext
systems and some possible extensionsto the
HyperManual
system.Appendix A is
a user manualfor
the
system and appendixB
is
ahierarchy
of relevant classesin
the
system.Appendix C is
a glossary.II.
Background
History
ofHypertext
Hypertext is
a computer-based environmentthat
provides a single coherentinterface
to
aprimarily
text
database. Hypertext
allowsnon-linear,
user-directed accessto
information.
This is
fundamentally
different
from
the
basically
sequentialmethod ofpresentation of
(and
accessto)
information
that
is
providedby
most media(including
this
paper).In
books,
articles,
movies andtelevision,
the
organization,
depth,
and sequence of presentation ofinformation
is
largely
controlledby
the
developers (authors). Hypertext
provides an alternative:it
allows non-sequential constructionof,
accessto,
andinteraction
withdata.
In
ahypermedia
system,
the
documents
referenced are not restrictedto
purely
textualinformation.
[Conklin
1987]
[Fiderio
1988]
The
original conceptsfor hypertext
weredeveloped
by
Vannevar Bush
in
1945. At
that
time,
he
published adescription
ofadata
storage structure called"memex"
that
was modeled onthe
associativebehavior
ofhuman
memory.Bush
described
memex as"a device in
which anindividual
storeshis
books,
records,
andcommunications,
andwhichis
mechanized sothat
it
may
be
consulted withexceeding
speed andflexibility. It is
an enlargedintimate
supplement
to
his
memory."[Smith
&
Weiss
1988,
p.816]
Bush
envisioned ahighly
interactive,
combinedtext-and-graphics-based
systemthat the
user could addto,
modify,
and restructureaccording
to
his
current needs.He
felt
such asystem,
withfree,
non-hierarchicallinks between data
objects,
would capture some of
the
associativecapacity
ofthe
human
mind,
withoutthe
mind'slimited
capacity for
the
retention ofdetail.
[Augarten
1984,
chs.3 &
5]
[Conklin
1987]
[Fiderio
1988]
[Smith
&
Weiss
1988]
The first
stepstoward
implementation
ofa system such asBush
described did
He
proposed ahighly
interactive
systemin
whichthe
userandthe
computer would
be
"dynamically
changing
componentsin
a symbiosis which[would
have]
the
effect ofamplifying
the
nativeintelligence
ofthe
user."
[Conklin 1987
p.22]
By
1968,
Engelbart had implemented
some ofhis
ideas
in
a systemcalledNLS
(oN
Line System). MLS
wasdesigned
as astorage,
development,
and communicationstool
for group
research.All
the
details
ofthe
development
of a project:memos,
designs,
reports,
alternateexplanations,
criticisms of
ideas,
specifications,
programs,
documentation,
etc.,
couldbe
processed,
and storedin
the
same system.[Conklin
1987]
[Fiderio
1988]
NLS had
typical
hypertext
features:
non-linear accessto the text
in
the
database
and windowsthat
provide a visual contextualframe
or view ofboth
the
structure of
the
database
andthe text
located
in
the
nodes ofthe
database. NLS
also
incorporated
a newinput device developed
by
Engelbart
that
has become
anindispensable
supportfor
graphicalinterfaces:
the
mouse.In later incarnations
ofNLS (now
calledAugment),
Engelbart
introduced
otherfeatures
such as acontext-dependent
help
system and multiple windows.[Conklin
1987]
[Fiderio
1988]
During
the
sameperiod,
Ted
Nelson
introduced
the
concept of an on-lineliterary
environmentthat
would contain allthe
world's greatliterature.
His
system,
calledXanadu,
is
stillin
the
development
stage.Nelson has
concentrated ondesigning
the
"back
end"of
the
system,
how documents
willbe
stored andlinked. Given
the
scope ofthe
intended database
(text,
movies,
audio,
andgraphics)
the
design
andimplementation
ofthe
back
endhas been
a majortask.
Recently,
Nelson
has discussed
using
Guide (described
later)
as a"front
end"
to
his
system.[Conklin
1987]
[Fiderio
1988]
[Harriman
1987]
Current Systems
IBIS
Problem
exploration systems aredesigned
to
facilitate
the
exploration ofcomplex problems.
They
provide a computer-based mediumin
which all aspectsof
the
exploration ofthe
problem andthe
searchfor
the
solutionto the
problemcan
be
supported.A
typical
example of such a systemis IBIS
(Issue-Based
features
ofteleconferencing
systems withthe
database
manipulation andconstruction
facilities
ofhypertext. IBIS defines
a set of nodetypes
and a set oflink
types
to
supportthe
development
ofissues,
positionsregarding issues
(criticisms),
and responsesto
criticisms.The
nodes are ofthree types:
issues,
positions,
and arguments.The
type
of alink,
one ofresponds-to, questions,
supports, objects-to,
specializes, generalizes,
refers-to,
andreplaces,
defines
the
relationship
ofone nodeto
another.[Begeman & Conklin
1988]
[Conklin
1987]
The IBIS
problem exploration systemdiffers significantly from
the
NLS/Augment
andXanadu
hypertext
systemspreviously described.
IBIS
nodes are notdesigned
to
contain oneidea
asNLS/Augment
nodes are.In
contrastto
both
NLS/Augment
andXanadu
nodes,
IBIS
nodes aretyped to
define
content,
andthe
links
aretyped to
define
relationshipsamong
nodes.These features
areintended
to
help
direct
exploration ofthe
problem andsimplify
use ofthe
system.Unfortunately,
the
samefeatures
makethe
link
construction process moredifficult
andtime
consuming.[Begeman
&
Conklin
1988]
[Conklin
1987]
[van
Dam
1988]
KMS
KMS (Knowledge
Management
System)
is
ahypertext
systemthat
concentrates onproviding
anintegrated,
highly
standardized,
userinterface.
Nodes in
the
KMS
system arefixed-sized,
non-scrollableframes
that
may
containtext,
graphics,
and/or pictures.Link
sources are separatedfrom
textual
orgraphical
information
and areindicated
by
the
characterfollowed
by
text that
describes
the
link destination.
A
menu of command optionsis
presented atthe
bottom
of each window.[Akscyn
et al.1988]
Most
operations withinthe system,
including
frame
to
frame
navigation,
andthe
creation, editing,
andlinking
offrames,
are controlledby
a mouse.The
mouse-controlled cursoris
context-sensitive,
sothat
over90%
ofthe
interaction
withthe
systemis
achievedby
a single point-and-click ofthe
mouse.For
Another
feature
ofthe
KMS
systemis very fast
responsetime.
The
time
required
to
access anddisplay
aframe
averagesless
than
0.25
seconds.A fast
responsetime
is
required sinceonly
one ortwo
frames
canoccupy
the
screen at atime.
If
it
took
a significant amount oftime
for
a userto
access a referencedframe,
he
wouldbe less
likely
to
do
so andthe
benefits
ofthe
system wouldbe
lost. [Akscyn
et al.1988]
NoteCards
NoteCards is
aworkstation-based,
generalhypermedia
environment.It
consists of
four basic
parts:notecards,
links, fileboxes,
and abrowser.
[Halasz
1988]
A
notecardis
a windowthat
can containinformation
ofany form: text,
graphics,
and/orpictures.It
is based
onthe
concept of a3x5
card,
but it
may
containany
amount ofinformation.
The
notecards areloosely
typed
by
the
form
ofthe
data
they
contain,
but,
in theory,
the type
of alink
is
unrestricted.[Halasz
1988]
Links
are usedto
connect nodestogether.
A
link is
unidirectional(from
one nodeto
another)
andhas
a user-specifiedlabel
to
indicate
the
relationship
between
the two
nodes.[Halasz
1988]
Fileboxes
are special notecardsthat
are usedto
organize collections of notecards(including
otherfileboxes)
into
useful units.Fileboxes
provide a method ofimposing
ahierarchy
on a collection ofinformation.
[Halasz
1988]
The browser
is
a specialized notecardthat
gives a graphical view ofthe
structure of
the
database. Individual
notecards are represented astitled
boxes
andthe
links
(including
the
link's
direction)
are representedby
arrowsthat
pointfrom
onebox
to
another.One
navigatesthrough the
networkby
using
the
mouseto
pointto
abox
one wishesto
see.Currently
active notecards arehighlighted
in
Intermedia
Intermedia
is
a combinedauthoring
andbrowsing
system with multiplelevels
ofaccess privileges:read,
annotate,
write.The
environmentlooks
the
sameto
allusers,
i.e.,
allthe
menus and menu selectors arethere,
but
the
number ofactive capabilitiesfor
a given user aredetermined
by
that
user's accessprivileges
to
a given web and set ofdocument files. Low
level
usersmay only
have
the
ability
to
read ahyperdocument,
whilehigh level
users canread,
writeand annotate
(the
term
for creating links in
Intermedia)
ahyperdocument.
Users
arefurther differentiated into
those that
may only
addlinks
andthose that
may
both
add anddelete links. [Conklin
1987]
[Meyrowitz
1986]
[Yankelovich
et. al.1988]
In
additionto
link
creation andtraversal
functions,
Intermedia
has five
document
creation applications.InterText
is
abasic word-processing
application withfunctionality
similarto
Apple's
MacWrite. InterDraw is
a2-D
graphics editor muchlike Apple's MacDraw.
InterPix
is
an application usedto
display
bitmapped images.
InterSpect
is
a3-D
viewerthat
allows usersto
rotate andzoom
3-D
models.InterVal
is
a specialized editorfor creating
time
lines.
[Yankelovich
et. al.1988]
To
open ahyperdocument
in
Intermedia,
the
userfirst double
clicks onthe
icon
ofthe
webhe
wantsto
view.If
the
userhas
the
proper accesspermission,
the
web will open anempty local
map
window.The local
map graphically keeps
track
ofthe
current position ofthe
userin
the
web.The
current positionin
the
webis indicated
by
the
icon in
the
center ofthe
window.The
lines radiating
from it indicate links from
that
document
to
otherdocuments.
The
icons
onthe
left
and right side ofthe
window representthe
destination
documents.
After
the
local map is
opened, the
user goesback
to the
folder
that
containedthe web,
and opens one ofthe
associateddocuments. When
the
document
opens, the
local
map
will update
itself in
relationto this
document.
[See
Fig.l]
The
openeddocument
/OrVI&rt*rtHto17.JI*7fc|jMilfrrt/p
Fig. 1
Intermedia: Local
Map
User
interaction
with all applicationsin
the
Intermedia
systemis based
on subject/verb(postfix)
interaction
syntax.This
styleis
familiar
to
users of graphical environments such asMicrosoft
Windows
andApple's
Macintosh
operating
system.The
user selects an objectthen
asksthat
some operationbe
performed onthat
object(such
as copy).This
modelis
extendedto the
link
manipulation operationsto
keep
the
interface
consistent.[Meyrowitz
1986]
[Yankelovich
et. al.1988]
In
Intermedia,
alink
sourcemay
be located
anywherein
adocument
andthe
destination
may
be
anywherein
the
samedocument
orin
adifferent document.
Source
anddestination
locations
are calledblocks.
The
size of ablock may vary
from
aninsertion
pointto
a wholedocument. The
existence of a source ordestination block
is indicated in
the
document
by
ablock
icon
S)
inserted into
the
document
nearthe
block.
[Yankelovich
et. al.1988]
Each
link,
in
additionto
information
aboutthe
source anddestination
documents,
has
a set ofdescriptors
that
further
define it. The
creationdate
and user name areautomatically
enteredfor link
documentation.
All links
alsowhere
they
will endup
if
they
follow
alink. The default data for
alink
explaineris
anidentification
numbergeneratedby
the
system.In
afuture
extension,
information
such askeywords
in
the
link's
associatedblock
willbe
addedto
the
link. This
information
would makeit
possiblefor
a userto
searchfor
alllinks
that
had
a certain set ofkeywords. [Yankelovich
et. al.1988]
In
Intermedia,
the
set oflinks (the
web)
for
ahyperdocument is
not stored withinthe
originaldocuments but is
a separatefile.
Thus,
a set ofdocuments
may
be
referencedby
any
number ofdifferent
webs,
where each webdefines
a particular view on a set ofdocuments. [Yankelovich
et. al.1988]
Throughout
the
Intermedia
system,
a common userinterface
is
maintainedto
minimizethe
number of new conceptsthe
user mustlearn
to
usethe
system.The
link
constructionprocessis
uniform across applicable mediatypes.
The
user selectsthe
sourceregion,
choosesthe
Start Link
command,
selects adestination
region,
and choosesthe
appropriatelink
completion command.Likewise,
to
follow
alink in any
type
ofdocument,
the
user clicks on alink icon
O
and selectsthe
Follow
command.Alternately,
the
user candouble
click onthe
icon,
andthe
system willfollow
the
link
automatically.This
simulatesthe
standardMacintosh
mechanism ofopening
an applicationby
double
clicking
onits
icon.
[Meyrowitz
1986]
[Yankelovich
et. al.1988]
More
than
onelink
may
emanatefrom
the
same source.If
a userclicks on alink icon
that
is
a sourcefor
morethan
onelink,
adialog
box
popsup
that
lists
the
alternativedestinations
andtheir
respective explainers.The
user can choose onelink
andfollow
it
or cancel and return(automatically)
to the
sourcedocument. If
the
icon
is instead
a sourcefor only
onelink,
the
link is
automatically followed.
[Yankelovich
et. al.1988]
Guide
Guide
wasthe
first
commercially
availabletrue
hypertext
systemfor
the
PC.
It
combinesbrowsing
andauthoring
capabilitiesin
a single application.While it
provides noimage
creationfacilities,
graphics canbe inserted into any Guideline
(a hypertext document
createdin Guide). Guide
providesfour
types
oflinking
capabilities,
basic
text
editing
capabilities, andthe
ability
to
import
graphics.The
hypertext
functionality
ofGuide is
suppliedby
four link
types:
Expansion,
Note,
Reference,
andCommand.
The
existence andtype
of alink
button in
adocument
is
exhibitedby
the
font
style(in text)
andby
changesin
the
shape of
the
cursor asthe
usermovesit
over alink button (in both images
andtext):
Type
Style
Cursor Shape
Expansion Button
e
Note
Button
*
Reference Button
o
Command
button
"?
These
clueshelp
the
userto
know
what willhappen if he
clicks on abutton.
[Owl
International
1989]
The
expansionbutton behaves in
a manner similarto the
Outline
utility in
Microsoft Word.
When
the
user clicks on an expansionbutton,
the
hidden data is
expanded.
This data
may
then
be
closedby
clicking
onit
andthe
document
will returnto
its former
state.Visually,
whenthe
button
is
pressed,
ablock
oftext
and or graphics
is
addedto the
currentdocument
after(or replacing)
the
button.
This
can cause somedisorientation if
the
expansiontakes
up
morethan
a smallpart of
the
current window asit is
not always clearhow
the
new state ofthe
document
relatesto the
statebefore
the
expansion.[Baum
1990]
The Note button
is
usedto
addbrief
textual
or graphical explanationsto
aGuideline.
If
the
userpresses andholds
down
the
mousebutton
over a notebutton,
apop-up
window appears and remains open aslong
asthe
mousebutton is
held down. This
presents a problemif
the
user wantsto
make a note aboutthe
contents of a
Note
window sincehe
musthold
down
the
mousebutton
to
continueviewing
the
note.[Owl International
1989]
Reference buttons
are usedto
link
oneGuideline
to
another orto
link
withina
Guideline. A
referencebutton
is
usedinstead
ofan expansionbutton
whenthe
links
to
the
sameinformation).
When
the
userfollows
a reference within a givenGuideline,
the
Guideline
scrollsto
the
appropriate spotand expands expansionbuttons (if
necessary)
to
showthe
destination
information.
If
the
destination
is
in
another
Guideline,
that
Guideline
is
opened within a newwindow,
andthat
window
is
scrolled and expanded asnecessary
to
bring
the
referencedinformation into
view.[Baum
1990]
[Owl International
1989]
Command buttons
are usedto
open other applicationsfrom
within aGuideline.
They
may
alsobe
usedto
controlany device
connectedto
the
serialport.
The Guide
systemincludes
a simpleinterpreter
to
read command scriptsreferenced
by
commandbuttons. [Owl International
1989]
[Harriman
1987]
In
additionto the
browsing
capabilities providedby
the
variousbuttons,
Guide
providestwo
aidsthat
help
the
userretracehis
path within adocument.
The
Top
Level button
onthe
Display
menu returnsthe
userto the
starting
state of
the
document he currently is in.
It
does
notnecessarily
returnthe
usertothe
starting
state ofthe
Guideline
that
he originally
startedbrowsing.
Each
window also
has
aBackup
button
that to
somedegree
makesit
possiblefor
the
user
to
retracehis
path, step-by-step,
through
adocument.
[Owl International
1989]
Creation
of expansionsis
arelatively
straight-forwardtask.
The
userfirst
selects
the
text
or graphical objectthat
is
to
be
the source, then
choosesButton
from
the
Make
menu.This
createsthe
expansionbutton
itself,
andif
the
sourceobject
is text,
that text
willbe bolded. Next
the
user creates(or
imports)
the
desired
expansionin(to)
the
Guideline,
and selectReplacement from
the
Make
menu.
This
completesthe
expansion creation process.[Baum
1990]
[Owl
International
1989]
Note, Reference,
andCommand
buttons
aredesigned
to
be
createdin
amanner
different
from
expansionbuttons.
First
the
user createsthe
destination
object and
link,
then
he
createsthe
sourcebutton
andlink it
to the
previously
created
destination
object.For
example,
if
the
userwishesto
create a referencebutton
to
link
to
animage,
first
he
creates a newGuideline
document
andpastethe
desired image into
the
document. Next
the
userselectsthe
image
and choosesReference Point from
the
Make
menu.This
createsthe
destination.
To
createfrom
the
Make
menu.If
the
user wantsto
create another referenceto the
samedestination,
the
processis
different. First
the
user selectsthe
source ofthe
reference and choose
Reference
from
the
Make
menu.Then
the
user selectsStart
Link from
the
Make
menuto
indicate
that
this
is
the
start of alink
that
asyet
has
nodestination defined.
Next
the
userselectsthe
destination
object and
chooses
Link
Reference
from
the
Make
menu.[Owl International
1989]
The
Guide
hypertext
systemhas
anumber oflimitations
and ambiguities.1)
The
linking
information
is built into
adocument,
not superimposed onit.
This
meansthat
adocument
that
has
sourcebuttons in it
canonly be
partofone web.
If it is
used as a part oftwo
webs,
those two
webs willbecome
tangled
into
a single web.2)
A
given object canbe
the
source ofonly
onelink.
3)
A
graphical object canbe
the
source ofonly
oneout-going link.
This
means
that the
user can'teasily
add notesto
describe
each part of animage.
4)
There is
no explicitway
to
remove alink.
All
the
user cando is
delete
the
source ofthe
link.
Unfortunately,
this
changemay
notbe
conveyedto the
destination
ofthe
Reference, Note,
andCommand links.
They
stillact
(as indicated
by
the
active menuselectors)
asif
they
arethe
destination
of alink
andthis
can makethe
link
creation processconfusing.
This
situationis
the
result ofhaving
link information
storedin
the
document itself.
5)
It is
not possibleto
import formatted
text
into
aGuide document
andmaintain
the
formatting. Guide only
allowsits
owninternal forms
offormatting.
[Owl
International
1989]
[Harriman
1987]
HyperCard, Toolbook,
Plus,
etc.There is
a class of applications(HyperCard, Toolbook, Plus,
etc.,)
in
whichit is
possibleto
create simplehyperdocuments.
These
programs arenot,
however,
designed specifically for
the
creation ofhyperdocuments.
They
provide
only
a minimal set ofhypertext
tools
i.e.,
the
ability
to
place abutton
ona
"card"
and
to
link from
that
button
to
another"card".
To
create ahypertext
systemin
one ofthese applications, the
userwould needto
writehis
own supportBecause
ofthe
programming
requirement andthe
lack
ofhypertext
supporttools,
these
applications arenottrue
hypertext
systems.Summary
All
the
hypertext
systemsdiscussed
withthe
exception ofIntermedia
embedthe
link
structure withinthe
base documents. This
ties
alinked
document
to
a particular web.KMS limits its
flexibility by
allowing only
onefixed
size,
non-scrollable window onthe
screen at atime.
This
forces
alllinked documents
to
be
small.NoteCard
suffersbecause
ofits
tree
structured navigation system.Even
thoughindividual
notecards areIII.
HvnerMannal Imnlementfltinn
Design Issues
There
are a numberofissues
that
mustbe
addressedin
the
design
of ahypertext
system.These issues fall into
two
categories: structural andinterface.
Structural Issues
A
fundamental
issue in
the
design
of ahypertext
systemis
the
relationship
ofthe
links
to the
documents.
The
most common approachis
to
embedthe
links
within
the
structure ofthe
linked document. This
approach attaches adocument
to
a particular web.It
also altersthe
originaldocument
since,
link
source mustbe
shownby
changing
the
formatting
ofthe
text,
orinserting
someform
oflink
indicator into
the
document
such as abutton
or anicon.
The
alternativeis
to
superimposethe
links
onthe
linked documents.
Independent links
makeit
possiblefor
there to
be
multiple views(link
webs)
onthe
samedocument.
They
alsoleave
the
base document
unaltered sothe
fact
that
the
document is
part of ahyperdocument is
only
incidental.
A
second structuralissue is
the
allinclusiveness
ofthe
hyperdocument
construction environment.
At
one extreme are systems(like
Intermedia)
that
provide complete
document
creation supportin
additionto
hypertext facilities.
The HyperManual
system(described
later)
takes
a morelimited
approach.The
HyperManual
system concentrates onproviding
the tools
requiredfor
the
use andconstruction ofa
hyperdocument. The
base documents
are createdin
standardapplications such as
MS
Word
andSuperPaint
andimported
asRTF
andPICT
documents.
Interface Issues
Among
the
interface issues
to
be
addressedin
the
design
of ahypertext
system are:1)
the
mannerin
whichlinks
areto
be
made evidentto the
user,
The
approachestaken
on each ofthese
issues
has
a profound affect onthe
useracceptance and usefulness of
the
resultanthypertext
system.HyperManual System Description
HyperManual
is
atwo
modehypermedia
environment
that
combineshyperdocument
browsing
andlinking
capabilitiesin
a singleintegrated
system.The
systemis
ahyperdocument
browsing
and creation environment.(Intermedia
and
to
alesser
extentGuide
aredocument
creation environmentsin
additionto
being
hyperdocument
browsing
andlinking
environments.)
Documents
usedby
the
system are createdin
standard applications such asMicrosoft Word
orSuperPaint. HyperManual
currently imports
text
in Rich Text Format
(RTF)
andimages in PICT
format.
Hyperdocument Structure
As in
Intermedia,
the
web oflinks for
ahyperdocument
is
separatefrom
the
documents
themselves.
The
system superimposesthe
web onthe
documents
to
create
the
hyperdocument.
This
makesit
possiblefor
multiple views ofthe
samedocument
to
exist withoutgiving
riseto the
problem of separatehyperdocuments
becoming
joined
atthe
document
level
(as
canhappen in
Guide).
Browsing
Mode
The
browsing
mode ofHyperManual is
usedfor viewing
the
contents of ahyperdocument.
In
browsing
mode, the
two
initial
methods ofaccess arethrough
the
Table
ofContents
andthe
Index
windows.The Table
ofContents
simulates astandard
table
of contents and givesthe
user accessto
images
andtext
in
the
hyperdocument.
The
Index
expands uponthe
functionality
a standardindex
andgives
the
user anindexed
view ofthe
contents ofthe
hyperdocument. Once
the
user
is
viewing
a particulardocument,
he
has
accessto
relatedinformation
through
links
that
are superimposed onthe
document.
In
the
browsing
mode,
the
user can also add
his
own annotationsto
adocument.
A
third
method ofaccessto
a
hyperdocument (in
browsing
mode)
is
through
the
AnnotationBrowser.
This
browser
provides a user with an overall view ofthe
annotationshe
has
addedto
aLinking
Mode
The
linking
mode ofthe
systemis
usedfor hyperdocument
creation.This
mode
provides
the
user with anintegrated
environmentfor
linking
documents.
To
minimizethe
cognitive
overhead ofthe
linking
process,
the
number of stepsin
the
link
creation process andthe
required userinput
perstep
is kept
to
aminimum.
The basic link
creation processinvolves selecting
the
link
source,
selecting
the
link
destination,
andsaving
the
link.
For
links
to
text,
the
context ofthe
link
destination
must alsobe defined. The
system extractsdefault
valuesfor
the
link
explainers
from
the
selectedtext
in
the
case of atext
link
orthe
document
namein
the
case of alink
to
animage. The
linking
operationsmay
be
performedin
any
order andmay be intermixed
withnon-linking
operations such asopening
afile. The
usermay
not,
however,
save alink
untilhe has
performed allthe
operations
necessary
to
define
the
link.
Uniform User Interface
To
enhance ease ofuse, there
is
an emphasis onthe
uniformity
ofthe
userinterface. To follow
alink in any
document,
the
user clicksin
the
sourceselection area and choose
the
link
he
wantsto
follow.
All
links
to
documents
arecreated
in
the
sameway, the
userselectsthe source,
links
to the
destination,
and savesthe
link. Annotations
are addedto
and revisedin
alldocuments
the
same way.All document
windows canbe
scrolled and resized andmay
containany
size
document
(up
to the
memory
limit
ofthe
machine).Minimization
ofSystem
Complexity
A
number of stepshave been
taken
to
reducethe
overallcomplexity
ofthe
environment.
In browse
mode, the
usercan setthe
maximum number ofdocument
windowshe
wants open at a giventime.
When
a newdocument
window
is
opened,
if
the
maximumhas
been
reached,
the
system will closethe
oldestunmarked windowto
keep
the total
number of open windowsfrom
exceeding
the
maximum preferred.The
user can protect a windowfrom
being
are
automatically
stacked whenthey
open.This helps
the
user maintain a visualordering
ofhis
progressthrough
ahyperdocument.
Link
sourcesin images
andtext
are shownby highlighting
the
selection area ofthe
link
source.The
intrusiveness
oflink
sourcesis diminished
by
giving
the
user control over whetherthey
are showing.The
user caninquire
aboutthe
information
available atthe
destination
of alink
withoutcommitting
herself
to
following
the
link.
Clicking
on alink
sourcebrings
up
apop-up
menuthat
contains a
list
ofthe
link
destinations
associated withthat
link
source.Each
entry
in
the
list defines
the
type
ofthe
destination:
Text, Image,
orNote.
Following
the
type
of eachlink entry is
a short explainer givesthe
user someidea
of whatinformation is located
atthe
destination
ofthe
link. [See Fig.
1
1]
In
Link
mode,
the
complexity
ofthe
linking
processis mostly
hidden
from
the
user.Although
there
arecurrently
six addresstypes
andtwelve
addresscombinations,
link
type
managementis
the
concern ofthe system,
notthe
user.The
system's contextuallink
addresstyping
only
becomes
apparentto the
userin
the
pop-up destination
link
window andthe
Index. In both
windows, the
link
type
is
usedto
givethe
userinformation
aboutthe
destination document.
An
unusualfeature
ofthe
linking
processis
the
ability
to
define
the
context ofthe
information in
the
destination
of atext
link.
When
alink is followed
to
atextual
document,
only
the
portion ofthe text
selectedby
the
link
creatoris
initially
shownin
thedocument
pane.This
helps
the
link
creatorto
minimizethe
amount of extraneousinformation
presentedto
abrowsing
user.If
the
user wantsto
browse
the text
surrounding
the
defined
context,
he
canPageUp
orPageDown
to
seenearby
text.
The
system givesthe
link
editorthe
ability explicitly
to
removeany
link
in
ahyperdocument (unlike Guide). Another feature is
the
ability
to
changequickly
into (and back
from)
a pseudobrowsing
mode whilein
the
link
mode.This
makesit
possiblefor
the
link
creatorto test the
links
he has
createdexactly
asAnnotations
Two
innovations
in
the
system are annotations andthe
Annotation Browser.
Annotations
are amechanismthat
allow a userin
the
browse
modeto
addhis
ownnotes
to
adocument.
The
Annotation
Browser
makesit
possiblefor
the
sameuser
to
view allthe
annotationshe
createdin
ahyperdocument
in
the
context ofthe
placein
the
document
each annotation wasinserted.
The
user can alsoboth
add new annotations
to,
and removeexisting
annotationsfrom,
ahyperdocument.
Using
annotations
in
combination withthe
Annotation
Browser,
abrowsing
usercan create
his
own personalview on ahyperdocument.
Class
Hierarchy
The
following
is
adescription
ofthe
classesin
the
HyperManual
system andthe
functionality
providedby
instances
of each class.(See
Appendix A for
adetailed description
ofhow
to
use each element ofthe
system andAppendix B for
the
classhierarchy
for
the
HyperManual
system.)
The
classes aredivided into
three
categoriesby
function:
Dispatchers, Models,
andPanes. This
partitionis
the
result ofthe
Model, Pane,
Dispatcher
(MPD)
interaction
that
is
the
basis
ofwindow
interaction in
the
current version ofSmalltalk/V Mac. (Smalltalk/V
PM
and
Smalltalk/V Windows
use a simplerApplication
-Pane
model wherethe
functions
ofthe
Model
andDispatcher
are combinedinto
the
Application.)
In
the
MPD
model,
aPane
provides a view ofthe
information in
aModel,
aDispatcher
handles
the
input
to
aModel,
and aModel
determines
whatthe
effects of changesto the
data in
the
model mean.[LaLonde
1989]
[LaLonde
1991]
The
Model
category is further divided into
Window,
Pane
Support,
andHyperMedia
models.Window
models areclosely
tied
to
particular windows(and,
in
the
case ofHyperlmage
andHyperText,
panes and windows).Pane
Support
models providefunctionality
to the
Panes
whileHyperMedia
modelsdefine
the
functionality
ofthe
hypermedia
systemitself.
Dispatchers
The dispatcher
classesin
the
system redefine afew
ofthe
input processing
associated panes.
This mostly involves responding appropriately
to
inquiries
asto
whetherthe
contents ofthe
associated panehave been
modifiedandmaking
surethe
contents ofthe
pane scroll properly.Panes
HyperTopPane
One
ofthe
features
ofthe
systemis
that
it
can controlthe
number ofwindows open at a
time
by
automatically closing
the
oldest window.The
user cankeep
a windowfrom
being
automatically
closedby
the
systemby locking
that
window.The ability
to
lock (and
unlock)
a windowis
providedby
the
HyperTopPane
class.ImagePane
andImageLinkPane
The ImagePane
andImageLinkPane
addto the
GraphPane
classthe
ability
to
highlight
a selected area ofthe
pane.The
ImagePane
is
usedby
the
systemto
showimages in
the
browsing
mode.The
ImageLinkPane
addsto
ImagePane
the
ability
to
showthe
linking
process.HyperTextPane
andHyperLinkPane
The HyperTextPane is
usedto
showformatted
text
whenthe
systemis in
browsing
mode.The
HyperLinkPane
is
usedto
showthe
linking
processin
formatted
text.
The
ImagePane,
ImageLinkPane,
HyperTextPane
andHyperLinkPane
all provide supportfor
the
ability
to
show multiple selected areasin
a single pane.Models
Pane Support Models
The Pane Support Models
provide specializedfunctionality
for
the
image
anddisplay
them
asto
differentiate
them
visually from
standardlink
sources whichare
simply
highlighted
regionsin
adocument.
The
MultiSelections
classes are
used
to
display
multiple selectionsin
a single pane.HyperMedia Models
The
HyperMedia
models providethe
hypermedia
functionality
in
the
system.Each
modeldefines
orcontrols some aspect ofthe
web of ahyperdocument.
The Address
classesdefine
the
characteristics ofthe
source,
destination,
and context ofthe
link. An
address containsthe
name ofthe
file
referenced,
the
selection
rectangle,
andfor
the
source anddestination,
an explainer.The
abstractsuperclass
HyperAddress
containsthe
methodsthat
accessthis
data.
The primary
function
ofthe
HyperAddress
subclassesis
to
distinguish
the type
of an addresswhich
in
turn
determines how
the
information
containedin
an addressis
used.The
Link
classdefines
the
structure ofthe
links
usedto
'glue' ahyperdocument
together.
Each link
containsthe
address ofthe source,
destination,
and context(for text)
ofthe
link.
The
Path
andWindowStruct
classes providethe
data
structures andassociated operations
necessary for
the
retracefacility
in
the
system.The
retracefacility
makesit
possiblefor
the
userto
retracethe
sequence oflinks he followed
to
getto
his
currentlocation.
Each
instance
of aWindowStruct holds
the
information necessary
to
return a windowto
a given state(including
reopening
the
windowif
necessary).A
Path
holds
the
sequence ofsteps,
in
the
form
of alist
ofWindowStructs,
that
a usertakes
ashe follows
links
from
windowto
window.
The primary
task
ofthe
Manual
classis
managing
the
linkTable. (The
name ofthe
classis
a result ofthe
initial
purpose ofthe
system which wasto
create ahypertext
version of a technicalmanual.)
The linkTable is
adictionary
oflink
dictionaries
and collectionsindexed
by
file
name.The linkTable is
the
gluethat
binds
together
a set ofdocuments
into
ahyperdocument. When
alink
is
created,
the
manual makes surethe
link information
is
validbefore
it
savesthe
link
in
the
addition,
the
manualhandles
certain system supportfunctions
such asthe
retracefacility,
automatic windowclosing,
and preferencesetting
operations.Window
Model
Classes
Window
model classesimplement
the
actualviews onthe
system.The
simplest
class,
HyperFormViewer,
supportsthe
Hyperlmage
classby defining
the
parametersnecessary
to
open a windowthat
contains animage
pane.There
are eightwindow modelsin
the
system:Annotation, ManuallntroPane,
Hyperlmage,
HyperText,
TableOf
Contents,
Index,
andAnnotationBrowser.
Class Annotation
implements
the two
forms
of annotation window:the
annotation creation window and
the
annotation revision and removal window.This
class also creates a newlink
(if necessary)
and savesthe
new or revisedinformation in
the
link
and asksthe
manualto
savethe
link.
Class ManuallntroPane implements
the
first layer
ofinteraction
withthe
system.
It
creates atool
palettethat
contains subtitledicons
that
allowthe
userto
activate
the
variousbrowsing
andlinking
facilities
the
HyperManual
system provides.The Hyperlmage
andHyperText
classesimplement
the
primary interface
between
the
userandthe
actualinformation in
the
system.Class Hyperlmage
controls
the
link
creation processfor
images,
the
properprocessing
of mouseclicks
in
the
dependent
pane,
andthe
highlighting
ofthe
selectionsin
animage.
The HyperText
class controlsthe
same operationsfor
text.
The TableOf
Contents, Index,
andAnnotationBrowser
classesfurnish
the
system with various access methods
to the
information
data base
of ahyperdocument. The
TableOfContents
class mimicsthe
functionality
ofthe table
of contents
in
abook. It
provides accessto the
images,
figures,
andtext
in
ahyperdocument. The
TableOfContents
class also controlsthe
link
creationprocess
for
the
links
that
emanatefrom
the table
of contents.The
TableOfContents
window containstwo
panes: aListPane
that
contains alist
ofthe
directly
accessible portions ofthe
hyperdocuments,
and abutton
panethat
containsthe
OpenSelection
button
which causes a selected section ofthe
Open
Selection
Button
IDI
Table Of
Contents
Initial
izing
the
System
Start
Up
Tool
Palette
Browse
Node...
Link tlode
General
Informat ion
To
openthe
systemin Link
modeLink flenu...
e
Menu...
O
Open Selection
ListPane
ButtonPane
Fig. 2
-Table
of
Contents
Class
Index
implements
a window onthe
contents of ahyperdocument
that
expands upon
the
functionality
of anindex in
abook. The index
windowis
composed of
four
panes.The
first
pane(the
entriesPane)
is
aListPane
that
contains entries
for
eachindexed
elementin
the
hyperdocument.
Each entry may
have
any
number of subentries(and
eachsubentry may
have
subentries).The
second pane
(the
referencesPane)
is
also aListPane
and contains the references associated withthe
selectedentry in
the
entriesPane.The
third
pane(the
icon
ribbon)
is
anIconButtonPane
that
containsicons for
quick accessto
various operations relevantto the
index.
The fourth
pane(the
document
pane)
containsmenu3
HyperText
llenu
Link
Menu
D I PT
*
#
-??
Link Menu
The Link
menu providesthe
lin^rRgfunctionality
of t^UgkJox>A^.a-h*coptions
for creating
nevlinks,
shoving
vfei^links are in>links,
andremoving links.
To Liiik From
adocument
Pane
In
a vindovthat
contains adocument
pane(a documS
--Icon Ribbon Pane
Entries Pane
Document Pane
Fig. 3
--Index
(in Link
Mode)
The AnnotationBrowser
class provides a view onthe
contents ofthe
hyperdocument
that
simulatesthe
action ofputting
Postlt
notesin
abook.
The
AnnotationBrowser has
seven panes.The first
pane contains anentry
for
eachdocument in
the
hyperdocument. The
second pane contains abutton
that
allowsthe
userto
openthe
document
selectedin
pane one.The
third
pane contains alist
of
the
annotations addedto the
document
selectedin
pane one.The fourth
pane containsthe text
ofthe
annotation selectedin
panethree.
The fifth
pane containsbuttons for saving
orremoving
the
selected annotation.The
sixth pane(an
iconRibbon)
containsthe
icons for
functions
relevantto
pane six.The
seventhpane contains
the text
orimage
that
'contains'the
annotation selectedin
panethree.
In
the
AnnotationBrowser
window, the
usercan viewexisting
annotationsin
ahyperdocument. The
user can also usethe
AnnotationBrowser
windowfor
adding
new annotationsto the
hyperdocument
andremoving
existing
annotations|
The
Link
menu prouide3the
I inkTn
It
has
optionsfor
creating
newlinks,
showing"*^document,
following
links,
andremoving
lllks.
5E
Saue
e
?
!:!:!:!!!!!??!;>::;.;.!.;.
References Pane
*
Document List Pane
Button Pane 1
Annotation Pane
Button Pane 2
Icon Ribbon Pane
Link Menu
O
The Link
menu providesthe
linking functionality
ofthe
Link
mode. optionsfor creating
nevlinks,
shoving
vherelinks
arein
adocument,
foil
links,
andremoving links.
Fig.
4
Annotation Browser
Chronology
The
originalideas for
the
design
ofthe
HyperManual
systemwere,
in
part,
acombination of
the
design
ideas in
KMS, Intermedia,
andthe
generallayout
of atext
book. Like
KMS,
the
system wouldhave
alist
oflink
sourcesfor
each'page'
of
the
document. The
system wouldhave
someform
ofdocument
similarto
Intermedia's local map
to
givethe
user a visual clue about wherehe is
in
the
system.The
system would alsoinclude
the
standard quick access methods of atext
book, i.e.,
atable
of contents and anindex.
One
ofthe
design
considerations wasthat the
systemhad
to
be
ableto
workwith
pre-existing documents
that
had
notbeen
writtenashypertext documents.
It
was
important
that the
amount of worknecessary
to
convert adocument
to
ahyperdocument be
minimized.As
aresult,
we abandonedthe
simplicity
ofthe
document
asin
Intermedia.
The
approach ofGuide
wherethe
links
areembedded
in
the text
wastoo
limiting
and wouldhave
madethe
document
creation process more
time
consuming.
We
also abandonedthe
concept of adocument map
since,
as soonthere
were morethan
afew links
exiting
adocument,
amap
ofthe
links became
hopelessly
cluttered.An early
question was'How
shouldthe
location
oflink
sourcesbe
shownin
adocument?'
The first idea
wasto
changethe
formatting
ofthe
document
asGuide
does
to
indicate
link
sources.There
are anumber ofproblems withthis
approach.
First,
wehad decided
to
maintain as much ofthe
documents
originalformatting
as possible.In
alllikelihood,
specialformatting
for link
sourceswould get confused with
the
pre-existing
formatting
ofthe text.
Second,
it
would require modification ofthe
originaldocument. This
wouldtie
adocument
to
a particular web oflinks.
Third,
specialformatting
oflink
sources would alterthe
visual
flow
ofthe
originaldocument;
it
wouldbe like
trying
to
read abook
that
someone else
has highlighted.
Fourth,
sincelinks
in
images
wouldneedto
be
depicted in
adifferent
manner,
it
wouldintroduce
anunnecessary
inconsistency
into
the