|
Description  |
|
|
BACKGROUND OF THE INVENTION
This invention relates generally to retrieval of information in an
information handling network. More particularly, it relates to techniques
for recording and presenting one or more sessions of a search session in a
distributed environment such as Web browsing in the Internet. Further, it
relates to techniques for using the user interface of the present
invention for navigating through a distributed data set such as the
Internet.
It is well known to couple a plurality of computer systems into a network
of computer systems. In this way, the collective resources available
within the network may be shared among users, thus allowing each connected
user to enjoy resources which would not be economically feasible to
provide to each user individually. With the growth of the Internet,
sharing of computer resources has been brought to a much wider audience;
it has become a cultural medium in today's society for both information
and entertainment. Government agencies employ Internet sites for a variety
of informational purposes. For many companies, their Internet sites are an
integral part of their business; they are frequently mentioned in the
companies' television, radio and print advertising.
The World Wide Web, or simply "the web", is the Internet's multimedia
information retrieval system. It is the most commonly used method of
transferring data in the Internet environment. Other methods exist such as
the File Transfer Protocol (FTP) and Gopher, but have not achieved the
popularity of the Web. Client machines accomplish transactions to Web
servers using the Hypertext Transfer Protocol (HTTP), which is a known
application protocol providing users access to files, e.g., text,
graphics, images, sound, video, using a standard page description language
known as the Hypertext Markup Language (HTML). HTML provides basic
document formatting and allows the developer to specify "links" to other
servers and files. In the Internet paradigm, a network path to a server is
identified by a Uniform Resource Locator (URL) having a special syntax for
defining a network connection.
Retrieval of information is generally achieved by the use of an
HTML-compatible "browser", e.g., Netscape Navigator, at a client machine.
When the user of the browser specifies a link via a URL, the client issues
a request to a naming service to map a hostname in the URL to a particular
network IP address at which the server is located. The naming service
returns a list of one or more IP addresses that can respond to the
request. Using one of the IP addresses, the browser establishes a
connection to a server. If the server is available, it returns a document
or other object. If the server is not available or overloaded, however,
the user may receive an error message, e.g., "server not responding" or
the like.
After some amount of browsing in the Web, a user can become quite confused
as to where he has been and how to return to a site which he has
previously browsed. The present browser interface does not show a history
of the Web sites visited by a user during a current or past web browsing
session in an easily understood manner. At most, prior art web browsers
have a list of URLs which the user has browsed in the current session in a
chronological order. This is deficient for at least two reasons. The URLs
are often in a very arcane format, particularly for the inexperienced
user. The URLs themselves are poorly understood and not sufficiently
associated in the minds of the users to enable them to use the URLs to
return to a desired page. This is particularly true where the URL was
reached by hyperlink, i.e. the user never typed the URL.
The chronological listing of the URLs does little to show the relationship
between the web pages. Nor does it show the user whether the navigation
between pages was accomplished by a bookmark, typing in the URL or due to
a hyperlink in the previous page. The mode of navigation would be a
helpful clue as to the identity of a page.
This invention provides an improved user interface for presenting and
navigating through a history of web browsing.
SUMMARY OF THE INVENTION
Therefore, it is an object of the invention to present a history of web
browsing in an intelligible and informative manner.
It is another object of the invention to distinguish between different
sessions of web browsing.
It is another object of the invention to differentiate between links
reached in different browser operations.
It is another object of the invention to retrieve web pages from previous
visits.
It is another object of the invention to navigate through a history of web
browsing to retrieve documents from previously visited sites.
These and other objects are accomplished by presenting the history of
browsing in a distributed database, such as the Internet in a global
history window. Each document browsed is represented by a page icon
selected as representative of content in the browsed document. Each link
between browsed pages is represented by a roadway to connect the
respective selected page icons. In the preferred embodiment, the global
history map is presented on an apparently curved surface having a variety
of features which serve to orient the user in the map.
With each new request for retrieval of a new document, the global history
map window is presented wherein the building of a new roadway serves as a
progress indicator for retrieving the new document. A new page icon
indicative of the content of the new document is selected. The new page
icon is presented proximate to a terminus of the new roadway. An end of
road icon at the terminus of the new roadway is presented once the new
document is retrieved.
An indicator of the user's present position in the global history map is
presented, e.g, a searchlight icon. A page icon at the present position in
the global history map is enlarged and represents the document which can
be presently retrieved. The enlarged page icon shows more detail
concerning the document than the page icon in its unenlarged state.
BRIEF DESCRIPTION OF THE DRAWINGS
These objects, features and advantages will be more readily understood with
reference to the attached figures and following description.
FIG. 1 depicts a computer system configured according to the teachings of
the present invention.
FIG. 2 is a flowchart for retrieving a web document in the Internet.
FIG. 3 depicts a web browser equipped with a main window for browsing a web
page and a window for the global history view.
FIGS. 4A-4G depict the global history view window as the user browses the
World Wide Web.
FIG. 5 is a flow diagram of the process for retrieving a new web page
according to the present invention.
FIG. 6 is a detailed flow diagram of the process for retrieving and
presenting the stored links in the global history view window.
FIG. 7 is a flow diagram of the process for using the global history window
to retrieve a web page at a previously viewed Web site.
FIG. 8 depicts the N-way tree used to stored the history information for
previously viewed links.
DETAILED DESCRIPTION OF THE DRAWINGS
The invention may be run on a variety of computers or collection of
computers under a number of different operating systems. The computer
could be, for example, a personal computer, a mini computer, mainframe
computer or a computer running in a distributed network of other
computers. Although the specific choice of computer is limited only by
processor speed and disk storage requirements, computers in the IBM PC
series of computers could be used in the present invention. One operating
system which an IBM personal computer may run is IBM's OS/2 Warp 4.0. In
the alternative, the computer system might be in the IBM RISC System/6000
(TM) line of computers which run on the AIX (TM) operating system.
In FIG. 1, a computer 10, comprising a system unit 11, a keyboard 12, a
mouse 13 and a display 14 are depicted in block diagram form. The system
unit 11 includes a system bus or plurality of system buses 21 to which
various components are coupled and by which communication between the
various components is accomplished. The microprocessor 22 is connected to
the system bus 21 and is supported by read only memory (ROM) 23 and random
access memory (RAM) 24 also connected to system bus 21. A microprocessor
in the IBM PC series of computers is one of the Intel family of
microprocessors including the 386, 486 or Pentium microprocessors.
However, other microprocessors including, but not limited to, Motorola's
family of microprocessors such as the 68000, 68020 or the 68030
microprocessors and various Reduced Instruction Set Computer (RISC)
microprocessors such as the PowerPC chip manufactured by IBM. Other RISC
chips made by Hewlett Packard, Sun, Motorola and others ay be used in the
specific computer.
The ROM 23 contains among other code the Basic Input-Output system (BIOS)
which controls basic hardware operations such as the interaction of the
processor and the disk drives and the keyboard. The RAM 24 is the main
memory into which the operating system and application programs are
loaded. The memory management chip 25 is connected to the system bus 21
and controls direct memory access operations including, passing data
between the RAM 24 and hard disk drive 26 and floppy disk drive 27. The CD
ROM 32 also coupled to the system bus 21 is used to store a large amount
of data, e.g., a multimedia program or presentation.
Also connected to this system bus 21 are various I/O controllers: The
keyboard controller 28, the mouse controller 29, the video controller 30,
and the audio controller 31. As might be expected, the keyboard controller
28 provides the hardware interface for the keyboard 12, the mouse
controller 29 provides the hardware interface for mouse 13, the video
controller 30 is the hardware interface for the display 14, and the audio
controller 31 is the hardware interface for the speakers 15. An I/O
controller 40 such as a Token Ring Adapter enables communication over a
network 46 to other similarly configured data processing systems.
One of the preferred implementations of the invention is as sets of
instructions 48-52 resident in the random access memory 24 of one or more
computer systems configured generally as described above. Until required
by the computer system, the set of instructions may be stored in another
computer readable memory, for example, in the hard disk drive 26, or in a
removable memory such as an optical disk for eventual use in the CD-ROM 32
or in a floppy disk for eventual use in the floppy disk drive 27. Further,
the set of instructions can be stored in the memory of another computer
and transmitted in a computer readable medium over a local area network or
a wide area network such as the Internet when desired by the user. One
skilled in the art would appreciate that the physical storage of the sets
of instructions physically changes the medium upon which it is stored
electrically, magnetically, or chemically so that the medium carries
computer readable information. While it is convenient to describe the
invention in terms of instructions, symbols, characters, or the like, the
reader should remember that all of these and similar terms should be
associated with the appropriate physical elements.
Further, the invention is often described in terms that could be associated
with a human operator. While the operations performed may be in response
to user input, no action by a human operator is desirable in any of the
operations described herein which form part of the present invention; the
operations are machine operations processing electrical signals to
generate other electrical signals.
In the Internet, the Web server accepts a web client request and returns a
response back to the client. A series of server computers may be involved
in the retrieval of a specific web page. The operation of the server
program is governed by a number of server application functions (SAFs),
each of which is configured to execute in a certain step of a sequence.
This sequence, illustrated in FIG. 2, begins with the authorization
translation step 75 during which the web server translates any
authorization information sent by the web client into a user and a group.
If necessary, the step 75 may decode a message to get the actual client
request. At the name translation step 77, the URL associated with the
request may or may not be translated into a system dependent file name, a
redirection URL or a mirror site. In the path checks step 79, the server
performs various tests on the resulting path to ensure that the given
client may retrieve the document.
In step 81, Multipurpose Internet Mail Extension (MIME) type information,
e.g., text/html, image/gif, for the given document is recognized. In the
service step 83, the Web server routine selects an internal server
function to send the retrieved information back to the requesting web
client. This function can run the normal server service routine to return
a file or some other server function, such as a program to return to
return a custom document or a CGI program. At the Add Log step 85,
information about the transaction is recorded.
A URL or "Uniform Resource Locator" is defined in RFC 1945, which is
incorporated herein by reference. As is well known, the URL is typically
of the format: http://somehost/. . . " where "somehost" is the hostname
position of the URL. The usual manner in which a URL is resolved into an
actual IP address for a web server is through the use of a nameserver. In
an internet or intranet network, a nameserver maps hostnames in URLs to
actual network addresses. An example of a nameserver is the Domain Name
Service (DNS) currently implemented in the Internet. The process of having
a Web client request a hostname and address from a nameserver is sometimes
called resolution. In TCP/IP, the nameserver resolves the hostname into a
list of one or more IP addresses which are returned to the Web client on
an HTTP request. Each IP address identifies a server which hosts the
requested content desired by the browser.
In prior art browsers, a certain level of historical information is kept to
aid in navigation in the browser. Typically, this information is used to
retrieve web pages in response to actuation of the "Forward" and "Back"
buttons in the user interface. In at least one prior art browser, the user
can look at a list of URLs for previously viewed web pages arranged in a
chronological order. The deficiencies of this arrangement have already
been discussed.
In the present invention, a much more powerful history mechanism is
provided with the browser. Although modifications to the browser code can
be made, the invention can also be implemented as a browser plug-in or
helper application. To store the amount of information needed for the user
interface of the global history view window, a somewhat more extensive
local cache containing an N-way tree data structure, technically a
directed graph, is used in the preferred embodiment. This data structure
is discussed below in greater detail in association with FIG. 8.
FIG. 3 shows a main window 101 of the browser which is used to present the
web page. The term "web page" should be construed to mean the file
retrieved during the browsing operation. Those familiar with the art are
aware that a web page may in fact contain a plurality of actual pages of
text and graphics. Program files can also be retrieved in a browsing
operation. The global history view window 103 shows the history and
progress of the user's web browsing. In a preferred embodiment, the window
103 is presented as a three dimensional or virtual reality interface. The
relative sizes of the windows 101 and 103 is a design choice in which the
desired level of detail in the global history window 103 may be a
consideration.
In the preferred embodiment, the global history window 103 is invoked in
two situations: the request to retrieve a new web document from a new web
site and an explicit request to activate the window 103. The first
situation can be invoked when the user requests a new page by hyperlink,
typing in a URL or by selecting a bookmark in the bookmark list of the
browser. In such a case, the global history view window 103 will pop-up,
show the progress of retrieving the link and present an icon by which the
web page or content represented by the selected URL will be represented.
After a predetermined period, the global view window 103 will be hidden or
minimized as an icon to allow the full web page to be viewed in the main
window. If deemed distracting, the user can have the option to configure
the global history window 103 to appear only when explicitly requested.
However, this is deemed to be less desirable, since the user will not have
seen the icon by which the web page is represented. This will make
subsequent navigation in the window more difficult.
The user can also explicitly invoke the global history window 103
presentation. This action can be performed by any number of standard
methods known to those skilled in the art of user interfaces: selection of
an icon, pressing a key or set of keys on an input device, selection in a
pulldown menu, activation of a control and so forth. In one preferred
embodiment, if the user has paused on a page for a period of time, e.g.,
five minutes, without any user input indicating that the user might still
be engaged with the page, the global history window is presented.
Explicit invocation of the global history window 103 generally occurs
because the user wishes to use it to navigate to a previously visited web
site. Alternatively, the user may simply wish to gain a better
understanding of the relationship of the current web site to other sites.
In either case, since the global history window 103 is now the prime focus
of the user's attention, it may be presented in a full screen window. This
facilitates the virtual reality experience of the preferred embodiment of
the invention.
In FIG. 4A, a detailed depiction of the global history window is shown. At
this point, the user is on the home page of the browser. Most browsers
allow the user to set one URL as the home page to presented upon
invocation of the browser. The home page is represented by the home icon
151. While this illustration, the home page is represented by a small
cottage with a smoking chimney, the reader should understand that a wide
variety of home icons are possible. Some of these icons may display some
data specific to the home web page such as the URL of the home page.
In the preferred embodiment, the global history window is designed to have
the effect of the user hovering a short distance above the ground of a
slightly curved surface 153 as if in a small flying vehicle. A searchlight
icon 155 indicates the present URL displayed in the main window. Alternate
indicia such as a cross hairs icon can be substituted for the searchlight
icon 155 to indicate the user's position. A control panel of the flying
vehicle can be shown having data readouts which contain information about
the page or progress in retrieving a new page. Self powered flight is
possible; an icon in the shape of a shadow of a winged human could be
displayed proximate to the icon representing the current user position.
The curved surface 153 preferably has features which help indicate the
movement of the global history map as new sites are visited by the user.
In the figure, the features are shown as a forest 157, mountain range 159
and storm 161. Slight texturing or differences in coloration of the curved
surface are also possible. The use of periodic landmark icons such as the
features 157, 159, 161 is helpful to orient the user. Other landmark icons
such as buildings, lakes, canyons, bridges and so forth can be used. Well
known landmarks such as the Empire State Building, Eiffel Tower or Taj
Mahal could be used. Much like how people orient themselves in real life,
the user can recall that the web site in which he interested is near the
red building, for example. It is helpful that the landmark icons are
distinctive from each other.
In the preferred embodiment, the sky and ground in the distance is dark
indicating unexplored territory. The darkness is preferably proportional
in the distance from the home and the present position. Thus, the color or
shading of the sky and the ground can be used to further orient the user.
The global history map changes as the user requests a new web page from a
new URL. In FIG. 4B, the user has requested a web page from WORLD TODAY, a
news service organization. As the web page is retrieved, a road 165 is
built. The progress of the road building indicates the progress of the
browser in retrieving the web page. Suitably entertaining animations (not
shown) and sound clips such as miniature workers and construction
equipment with construction noises can keep the user amused during the
retrieval process. They also provide secondary progress indicators.
Once the web page has been retrieved, an icon 167 representing the web page
is created. This can be accomplished in many ways. A title of the web page
can be used. A prominent image, e.g., a gif, from the page can be sampled
and rendered in miniature form. Usually, the most suitable graphics will
be found near the top of the page. Data from the page such as the URL can
be excerpted. The page itself can be miniaturized to an icon like form. In
one preferred embodiment, a special tag is used in HTML to indicate one or
more images to use as the icon in the global history map. A first detailed
image can be used when the user is located at the icon which represents
the web page; a second image can be used in more distant views of the
icon. In the figure, a small billboard icon 167 is created with a picture
indicative of the web page. The process of creating the icon 167 can also
be animated with miniature workers, sawdust and paint and so forth.
While the figures show miniature billboards as the icons which represent
the web pages, those skilled in the art would appreciate that alternative
representations are possible. Some of the these alternatives include
buildings, murals, photographs, framed works of art, television monitors
and so forth. It is possible that a mixture of icons representing the web
documents is possible. However, if too many types of web icons are used,
there is a risk that they will be difficult to distinguish from the
landmark icons.
An end of the road icon 169 is placed at the road terminus. In the figure,
it is shown as a pile of dirt, although other representations are
possible, such as a road block barrier. Also, the searchlight icon 155 is
moved to the WORLD TODAY billboard icon 167 as the web page is presented
in the main window. In the preferred embodiment, the icon of the current
page is shown larger than other icons, allowing more detail to be
displayed. This is particularly useful in navigation. In the cockpit
embodiment, the data readouts change to present the information of the new
page. With the movement of the user's position to the new web site icon
167, the map and the globe rotate and the relative positions of the
features 157, 159 and 161 change with respect to the user's position in
the window.
In FIG. 4C, the user has selected a financial page from the main WORLD
TODAY web page. In the figure, a new section of road 171 has been built
through the forest 157, perhaps with the aid of miniature lumberjacks,
connecting the WORLD TODAY icon 167 with a newly built icon 173
representing the financial page. The new road section 171 may differ in
appearance from the road section 165 connecting the home page icon to the
WORLD TODAY icon 167. This may indicate the different browser mechanisms
used for retrieving the respective web pages. For example, the WORLD TODAY
web page could be retrieved by means of typing a URL from the home page
versus retrieving the financial web page by means of a hyperlink. As both
actions have occurred in the same session, in the preferred embodiment,
the roads will be presented in the same color. Frequently traversed links
may gradually become wider. For example, the typical road may eventually
become a six lane highway. Links which are rarely traversed may become
cowpaths.
In FIG. 4C, the end of the road icon 169 has been moved to a new position.
The searchlight icon 155 has been moved to the financial page icon 173
since it is now displayed in the main window. The searchlight icon can
move with the road building, indicating the user's progress to the new
site. Also, the features 157, 159 and 161 have moved with the rotation of
the global history map.
FIG. 4D shows the global history window after the user has selected the
"back" button in the browser, bringing the WORLD TODAY main web page back
to the browser main window. In this picture, the searchlight icon 155 has
been moved back to the WORLD TODAY icon 167. The features 157, 159 and 161
have receded somewhat as the surface rotates back. The WORLD TODAY icon
167 is shown larger as it is currently the focus of the user's attention.
Note that the end of the road icon 169 remains positioned at the terminus
of road segment 171 since it represents the farthest browsing in that
direction.
FIG. 4E shows the global history window when the movie web page is invoked
from the WORLD TODAY web page. In this figure, a new road segment 175
complete with a terminating end of road icon 177 is shown connecting a new
billboard icon 179, representing the movie web page, with the main page
icon which is off screen. The searchlight icon 155 is moved to the movie
billboard icon 179 once the movie page is presented in the browser main
window.
In this simple example, the global history map presentation could easily
show a road being built to the side of already existing roads and icons.
However, by showing only the new road segment 175 when the browser
retrieves web pages along a new branch, repositioning of the unseen icons
is easier to accomplish in a seamless manner when the user backtracks to
previously visited sites. In the figure, the features 157 and 159 have
rotated in a counterclockwise direction. The storm 161 is no longer
visible having rotated off screen. A new mountain range 181 has rotated in
view.
FIG. 4F shows the global history map after the user has selected the back
button of the browser from the movie page, returning to the main WORLD
TODAY page from the movie page. Note that the existing road segments and
web site icons have been repositioned somewhat. There is now a fork 183 in
the road, indicating that the user has taken two paths from the WORLD
TODAY web page. The left fork is comprised of road segment 171, road
terminus icon 169 and the financial page icon 173. The right fork is
comprised of road segment 175, road terminus icon 177 and movie page icon
179. Note that the searchlight 155 is on the icon 167 for the main web
page for WORLD TODAY and that the icon 167 is shown larger than the other
web page icons 173 and 179.
In the example above, repositioning of the icons and road segments was not
necessary. The road segment 175 could have been easily built at a right
angle to the existing road. However, as can be seen in FIG. 4G. the global
history map can grow quite complicated. In this figure, the user is
currently viewing the home web page. Consequently, the searchlight icon
155 is on the home page icon 151. In the distance, the user can see the
roadway trees 189 and 190 built for the current session as well as a
roadway tree 191 from a prior session. In the preferred embodiment, the
two trees 189, 190 for the current session are presented in the same
color. The roadway tree 191 in the background is presented in a different
color to aid the user in distinguishing between web sessions.
It should be appreciated that without at least periodic repositioning of
roadways and web icons, it will be difficult to portray the global history
map. The slight curve of the map aids in repositioning and spacing the
icons and roadways. Over time, as more and more web sites are visited from
the same web page, the angle between roads will decrease to accommodate
new web site icons and roadways. The length of the road segments can be
varied to stagger web site icons to allow a more dense packing.
The example given in FIG. 4G is actually a simple map compared to the
growth of the global history view after a protracted web search session or
a series of web sessions. In one preferred embodiment of the invention,
only the icons within a certain number of links, e.g., four, are shown in
any detail. The rest recede in the distance as a colored web of lines or
possibly disappearing over the horizon.
In the preferred embodiment, multiple visits to the same web page along the
same link do not cause a change in color from the old session color to a
new session color, although this would be possible. Nor does the global
history map start a new tree for visits to the same page. New roads could
be built if the user visited the web page along a new link. As mentioned
above, repeated visits to the same web page can cause the existing road to
widen.
Once the global history map is created, the user can revisit web sites
previously visited by navigating to the icon representing a particular
d | | |