|
Claims  |
|
|
What is claimed is:
1. A method for displaying information from a variety of different sources on a computer network, the method comprising:
generating a graphical structure which includes a first link to a first item originating from a first information source and a second link to a second item originating from a second information source, the first and second links being displayed
in a hierarchical relationship to each other, the information in the first information source being accessible according to a first protocol and the second information source being accessible according to a second different protocol; and
displaying the hierarchical relationship of the first and second items so that a user may access a particular item using the access protocol associated with that particular item.
2. The method of claim 1, wherein said first network access protocol comprises a post office protocol (POP), said first item comprises an electronic mail message, said second network access protocol comprises a usenet newsgroup protocol and said
second item comprises a newsgroup posting.
3. The method of claim 1, further comprising receiving data from the first and second information sources using one or more filters that convert the data from the one or more network access protocols into a navigation format.
4. The method of claim 1, further comprising displaying the first item on the display device.
5. The method of claim 1, further comprising parsing from the first item one or more child links to one or more referenced items, each of which is accessible according to a corresponding network access protocol.
6. The method of claim 5, further comprising adding representations of the child links to the hierarchical graphical structure.
7. The method of claim 1 wherein displaying the hierarchical graphical structure comprising displaying in a display device, for each of the first and second links, a respective corresponding one of two or more icons, and displaying in the
display device connections between the one or more icons, the connections representing hierarchical interrelationships between the corresponding items.
8. The method of claim 1 wherein generating the graphical structure includes generating one or more children of the first link.
9. The method of claim 8 wherein generating the graphical structure includes generating one or more children of the second link.
10. The method of claim 9 wherein generating the graphical structure includes generating graphical representation of child, parent, and peer relationships between the first and second links and the children of the first and second links.
11. The method of claim 1 further comprising storing the hierarchical graphical structure in persistent storage.
12. An apparatus for displaying information from a variety of different sources on a computer network, the apparatus comprising:
means for generating a graphical structure which includes a first link to a first item originating from a first information source and a second link to a second item originating from a second information source, the first and second links being
displayed in a hierarchical relationship to each other, the information in the first information source being accessible according to a first protocol and the second information source being accessible according to a second different protocol; and
means for displaying the hierarchical relationship of the first and second items so that a user may access a particular item using the access protocol associated with that particular item.
13. The apparatus of claim 12, wherein said first network access protocol comprises a post office protocol (POP), said first item comprises an electronic mail message, said second network access protocol comprises a usenet newsgroup protocol and
said second item comprises a newsgroup posting.
14. The apparatus of claim 12 further comprising one or more filters that receive data from the first and second information sources and convert the data from the one or more network access protocols into a navigation format.
15. The apparatus of claim 12 further comprising means for determining additional links to additional items that are accessible by corresponding network access protocols that are discovered as the user browses resources on the computer network,
means for generating additional representations for those additional discovered items and means for storing the additional representations in the graphical structure so that the additional discovered items are displayed.
16. The apparatus of claim 12 further comprising a display that displays the first item.
17. The apparatus of claim 12 further comprising means for parsing, from the first item, one or more child links to one or more referenced items, each of which is accessible according to a corresponding network access protocol.
18. The apparatus of claim 17 further comprising means for adding representations of the child links to the hierarchical graphical structure.
19. The apparatus of claim 12 wherein the hierarchical graphical structure comprising a display device that displays, for each of the first and second links, a respective corresponding one of two or more icons, and that displays connections
between the one or more icons, the connections representing hierarchical interrelationships between the corresponding items.
20. The apparatus of claim 12, wherein the graphical structure includes means for generating one or more children of the first link.
21. The apparatus of claim 20 wherein the graphical structure includes means for generating one or more children of the second link.
22. The apparatus of claim 21 wherein the graphical structure includes means for generating graphical representation of child, parent, and peer relationships between the first and second links and the children of the first and second links.
23. The apparatus of claim 12 further comprising a persistent storage device that stores the hierarchical graphical structure.
24. An apparatus for displaying a plurality of items to a user, the items being accessible using a variety of different network access protocols, the apparatus comprising:
means for generating a representation of a first item which may be accessed using a first network access protocol from a first source;
means for generating a representation of a second item which may be accessed using a second network access protocol from a second source; and
means for generating a hierarchical graphical structure including the first and second items so that a user may access the first and second items from the hierarchical graphical structure.
25. An apparatus for displaying a plurality of items to a user, the items being accessible using a variety of different network access protocols, the apparatus comprising:
one or more filters for receiving data from one or more sources using one or more network access protocols and for converting the data from the one or more network access protocols into a navigation format; and
a navigation graph comprising a hierarchical display of items representing one or more items from the one or more sources which are accessed using one or more different network access protocols and means for displaying an item selected by the
user in the navigation format.
26. A method for displaying information from a variety of different sources stored in a computer network, the method comprising:
generating a graphical structure which includes a news item being accessible using a news information protocol and an electronic mail item being accessible using a electronic mail message protocol; and
displaying the news item and the electronic message item in a single hierarchical structure which permits the user to access the news item and the electronic message item from the same application.
27. An apparatus for displaying and accessing information about items from a variety of different sources stored in a computer network, the apparatus comprising:
means for generating a graphical structure which includes a news item being accessed using a news information protocol and an electronic mail item being accessible using a electronic mail message protocol;
means for displaying the news item and the electronic message item in a single hierarchical structure; and
means for accessing the news item and the electronic message item which permits the user to access the news item and the electronic message item from the same application.
28. The method of claim 1 further comprising determining different links to additional items that are accessible by corresponding network access protocols that are discovered as the user browses resources on the computer network, generating
additional representations for those additional discovered items and storing the additional representations in the graphical structure so that the additional discovered items are displayed. |
|
|
|
|
Claims  |
|
|
Description  |
|
|
FIELD OF THE INVENTION
The present invention relates to computer networks and, in particular, an integrated user-interface for accessing a number of network services, at least some of which are accessed using different network protocols.
BACKGROUND OF THE INVENTION
Use of computer networks for information access is increasing very rapidly and is spreading from use which is generally limited to technical experts to use by intermediate and novice computer users as well. For example, Internet is a vast,
global computer network which is growing in popularity at an amazing rate; the number of users of Internet is growing at approximately 4% per month. Many of the new users of the Internet computer network are relatively new users of computers generally.
Internet is a loosely organized network in which a number of different network access protocols have emerged over a period of years. For example, protocols for electronic mail ("email"), electronic group discussions (e.g., "Usenet news groups"),
file transfers (e.g., "FTP"), file searching (e.g., "Archie" and "Gopher"), and complex, distributed data bases (e.g., WAIS and the World Wide Web) have been independently developed and have become very popular with users of Internet.
A user typically accesses information through a computer network such as Internet using a "client" of one of the network access protocols supported by at least a portion of the computer network. A client is a computer process which accesses
information through a computer network, typically through a server computer process operating within the computer network, according to a specific network protocol. For example, a Usenet client is a computer process which accesses through a computer
network electronic group discussion information according to the NNTP protocol. For each protocol used in Internet, for example, several different clients are available to users, either without cost through Internet itself as publicly available software
or through commercial providers at a cost.
Each client typically accesses information through only a single protocol. For example, a World Wide Web ("WWW") client is typically used to view multimedia hypertext documents while a separate e-mail client is typically used to read email
addressed to a particular user. As a result, a user who accesses information through Internet according to multiple protocols typically does so through multiple respective clients. Thus, a user who wishes to send e-mail to a colleague after having read
something of interest in multimedia hypertext document using a WWW client generally uses a separate e-mail client to send the e-mail. Switching between clients to assimilate information between network protocols is, at best, an inconvenience and,
perhaps more seriously, confusing and unmanageable for novice users. Switching between various clients for various respective network access protocols makes assimilation of information retrieved according such protocols difficult.
Furthermore, each client typically uses a user-interface which differs from those used by other clients and is particularly adapted to the network access protocol by which the client accesses information. As a result, a user which uses several
different clients must master as many different user interfaces. A computer process which uses a user interface that is foreign to the user is often unusable for a novice user.
In addition to the difficulties associated with separate clients for the various network access protocols used in computer networks such as Internet, users often have difficulty navigating large, complex databases such as the World Wide Web
("WWW"). WWW is a database which implements the hypertext transfer protocol ("HTTP") which in turn supports transfer and access of multimedia hypertext documents. Multimedia documents are documents which can contain information from multiple media.
e.g., numerical and textual data, graphical images, sounds in digital form, and motion video images. A hypertext document can contain pointers to, i.e. can reference, other documents which are embedded in the substantive information the hypertext
document and which are associated with a portion of this substantive information, frequently a text portion. A pointer to an item of information is sometimes called a "link" herein. Identification by the user of substantive information associated with
such an embedded link causes retrieval of the document referenced by the link.
Such hypertext documents, which generally conform to a hypertext markup language (HTML--"HTML documents") and which are accessible according to a particular network access protocol such as HTTP, can contain links to any other items, including
HTML documents, which are accessible according to the particular network access protocol. In addition, such HTML documents frequently contain links to themselves and multiple, redundant links to another item. HTML documents can also contain links to
non-HTML items, i.e., items which are accessed according to other, non-HTTP protocols, e.g., FTP.
As a result of the generality of the links of a HTML document, navigation of HTML documents can be somewhat confusing. As described above, an HTML document can contain links to itself and multiple redundant links to other items. In addition,
several HTML documents can form a loop in which a user navigates in circles. For example, a first HTML document about pies can have a link whose text is "apple" and which points to a second HTML document about apples. The second HTML document can have
a link whose text is "pies" and which points to the first HTML document. A user searching for information on apple pies could navigate in circles by selecting the "apple" link in the first HTML document, the "pies" link in the second HTML document, the
"apple" link in the first HTML document, and so on. The user doesn't determine that the navigation path is circular until the user recognizes a previously retrieved HTML document. This illustrative example of a loop is simple and involves only two HTML
documents. Other loops can be quite large and involve many documents. Furthermore, when a user retrieves an HTML document for the second time, the HTML document is retrieved through the computer network a second time, wasting time and network
resources.
Furthermore, to select a link contained within an HTML document, the user must display the substantive information of the HTML document on a display device of a computer. Many HTML documents are far too large to be conveniently and completely
displayed within many commonly used computer display devices. As a result, such large HTML documents are displayed in scrollable windows in which only a portion of the HTML document is displayed on the display device at a time. If a link which a user
desires to follow is embedded in a portion of the HTML document which is currently not displayed in the scrollable window, the user must "scroll" through the HTML document using conventional techniques until the portion in which the desired link is
embedded is displayed. Frequently a user desires information which is only accessible from a document whose location within a computer network is known by traversing a path of multiple links, requiring for each link followed retrieval of a document and
reading and scrolling through the document to find the next link in the path. Retrieval of, reading of, and scrolling through multiple documents to find desired information is tedious, slow, and at times quite annoying to the user.
SUMMARY OF THE INVENTION
In accordance with the present invention, a multi-protocol network client is provided in which a single, integrated user-interface is provided for accessing information according to a number of network access protocols. The retrieved information
is represented in a hierarchical graph which provides an intuitive and convenient navigation tool for both the experienced and the novice user. The user accesses information according to a particular network access protocol by merely selecting a
graphical representation of an item the user wishes to access from the hierarchical graph. Information pertaining to the particular item whose representation is selected by the user is retrieved and used to determine according to which network access
protocol the item is accessed. In the context of the Internet, an item is often referred to as a resource and can include, for example, files and directories.
As an item is retrieved from the network, links contained within the item are parsed from the item and added to the hierarchical graph. In particular, links which are embedded in the substantive information of an item, as is the case with HTML
documents, are parsed from the item and added to the hierarchical graph. The user can thereafter retrieve an item referenced by a link parsed from a previously retrieved item by selecting from the hierarchical graph a representation of the parsed link.
As a result, the user is provided with an intuitive and convenient mechanism for navigating such items without reading through or scrolling through the item to find the portion of the item containing a desired link. The hierarchical graph simultaneously
provides novice users with a user-interface which is easy to understand and use and provides expert users with a mechanism for quickly and efficiently navigating large numbers of potentially large HTML documents, or similar items with embedded links, to
pin-point specific information.
The hierarchical graph representing the retrieved links is simplified by excluding from the hierarchical graph representations of links which reference the item containing the link and which are redundant in view of other links represented in the
hierarchical graph. By simplifying the hierarchical graph, the user is presented with a simplified, yet complete, graphical and hierarchical representation of all retrieved links and can accordingly navigate the retrieved links more quickly and
efficiently.
It is an object of the present invention to provide a particularly convenient user interface for accessing items of information through a computer network.
It is a further object of the present invention to provide a single, integrated user-interface for accessing items through a computer network according to two or more network access protocols.
It is a further object of the present invention to provide a catalog of previously retrieved links which can be conveniently referenced by a user to immediately and directly access items of information referenced by such links.
It is a further object of the present invention to provide a catalog of previously retrieved links in a hierarchical, graphical representation which can be conveniently referenced by a user to immediately and directly access items of information
referenced by such links.
It is a further object of the present invention to provide a persistent catalog of previously retrieved links such that a user can, in a subsequent session, quickly and efficiently retrieve information items retrieved in a previous session.
It is a further object of the present invention to provide a catalog of links embedded in substantive information of an information item.
It is a further object of the present invention to provide a catalog of links which is simplified, yet compete such that a user can access any item referenced by a retrieved link.
It is a further object of the present invention to provide a mechanism for minimizing repeated retrievals of items through a computer network.
It is a further object of the present invention to provide a mechanism for minimizing repeated retrievals of items through a computer network by persistently storing such retrieved items in a local memory.
Other objects of the present invention are apparent in view of the following detailed description.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a diagram of a view window and a navigation window, which includes a navigation graph, displayed in a computer display device in accordance with the present invention.
FIG. 2 is a diagram of the navigation graph of FIG. 1.
FIG. 3 is a block diagram of a computer system in accordance with the present invention.
FIG. 4 is a block diagram of a network client in accordance with the present invention.
FIG. 5 is a logic flow diagram of the retrieval and display of items and the generation and display of a navigation graph in accordance with the present invention.
FIG. 6 is a logic flow diagram of the retrieval of an item through a computer network.
FIG. 7 is a block diagram of a link record in accordance with the present invention.
FIGS. 8A-C are diagrams of navigation graphs according to the present invention.
FIG. 9 is a logic flow diagram of the removal of self links and redundant links in accordance with the present invention.
FIG. 10 is a block diagram of a number of items containing links to one another.
FIGS. 11A-C are diagrams of navigation graphs which represent the inter-relationships of the items of FIG. 10.
DETAILED DESCRIPTION
In accordance with the present invention, a user navigates through information items accessible through a computer network according to any of two or more network access protocols by selecting icons of a hierarchical navigation graph displayed on
a computer display screen. An information item is a set of information treated generally as a single unit in the context of a computer network. An example of an information item is a file stored in the computer network and can be, for example, a data
file containing text, graphics, sounds, motion video or a combination thereof; a directory referencing zero or more other files; or a computer program which includes a number of computer instructions.
FIG. 1 shows a navigation window 102 and a view window 104 in accordance with the present invention. View window 104 is displayed in a display screen of a computer system, which is described below more completely, and contains the substantive
information of an item of information retrieved through a computer network according to one of the two or more network access protocols and presents the substantive information to the user. View window 104 can represent the information to the user in a
conventional manner. As shown in FIG. 1, view window 104 includes scroll bars 108H and 108V which are used by the user to select a portion of the substantive information in view window 104 in a conventional manner. In addition, navigation window 102
similarly includes scroll bars 110H and 110V, which can be used by the user to view selected portions of navigation graph 106 when navigation graph 106 grows to such a size that the entirety of navigation graph 106 no longer fits within navigation window
102. Scroll bars are well known and are used, for example, in windows generated by the Windows operating system available from Microsoft Corporation of Redmond, Wash., and by the operating system used in Macintosh computers available from Apple
Computer, Inc. of Cupertino, Calif.
Navigation window 102 contains a navigation graph 106, which is shown in greater detail in FIG. 2 and which provides a novel, convenient, and intuitive user-interface by which the user can navigate through a number of information items accessible
through a computer network to find specific information contained therein. "Navigation" as used herein generally refers to the process by which a user uses retrieved information to determine which information to next retrieve to find a desired piece of
information.
As shown in FIG. 2, navigation graph 106 includes a number of icons and associated descriptions connected so as to represent inter-relations of a hierarchical structure. In navigation graph 106, icon 202A and associated description 202B
represent a root node of navigation graph 106. As shown in FIG. 2, icon 202A represents a link whose children are represented by icons 204A, 208A, 212A, and 222A. A link references an item of information, which is in turn the subject item of the link.
A child of a first link is a second link contained within the subject item of the first link. Thus, icon 202A represents a link whose subject item contains the links represented by icons 204A, 208A, 212A, and 222A. Inversely, a parent of a first link
is a second link whose subject item contains the first link. In such a case, the first link is a child of the second link. Two links which share the same parent are peers. Links are described in greater detail below.
Icon 202A is shown as a folder to represent a general collection node, i.e., a node whose children can be of any type. Folder icons, e.g., icon 216A, are also used to represent directories of files which are accessible, for example, through a
file transfer protocol such as FTP from computer systems of a computer network. The particular design of icon 202A and the other icons of FIG. 2 is not essential to the present invention, and other shapes and designs of icon can be used to present to
the user the hierarchical inter-relationships between the various links represented in navigation graph 106. In fact, the icons shown in FIG. 2 are omitted from navigation graph 106 in one embodiment, and the user selects a link by selecting one of the
descriptions shown in FIG. 2.
Icon 204A is shown as an open book and has a corresponding description 2040 which is associated with icon 204A in navigation graph 106 and which identifies to the user the subject item of the link represented by icon 204A. A book Icon. e.g.,
icon 204A, is used to represent a document constructed of a hypertext markup language, i.e., an HTML document. The book icon is shown as an open book if children of the link represented by the book icon are shown in navigation graph 106. For example,
icon 206A represents a child of the link represented by icon 204A and is included in navigation graph 106. Therefore, icon 204A is shown as an open book. Conversely, none of the children of the link represented by icon 206A are shown in navigation
graph 106. Accordingly, icon 206A is shown as a a closed book.
Icon 208A is shown as a newspaper and represents a link to a classification of electronic group discussion accessible, for example, according to the Usenet newsgroup protocol. Navigation graph 106 associates with icon 208A a description 208B
which identifies to the user the particular classification which is the subject of the link represented by icon 208A. The children of icon 208A, as represented in navigation graph 106, include representations of links to sub-classifications of
electronic group discussion. An icon which represents a child of icon 208A is shown as a newspaper if the icon represents a link to a sub-classification which has further sub-classifications or as a stack of newspapers if the icon represents a link to a
classification which has no sub-classifications but instead contains links to postings of an electronic group discussion. For example, icon 210A, which represents a child of icon 208A according to navigation graph 106, is shown as a stack of newspapers
to show that icon 210A represents a link to postings of an electronic group discussion. The particular electronic group discussion which is the subject of the link represented by icon 210A is identified by a description 210B, which navigation graph 106
associates with icon 210A.
Icon 212A is shown as a book to represent a link to an item which can have children. Icon 212A represents a link to a root directory within the computer network accessed by a network file transfer protocol, e.g., the FTP file transfer protocol,
and the subject host computer system of the link represented by icon 212A is identified to the user by a description 212B which is associated with icon 212A in navigation graph 106. The children of the link represented by icon 212A are directories of a
file structure on the subject host computer system represented by icon 212A. For example, icon 216A is shown as a open folder to represent link to a directory of files, and the children of the link represented by icon 216A in navigation graph 106,
namely, the links represented by icons 218A and 220A, are to respect items which are the contents of the subject directory of the link represented by icon 216A. Icon 218A is shown as a document and represents a link to a file wit | | |