Method and system for full text search of purchasable books that make the full text inaccessible to users7010747Abstract A search expression is received. A first plurality of values is determined for a corresponding plurality of purchasable items. Each of the first plurality of values is based on a similarity between the search expression and its corresponding one of the purchasable items. A second plurality of values is determined for a corresponding plurality of pairs of the purchasable items. Each of the second plurality of values is based on a similarity between two purchasable items in a corresponding one of the pairs. A corresponding optimum path between the search expression and each of a subset of the purchasable items is determined based on at least one of the first plurality of similarity values and at least one of the second plurality of similarity values. Claims What is claimed is: Description BACKGROUND OF THE INVENTION
FIG. 7 shows the plurality of display regions defined by the values in TABLE I. The display regions are approximated by rounding the start angle and the end angle to an integral number of degrees, and rounding the outer radius to an integral number of display units. As can be seen, the regions are contiguous. The region representing node 0 is substantially convex, and the regions representing nodes 1 to 7 are concave. More particularly, the region representing node 0 is approximately shaped as a sector of a circle, and the regions representing nodes 1 to 7 are approximately shaped as sectors of circular annuli. Each of the regions has approximately the same area. Each edge in the tree is represented by a radial adjacency of two regions. For example, the tree-defined edge between nodes 1 and 2 is represented by the region representing node 1 being radially adjacent the region representing node 2. As another example, the tree-defined edge between nodes 1 and 5 is represented by the region representing node 1 being radially adjacent the region representing node 5. The tree-defined edge between nodes 2 and 4 is represented by the region representing node 2 being radially adjacent the region representing node 4. In this embodiment, angular adjacency of regions implies that their corresponding nodes are non-adjacent in the tree. For example, since the region representing node 5 is angularly adjacent the regions representing nodes 2 and 4, node 5 is non-adjacent nodes 2 and 4 in the tree. A line segment definable by substantially any point in any region and a point 130 in the region representing node 0 intersects only those regions representing a node in the tree-defined path to or from node 0. For example, a line segment 132 between the point 130 and a point 134 in the region representing node 4 intersects regions representing nodes 4, 2, 1 and 0. It is noted that the points 130 and 134, and the line segment 132 either may or may not be displayed with the regions. A region representing a node has an angular width greater than or equal a sum of angular widths of any combination of regions representing children of the node. For example, the angular width of the region representing node 1 is substantially equal to the sum of the angular widths of the regions representing nodes 2 and 5. As illustrated, the regions may have different radial widths. For example, the radial width of the region representing node 5 is greater than the radial width of the region representing node 2. The regions representing the leaf nodes of the tree, namely the regions representing nodes 6, 5, 4 and 7, are contiguous. Each of these regions is defined by two line segments and two arcs. The line segments are oriented substantially radially with respect to the point 130. The arcs are definable by center points substantially located at the point 130. Each of the regions representing leaf nodes is adjacent at most two other regions representing leaf nodes. In this embodiment, these regions define an approximately circular boundary. Two of the regions representing leaf nodes are adjacent only one other region representing a leaf node. Alternative visible representations can be formed using regions having the same shapes and sizes as the regions in FIG. 7, but having different locations and orientations. In the visible representation of FIG. 7, the regions are ordered to represent nodes 6, 5, 4 and 7 from left to right of the boundary. The aforementioned alternative visible representations may have regions ordered at the boundary to represent any one of the following sequences of nodes: 4-7-5-6, 5-4-7-6, 5-7-4-6, 6-4-7-5, 6-5-7-4, 6-7-4-5, and 7-4-5-6. In each of these alternative visible representations, an edge is represented by a radial adjacency of two regions. It is noted that the scope of this disclosure should not be limited by the example provided in FIG. 7. Clearly, this disclosure provides numerous approaches to visibly representing one or more elements. As such, FIG. 7 can be modified in accordance with any of the teachings herein. For example, the regions representing nodes 1 to 7 may be displayed with alternative concave shapes, the region representing node 0 may be omitted or may be displayed with an alternative substantially convex shape, at least one adjacent pair of regions may be spaced apart slightly, the boundary of the regions may be alternatively shaped, at least one region may be alternatively positioned, and at least one region may have alternative dimensions. It is also noted that the visible representation in FIG. 7 may be used to visibly represent associations between pairs of elements represented by angularly adjacent regions. Here, for example, the visible representation in FIG. 7 may represent a planar graph comprising the tree of FIG. 6 and additional edges between nodes 7 and 4, nodes 3 and 4, nodes 4 and 5, nodes 5 and 6, node 2 and 5, and nodes 1 and 6. Further, it is noted that the visible representation in FIG. 7 may be used to represent elements which are not necessarily related by the tree in FIG. 6. Here, for example, the visible representation in FIG. 7 may represent a graph or a tree wherein each edge is represented by an angular adjacency of two regions. In this case, for example, the angular adjacency of regions may imply that their corresponding nodes are non-adjacent in the graph or tree. Because of the variation in dimensions of the regions, it may not be humanly apparent that the regions have substantially the same area. Optionally, the parameters which define the regions may be selected to make at least some of the relative areas more humanly apparent. In this case, it is preferred that the greatest radial width of any of the regions be about equal to either the greatest arc length or the greatest chord length (i.e. the greatest distance between endpoints of an arc) of any of the regions. In the example of FIG. 7, the region representing node 6 has the greatest displayed radial width, and the region representing node 7 has the greatest displayed arc length and the greatest displayed chord length. Therefore, in this example, the parameters which define the regions may be modified so that the radial width of the region representing node 6 is about equal to either the arc length or the chord length of the region representing node 7. With continuing reference to FIG. 7, it is noted that although the region representing node 7 has the greatest displayed arc length, the region representing node 2 has the greatest theoretical arc length. This is a result of the round-off error when discretizing the radii. Either the greatest displayed arc length or the greatest theoretical arc length may be employed when considering dimensions of the regions. To achieve the result of having the greatest arc length be about equal to the greatest radial width, the MAXIMUM_ARC_ANGLE value may be multiplied by the greatest arc length divided by the greatest radial width. The resulting value is used as the MAXIMUM_ARC_ANGLE value to determine the angles defining the regions. The radii defining the regions are unaffected by the change in the MAXIMUM_ARC_ANGLE. In many applications, it may not be critical that the greatest arc length be equal to the greatest radial width. Therefore, the MAXIMUM_ARC_ANGLE can be otherwise dependent on at least one feature of the information which is to be visibly represented. In this case, the MAXIMUM_ARC_ANGLE may automatically vary from a first visible representation of a first set of elements to a second visible representation of a second set of elements. Various alternative embodiments of regions to represent the example tree of FIG. 6 are illustrated in FIGS. 8 to 13. In each of these alternative embodiments, an edge between two nodes is represented by a radial adjacency of two regions representing the two nodes. Although each of these embodiments is shown to have an overall angular width of about 180 degrees, it is noted that the overall angular width may span, in general, an angle of either less than 180 degrees, about equal to 180 degrees, greater than 180 degrees but less than 360 degrees, or about equal to 360 degrees. FIG. 8 shows a second embodiment of a plurality of regions to represent the example tree. In this embodiment, the region representing node 0 is substantially convex, and the regions representing nodes 1 to 7 are concave. Radial widths of the regions representing nodes 1, 2, 3 and 7 are approximately equal, and are approximately equal to the radius of an approximate circle defining the region representing node 0. The radial width of the region representing node 4 is approximately equal to the sum of the radial widths of the regions representing nodes 7 and 3. The radial width of the region representing node 5 is approximately equal to the sum of the radial widths of the regions representing nodes 4 and 2. The radial width of the region representing node 6 is approximately equal to the sum of the radial widths of the regions representing nodes 5 and 1. Angular widths of the regions representing leaf nodes 7, 4, 5 and 6 are approximately equal. An angular width of each region representing a parent node is approximately equal to the sum of angular widths of regions representing its children. For example, the angular width of the region representing node 2 is approximately equal to the sum of the angular widths of the regions representing nodes 3 and 4. FIG. 9 shows a third embodiment of a plurality of regions to represent the example tree. In this embodiment, the region representing node 0 is substantially convex, and the regions representing nodes 1 to 7 are concave. Radial widths of the regions representing nodes 1, 2, 3 and 7 are approximately equal, and are approximately equal to the radius of an approximate circle defining the region representing node 0. The radial width of the region representing node 4 is approximately equal to the sum of the radial widths of the regions representing nodes 7 and 3. The radial width of the region representing node 5 is approximately equal to the sum of the radial widths of the regions representing nodes 4 and 2. The radial width of the region representing node 6 is approximately equal to the sum of the radial widths of the regions representing nodes 5 and 1. Angular widths of regions representing sibling nodes are approximately equal. For example, angular widths of the regions representing nodes 1 and 6 are approximately equal, angular widths of the regions representing nodes 2 and 5 are approximately equal, and angular widths of the regions representing nodes 3 and 4 are approximately equal. An angular width of each region representing a parent node is approximately equal to the sum of angular widths of regions representing its children. For example, the angular width of the region representing node 2 is approximately equal to the sum of the angular widths of the regions representing nodes 3 and 4. FIG. 10 shows a fourth embodiment of a plurality of regions to represent the example tree. In this embodiment, the region representing node 0 is substantially convex, and the regions representing nodes 1 to 7 are concave. Radial widths of the regions representing nodes 1 to 7 are approximately equal, and are approximately equal to the radius of an approximate circle defining the region representing node 0. Angular widths of the regions representing leaf nodes 7, 4, 5 and 6 are approximately equal. An angular width of each region representing a parent node is approximately equal to the sum of angular widths of its children. For example, the angular width of the region representing node 2 is approximately equal to the sum of the angular widths of the regions representing nodes 3 and 4. FIG. 11 shows a fifth embodiment of a plurality of regions to represent the example tree. In this embodiment, the region representing node 0 is substantially convex, and the regions representing nodes 1 to 7 are concave. Radial widths of the regions representing nodes 1 to 7 are approximately equal, and are approximately equal to the radius of an approximate circle defining the region representing node 0. Angular widths of regions representing sibling nodes are approximately equal. For example, angular widths of the regions representing nodes 1 and 6 are approximately equal, angular widths of the regions representing nodes 2 and 5 are approximately equal, and angular widths of the regions representing nodes 3 and 4 are approximately equal. An angular width of each region representing a parent node is approximately equal to the sum of angular widths of regions representing its children. For example, the angular width of the region representing node 2 is approximately equal to the sum of the angular widths of the regions representing nodes 3 and 4. FIG. 12 shows a sixth embodiment of a plurality of regions to represent the example tree. In this embodiment, the regions representing nodes 0 to 7 are concave. Alternatively, at least one, and optionally all, of the regions representing nodes 7, 4, 5 and 6 may be substantially convex, such as approximate sectors of circles. Radial widths of the regions representing nodes 0, 1, 2, 3 and 7 are approximately equal. The radial width of the region representing node 4 is approximately equal to the sum of the radial widths of the regions representing nodes 7 and 3. The radial width of the region representing node 5 is approximately equal to the sum of the radial widths of the regions representing nodes 4 and 2. The radial width of the region representing node 6 is approximately equal to the sum of the radial widths of the regions representing nodes 5 and 1. Angular widths of the regions representing leaf nodes 7, 4, 5 and 6 are approximately equal. The angular width of a region representing a parent node is approximately equal to the sum of angular widths of regions representing its children nodes. FIG. 13 shows a seventh embodiment of a plurality of regions which represent the example tree. In this embodiment, the regions representing nodes 0 to 7 are concave. Alternatively, at least one, and optionally all, of the regions representing nodes 7, 4, 5 and 6 may be substantially convex, such as approximate sectors of circles. Radial widths of the regions representing nodes 0, 1, 2, 3 and 7 are approximately equal. The radial width of the region representing node 4 is approximately equal to the sum of the radial widths of the regions representing nodes 7 and 3. The radial width of the region representing node 5 is approximately equal to the sum of the radial widths of the regions representing nodes 4 and 2. The radial width of the region representing node 6 is approximately equal to the sum of the radial widths of the regions representing nodes 5 and 1. Angular widths of regions representing sibling nodes are approximately equal. For example, angular widths of the regions representing nodes 1 and 6 are approximately equal, angular widths of the regions representing nodes 2 and 5 are approximately equal, and angular widths of the regions representing nodes 3 and 4 are approximately equal. An angular width of each region representing a parent node is approximately equal to the sum of angular widths of regions representing its children. For example, the angular width of the region representing node 2 is approximately equal to the sum of the angular widths of the regions representing nodes 3 and 4. FIG. 14 is a flow chart of an embodiment of a method of providing a user interface. As indicated by block 140, the method optionally comprises providing a visible representation of a plurality of elements. Preferably, the visible representation comprises a plurality of display regions or shapes to visibly represent the plurality of elements. The visible representation can be generated in accordance with any of the herein-disclosed teachings therefor. As indicated by block 142, the method optionally comprises providing a plurality of user-selectable regions. Preferably, each user-selectable region corresponds to one of the plurality of elements. Each user-selectable region may be at least partially contained in a respective display region representing a corresponding element. Preferably, each user-selectable region has substantially the same shape, size, and location as its respective display region. Optionally, each user-selectable region has a shape, size, and location in accordance with any of the herein-disclosed teachings for a display region, regardless of whether the region is made visible. It is noted that in some cases, all of the display regions may have a corresponding user-selectable region. In other cases, only a subset of the display regions may have a corresponding user-selectable region. The user-selectable regions can be provided in a variety of ways. Of particular interest is use of either a client-side image map or a server-side image map to provide the user-selectable regions. Here, a user-selectable region can be provided using HTML tags to approximate any of the herein-disclosed shapes, including convex shapes such as sectors and concave shapes such as annular sectors. In particular, the polygon area definition in an AREA tag inside a MAP tag can be used to provide a user-selectable region having one of the herein-disclosed shapes. It is noted that a markup language improvement is contemplated which would provide an annular sector area definition and a sector area definition in an AREA tag inside a MAP tag. For example, a sector of a circle could be definable by an AREA tag having the following form:
A sector of a circular annulus could be definable by an AREA tag having the following form:
With this improvement, a user interface creator can more directly implement user-selectable regions having some of the herein-disclosed shapes. FIG. 15 is a flow chart of an embodiment of a method for use with a user interface. As indicated by block 150, the method comprises receiving a search expression. The search expression can be user-entered using an input device such as a keyboard or a voice input device. The search expression may contain one or more words in the form of either a boolean search expression or a natural language search expression, for example. The search expression may include information from a plurality of user-enterable fields to limit the scope of the search. The search expression may include an image or encoded audio. As indicated by block 152, a search is performed based on the search expression. The search yields search results comprising a subset of one or more elements of a larger set of elements. In general, the search results may comprise any of the herein-mentioned elements. Particular examples of search results include, but are not limited to, a subset of computer-readable files, a subset of computer-readable images, a subset of purchasable items, a subset of individuals, a subset of job positions, a subset of computer addresses, a subset of filenames, and a subset of computer-readable data items from a computer-readable database. It is preferred that the search results also comprise a first plurality of similarity values and a second plurality of similarity values. Each of the first plurality of similarity values indicates a degree of similarity between the search expression and a corresponding one of the elements of the subset. Each of the second plurality of similarity values indicates a degree of similarity between a corresponding pair of elements of the subset. As indicated by block 154, a visible representation of the search results is determined. The visible representation may be determined based upon any of the herein-disclosed teachings. Preferably, the visible representation comprises a plurality of regions to represent a plurality of elements obtained from the search. Optionally, the visible representation comprises a region to represent the search expression. In this case, it is preferred that the region representing the search expression correspond to the first element described with reference to FIGS. 3 and 4. As another option, each region can have either an area or a dimension monotonically related to the similarity value of its corresponding element with the search expression. For this purpose, either the first plurality of similarity values themselves or a monotonic function thereof may be used as the herein-disclosed weight values for determining parameters of the regions. A desirability of this option is that a second element, more similar to the search expression than a third element, is visibly represented by a second region having a greater area than a third region representing the third element. As yet another option, each region can have a visible display property based on the similarity value of its corresponding element with the search expression. For example, each region may be displayed with a respective color dependent upon a corresponding similarity value. As indicated by block 156, a user interface is provided based on the visible representation. Preferably, the user interface comprises a plurality of user-viewable, user-selectable regions corresponding to the plurality of elements obtained from the search, and optionally, the search expression. Optionally, the display region corresponding to the search expression may not be user-selectable. As indicated by block 160, the method optionally comprises outputting at least one signal to display a user-viewable advertisement. The at least one signal to display the user-viewable advertisement may encode an image and/or graphics in the advertisement, or may provide a link to an image and/or graphics in the advertisement. The user-viewable advertisement may be viewable by the user while at least one of the user-selectable regions is accessible by the user. Here, for example, the user-viewable advertisement and the user interface may be contained within a single Web page. As indicated by block 162, a selection of a region provided in the user interface is received. The selection of the region is performed using an input device such as a pointing device, a keyboard, or a voice input device. Examples of pointing devices include, but are not limited to, a mouse, a touchpad, a trackball, a joystick, a pointing stick, and a touchscreen. The selection is detected in response to a user-initiated event for the region. Examples of the user-initiated event include, but are not limited to, an on-click event, a double-click event, a mouse-move event, a mouse-over event, a mouse-out event, a mouse-up event, and a key depression event. As indicated by block 164, at least one act is performed based on the selection. The at least one act may include, but is not limited to, any of the following examples. If the plurality of elements include a plurality of purchasable items, and the selection is of a region associated with a particular purchasable item, the at least one act may include: providing information for the particular purchasable item, and/or performing a transaction for the particular purchasable item. If the plurality of elements include a plurality of computer addresses, and the selection is of a region associated with a particular computer address, the at least one act may include linking to the particular computer address. If the plurality of elements include a plurality of computer-readable files, and the selection is of a region associated with a particular computer-readable file, the at least one act may include opening the computer-readable file. If the plurality of elements include a plurality of records from a database, and the selection is of a region associated with a particular record, the at least one act may include any combination of retrieving, processing, displaying, modifying, or deleting the record from the database. As either an alternative or in addition to the acts in the aforementioned examples, the at least one act may include outputting at least one signal to display a user-viewable advertisement. The at least one signal to display the user-viewable advertisement may encode an image and/or graphics in the advertisement, or may provide a link to an image and/or graphics in the advertisement. As indicated by block 166, subsequent acts are performed based upon a user input. If a first user input is received, flow of the method is directed back to block 150 to receive another search expression. Thereafter, a subsequent search is performed, a subsequent visible representation is determined, and a subsequent user interface is provided. If a second user input is received, the search expression is set to a search result, as indicated by block 170. In other words, a portion or all of the content from one of the elements obtained from the search becomes the search expression. Thereafter, flow is directed back to block 152 wherein a subsequent search is performed using the new search expression, a subsequent visible representation is determined, and a subsequent user interface is provided. If a third user input is received, the visible representation is modified, as indicated by block 172. Thereafter, flow is directed back to block 156 wherein a user interface is provided based on the modified visible representation. FIG. 16 is a flow chart of an embodiment of a method of determining paths between a search expression and a plurality of computer-readable items. Typically, each computer-readable item comprises at least a portion of a computer-readable file. For example, each computer-readable item can comprise at least a portion of, and optionally an entire portion of, a respective one of a plurality of computer-readable files. As another example, each computer-readable item can comprise a portion of a single computer-readable file such as a database file. It is noted that the search expression itself may comprise at least a portion of, and optionally an entire portion of, a computer-readable item. As indicated by block 180, the method comprises determining a first plurality of similarity values between a search expression and a corresponding plurality of computer-readable items. Optionally, only a subset of the computer-readable items are considered in subsequent acts in the method. Here, for example, only N computer-readable items most similar with the search expression are considered further, where N is an integer. As another example, only the computer-readable items whose first similarity values are beyond a threshold are considered further. In this case, the number of computer-readable items in the subset may vary from search to search. As used herein, the term "beyond" can refer to a state of being either greater than, greater than or equal to, less than, or less than or equal to. As indicated by block 182, the method comprises determining a second plurality of similarity values between a corresponding plurality of pairs of the computer-readable items. Preferably, the second plurality of similarity values are determined only between corresponding pairs of computer-readable items in the aforementioned subset. As indicated by block 184, the method comprises determining an optimum path between the search expression and at least one of the computer-readable items based upon at least one of the first plurality of similarity values and at least one of the second plurality of similarity values. Preferably, a corresponding optimum path is determined between the search expression and each of the computer-readable items in the subset. The optimum path between the search expression and a computer-readable item has an optimum function value of similarity values between the search expression and the computer-readable item. Examples of the function whose optimum value dictates the optimum path include, but are not limited to, a sum of similarity values between the search expression and the computer-readable item, and a product of similarity values between the search expression and the computer-readable item. To determine an optimum product of similarity values, an additive optimum path algorithm may be performed on a logarithm of the similarity values. The paths between the search expression and the computer-readable items may be displayed using any of the herein-disclosed visible representation methods. Alternatively, one or more of the paths may be displayed or visibly represented otherwise FIG. 17 is a flow chart of an embodiment of a method of determining a tree which relates a search expression with a plurality of computer-readable items. As indicated by block 190, the method comprises determining a plurality of similarity values between a corresponding plurality of pairs of elements of a set comprising the search expression and the plurality of computer-readable items. The plurality of similarity values may be determined using the teachings described with reference to blocks 180 and 182 in FIG. 16. As indicated by block 192, the method comprises determining an optimum spanning tree based on the plurality of similarity values. Optionally, only a subset of the computer-readable items are considered for inclusion in the optimum spanning tree. Here, for example, only N computer-readable items which are most similar to the search expression are considered, where N is an integer. As another example, the optimum spanning tree only considers the computer-readable items whose similarity values with the search expression are beyond a threshold. The optimum spanning tree has an optimum function value of similarity values. Examples of the function whose optimum value dictates the optimum spanning tree include, but are not limited to, a sum of similarity values, and a product of similarity values. To determine an optimum product of similarity values, an additive optimum spanning tree algorithm may be performed on a logarithm of the similarity values. The optimum spanning tree may be displayed using any of the herein-disclosed visible representation methods. In this case, the root node of the optimum spanning tree may be presumed to be a node representing the search expression. As an alternative to the herein-disclosed visible representations, the optimum spanning tree may be displayed or visibly represented otherwise. An apparatus for performing an embodiment of the herein-disclosed methods and examples may comprise one or more programmed computers. Each programmed computer may provide a particular functionality implemented using hardware and/or software and/or firmware. Preferably, a programmed computer includes a computer memory encoded with executable instructions representing a computer program. A processor is responsive to the computer memory to perform a series of specifically identified operations dictated by the computer program. In this way, the computer program can cause the computer to act in a particular fashion. Examples of the processor include, but are not limited to, a general purpose microprocessor, an application-specific integrated circuit (which may be either standard or custom), one or more discrete logic elements, a digital signal processor, an analog signal processor, one or more circuits, or any combination thereof. It is noted that the processor may be embodied by either a single processing unit or a plurality of processing units. For example, the processor may be embodied by either a single, central processing unit or a plurality of distributed processing units. Examples of the computer memory include, but are not limited to, an electronic memory, a magnetic memory, an optical memory, and a magneto-optical memory. Examples of an electronic memory include, but are not limited to, a programmable electronic memory and a read-only, hard-wired electronic memory. Examples of a magnetic memory include, but are not limited to, a magnetic disk and a magnetic tape. The magnetic disk may be embodied by a magnetic floppy diskette or a magnetic hard drive, for example. Examples of an optical memory include, but are not limited to, an optical disk. The optical disk may be embodied by a compact disk or a DVD, for example. Regardless of its form, the computer memory may be either read-only, once-writable, or rewritable. In general, the processor may be responsive to any data structures, computer programs, and signals encoded on a computer-readable medium to perform an embodiment of any of the herein-disclosed methods and examples. Examples of the computer-readable medium include, but are not limited to, computer-readable storage media and computer-readable communication media. Examples of computer-readable storage media are described with reference to the computer memory. Examples of computer-readable communication media are described with reference to block 22 in FIG. 1. The computer is coupled to a display to display the visible representations described herein and other visible information to an end user. Examples of the display include any of the herein-disclosed display devices. The computer receives user input from one or more input devices. Examples of the one or more input devices include any of the herein-disclosed input devices. The computer processes the user input and/or communicates at least one signal based upon the user input. The display and the one or more input devices facilitate user interaction with the computer. Embodiments of the herein-disclosed methods and examples can be performed using either a single computer or a plurality of computers. A plurality of computers may cooperate in a client-server fashion, for example, wherein a server computer outputs at least one signal to cause a client computer to display a visible representation and/or to provide a user interface. To illustrate practical applications of the herein-disclosed teachings, various examples of fictitious elements are considered to be represented by the regions in FIG. 7. Alternatively, the fictitious elements can be represented by any of the alternatives shown in FIGS. 8 to 13, or by other alternatives within the scope of this disclosure. EXAMPLE 1 Patent Claims In this example, nodes 0 to 7 represent eight hypothetical claims in a hypothetical patent. Node 0 represents an independent claim; nodes 1 to 7 represent dependent claims. The dependency of the hypothetical claims is indicated by FIG. 6. In response to a user-initiated event associated with a region, the claim represented by the region is displayed. For example, the claim may be displayed when the cursor is located in the associated region, or when the user clicks on the region. Preferably, the claim and the visible representation are simultaneously viewable. In response to a user-initiated event associated with another region, another represented claim is displayed. As an alternative to displaying the regions with substantially the same area, each region may be displayed with an associated area monotonically related with a property of its represented claim. For example, each region may be displayed with an associated area monotonically related with a number of words in its represented claim. EXAMPLE 2 Organization Chart In this example, nodes 0 to 7 represent eight hypothetical individuals in a hypothetical organization. Node 0 represents a first individual at the top of either the organization or a portion of the organization. Nodes 1 and 6 represent second and third individuals, respectively, who report to the first individual. Nodes 2 and 5 represent fourth and fifth individuals, respectively, who report to the second individual. Nodes 3 and 4 represent sixth and seventh individuals, respectively, who report to the fourth individual. Node 7 represents an eighth individual who reports to the sixth individual. In response to a user-initiated event associated with a region, information associated with the individual represented by the region is displayed. Examples of the information include a name, an address, a telephone number, a title, a department, and an electronic mail address. The information may be displayed when the cursor is located in the associated region, or when the user clicks on the region. Preferably, the information and the visible representation are simultaneously viewable. When the user initiates an event at another region, information for another individual is displayed. Preferably, this information is displayed in place of the previously-displayed information. EXAMPLE 3 Hierarchy of Computer Directories and Files In this example, node 0 represents a logical disk drive, such as "c:". Node 1 represents a first directory in the logical disk drive. Node 6 represents a file accessible at "c:". Node 2 represents a first subdirectory of the first directory. Node 5 represents a file within the first directory. Node 3 represents a second subdirectory of the first subdirectory. Node 4 represents a file within the first subdirectory. Node 7 represents a file within the second subdirectory. In the context of this disclosure, the terms "folder" and "subfolder" are considered to be synonymous with the terms "directory" and "subdirectory". In response to a user-initiated event associated with a region representing a file, the file is opened and/or an application program is executed. The user-initiated event may comprise, for example, a single click or a double click at a region representing a file. In response to a user-initiated event associated with a region representing a directory or a subdirectory, a new visible representation is determined and displayed. The new visible representation represents the selected directory or subdirectory, and its descendant subdirectories and/or files. For example, if the user single clicks or double clicks at the region representing node 2, a new visible representation may be determined and displayed for nodes 2, 3, 4 and 7. EXAMPLE 4 Messages In this example, nodes 0 to 7 represent hypothetical messages in a hypothetical internet discussion group, such as USENET, or another on-line forum. Node 0 represents a base message posted to the discussion group. Nodes 1 to 7 represent seven reply messages posted either directly or indirectly from the base message. Node 1 represents a first reply message to the base message. Node 2 represents a second reply message to the first reply message. Node 3 represents a third reply message to the second reply message. Node 4 represents a fourth reply message to the second reply message. Node 5 represents a fifth reply message to the first reply message. Node 6 represents a sixth reply message to the base message. Node 7 represents a seventh reply message to the third reply message. In response to a user-initiated event associated with a region, the message represented by the region is displayed. The user-initiated event may comprise, for example, a single click or a double click at the region, or a cursor within the region. Preferably, the message and the visible representation are simultaneously viewable. Further in response to the user-initiated event associated with the region, a visible display property of the region may be modified. Examples of the visible display property include, but are not limited to, an interior color of the region, an interior gray scale of the region, an interior fill pattern for the region, a color bordering the region, an image within the region, and text within the region. Modifying the visible display property is desirable to indicate that the message has been selected by the user. Unselected regions may be displayed using a first display property. Some or all previously-selected regions may be displayed using a second display property. Optionally, at least one previously-selected region is displayed using a third display property responsive to a user input. The user input indicates a user's dislike of a message represented by a region. For example, the user may regard the message as a "flame" using Internet parlance. By seeing the third display property, the user may wish to avoid reading subsequent messages which descend from the flame message. Optionally, all descendant messages from the aforementioned message may also be displayed using the third display property. Either as an alternative to or in addition to displaying the region using the third display property, a new visible representation may be determined and displayed in response to the user input. The new visible representation omits the descendants of the message, and optionally omits the message also. For example, if the user input indicates dislike of the message represented by node 2, a new visible representation may be determined and displayed for nodes 0, 1, 5, 6 and optionally 2. In response to a user-initiated event associated with another region, another represented message is displayed. Preferably, this message is displayed in place of the previously-displayed message. As an alternative to displaying the regions with substantially the same area, each region may be displayed with an associated area monotonically related with a property of its represented message. For example, each region may be displayed with an associated area monotonically related with either a number of words in its represented message, or a number of bytes in its represented message. The user interface comprising the visible representation of the messages may be provided by a newsgroup site, a discussion site, or another site, for example. The user interface may be presented to an end user using a computer with a browser or an alternative client program. The site may also provide one or more visible advertisements to the end user. Alternatively, the user interface comprising the visible representation of the messages may be provided by a news reader computer program executed by the end user's computer. EXAMPLE 5 Electronic Commerce In this example, nodes 1 to 7 represent seven purchasable items. Node 0 may represent a search expression entered by a user to find purchasable items of interest. The seven purchasable items may be identified as a result of performing a search based on the search expression. Optimum paths between the seven purchasable items and the search expression may be determined based upon the teachings given with reference to FIG. 16. In this case, the computer-readable items described with reference to FIG. 16 may comprise computer-readable descriptions of the purchasable items. The visible representation graphically indicates the optimum paths. It is noted, however, that alternative methods of organizing the seven purchasable items may also be used to produce the visible representation. In response to a user-initiated event associated with a region, at least one act is performed. The at least one act may include any combination of: (i) displaying information for the purchasable item represented by the region; and (ii) performing, initiating, and/or assisting in performing a transaction for the purchasable item. Examples of the displayed information include, but are not limited to, a description of the purchasable item, an image of the purchasable item, and a price of the purchasable item. Preferably, the information and the visible representation are simultaneously viewable. An example of assisting in performing a transaction includes, but is not limited to, linking to a computer address at which the purchasable item may be purchased. The user-initiated event may comprise, for example, a single click or a double click at the region, or a cursor within the region. Preferably, a first user-initiated event initiates the display of information for the purchasable item, and a second user-initiated event initiates a transaction for the purchasable item. Optionally, a plurality of the purchasable items can be user-selected before initiating a transaction therefor. Optionally, each region for nodes 1 to 7 is displayed with a corresponding visible display property based on a property of its represented purchasable item. Examples of the property include, but are not limited to, price of the purchasable item, weight of the purchasable item, and similarity of the purchasable item to the search expression. The visible display property of a region may be modified if its represented purchasable item has been selected for purchase. For purposes of illustration and example, the seven purchasable items are considered to comprise seven hypothetical books. As can be appreciated, however, the following teachings broadly extend to other purchasable items. The similarity values between pairs of books may be predetermined prior to the search, or determined after or during the search. The similarity values may be determined based upon the full text of the books. In this case, it is preferred that the full text of the books not be made accessible to a potential purchaser prior to his/her purchase. Alternatively, the similarity values may be determined based on either a set of keywords or an abstract of the book. The similarity values between the search expression and the books may be based upon the full text of the books, abstracts of the books, or keywords for the books. Preferably, each pair of radially-adjacent regions represents a pair of books more similar to each other than the least similar of the pair of books is with the search expression. For example, with reference to FIGS. 6 and 7, the book represented by node 7 is more similar to the book represented by node 3 than to the search expression. Therefore, if the user is disinterested in the book represented by node 3 after viewing information therefor, he/she may choose to disregard the book represented by node 7. As an alternative to displaying the regions with substantially the same area, each region may be displayed with an associated area monotonically related with a property of its represented item. For example, each region may be displayed with an associated area monotonically related with either the similarity value of its represented item with the search expression, the price of the represented item, or the weight of the represented item. The user interface comprising the visible representation of the purchasable items may be provided by an electronic commerce site or another site, for example. The user interface may be presented to an end user using a computer with a browser or an alternative client program. The site may also provide one or more visible advertisements to the end user. EXAMPLE 6 Electronic Commerce In this example, node 0 represents a category of items of interest to the user. Nodes 1 to 7 represent seven purchasable items based on the category. For purposes of illustration and example, consider node 0 representing a user-selected category of portable computers. Consider node 6 representing a palmtop computer packaged with a complete set of accessories, and node 1 representing a notebook computer. Consider nodes 2, 3, 4, 5 and 7 representing accessories for use with the notebook computer. Node 2 may represent a portable printer usable with the notebook computer. Node 4 may represent a carrying case capable of carrying both the notebook computer and the portable printer. Node 5 may represent a carrying case capable of carrying the notebook computer but not with the portable printer. Node 3 may represent a desk capable of supporting the notebook computer and the portable printer. Node 7 may represent a chair capable of use with the desk. Each pair of radially-adjacent regions represents related purchasable items. Preferably, each pair of radially-adjacent regions represents a pair of items more related to each other than the least related of the items is with the category. For example, with reference to FIGS. 6 and 7, the chair represented by node 7 is more related to the desk represented by node 3 than to the category of portable computers. Therefore, if the user is disinterested in the desk represented by node 3, he/she may choose to disregard the chair represented by node 7. Further, each sequence of radially-adjacent regions represents a potential group of items to be purchased together. For example, a user may choose to purchase the notebook computer, the portable printer, and the carrying case capable of carrying both the notebook computer and portable printer represented by the regions for nodes 1, 2 and 4. In response to a user-initiated event associated with a region, at least one act is performed. The at least one act may include any combination of: (i) displaying information for the purchasable item represented by the region; and (ii) performing, initiating, and/or assisting in performing a transaction for the purchasable item. Examples of the displayed information include, but are not limited to, a description of the purchasable item, an image of the purchasable item, and a price of the purchasable item. Preferably, the information and the visible representation are simultaneously viewable. An example of assisting in performing a transaction includes, but is not limited to, linking to a computer address at which the purchasable item may be purchased. The user-initiated event may comprise, for example, a single click or a double click at the region, or a cursor within the region. Preferably, a first user-initiated event initiates the display of information for the purchasable item, and a second user-initiated event initiates a transaction for the purchasable item. Optionally, a plurality of the purchasable items can be user-selected before initiating a transaction therefor. Optionally, each region for nodes 1 to 7 is displayed with a corresponding visible display property based on a property of its represented purchasable item. Examples of the property include, but are not limited to, price of the purchasable item, weight of the purchasable item, and similarity of the purchasable item to the category. The visible display property of a region may be modified if its represented purchasable item has been selected for purchase. As an alternative to displaying the regions with substantially the same area, each region may be displayed with an associated area monotonically related with a property of its represented item. For example, each region may be displayed with an associated area monotonically related with either the similarity value of its represented item with the search expression, the price of the represented item, or the weight of the represented item. The user interface comprising the visible representation of the purchasable items may be provided by an electronic commerce site or another site, for example. The user interface may be presented to an end user using a computer with a browser or an alternative client program. The site may also provide one or more visible advertisements to the end user. EXAMPLE 7 Search Results In this example, nodes 1 to 7 represent seven computer-readable files, such as Web pages, on a computer network such as an internet. Node 0 represents a search expression entered by a user to find computer-readable files (e.g. Web pages) of interest. The seven computer-readable files are identified as a result of performing a search based on the search expression. Optimum paths between the seven computer-readable files and the search expression may be determined based upon the teachings given with reference to FIG. 16. The similarity values between pairs of computer-readable files may be predetermined prior to the search, or determined after or during the search. The visible representation graphically indicates the optimum paths. It is noted, however, that alternative methods of organizing the seven computer-readable files may also be used to produce the visible representation. In response to a user-initiated event associated with a region, at least one act is performed. The at least one act may include any combination of: (i) displaying a computer address for the computer-readable file represented by the region; (ii) displaying information for the computer-readable file represented by the region; and (iii) linking to the computer-readable file. Examples of the computer address include, but are not limited to, a uniform resource locator and an internet protocol address. Preferably, the computer address and the visible representation are simultaneously viewable. Examples of the displayed information include, but are not limited to, a description of the computer-readable file, and a portion of the computer-readable file. Preferably, the information and the visible representation are simultaneously viewable. The user-initiated event may comprise, for example, a single click or a double click at the region, or a cursor within the region. Preferably, a first user-initiated event initiates the display of the computer address and the description of the computer-readable file, and a second user-initiated event initiates linking to the computer-readable file. Optionally, each region for nodes 1 to 7 is displayed with a corresponding visible display property based on a property of its represented computer-readable file. Examples of the property include, but are not limited to, the size of the computer-readable file, and the similarity of the computer-readable file to the search expression. The visible display property of a region may be modified after linking to its represented computer-readable file. Preferably, each pair of radially-adjacent regions represents a pair of computer-readable files more similar to each other than the least similar of the pair of computer-readable files with the search expression. For example, with reference to FIGS. 6 and 7, the computer-readable file represented by node 7 is more similar to the computer-readable file represented by node 3 than to the search expression. Therefore, if the user is disinterested in the computer-readable file represented by node 3 after viewing information therefor, he/she may choose to disregard the computer-readable file represented by node 7. As an alternative to displaying the regions with substantially the same area, each region may be displayed with an associated area monotonically related with a property of its represented computer-readable file. For example, each region may be displayed with an associated area monotonically related with either the similarity value of its represented computer-readable file with the search expression, or the size of the computer-readable file. The user interface comprising the visible representation of the computer-readable files may be provided by a site which provides a search capability, such as an internet portal. The user interface may be presented to an end user using a computer with a browser or an alternative client program. The site may also provide one or more visible advertisements to the end user. EXAMPLE 8 Directory In this example, nodes 0, 1, 2 and 3 represent four information categories, and nodes 4, 5, 6 and 7 represent four information sources. Node 1 represents a subcategory within the category represented by node 0. Node 2 represents a subcategory within the category represented by node 1. Node 3 represents a subcategory within the category represented by node 2. Node 4 represents an information source within the category represented by node 2. Node 5 represents an information source within the category represented by node 1. Node 6 represents an information source within the category represented by node 0. Node 7 represents an information source within the category represented by node 3. Examples of the information sources include, but are not limited to, computer-readable files, such as Web pages, or other computer-readable items. In response to a user-initiated event associated with a region representing an information source, at least one act is performed. The at least one act may include any combination of: (i) displaying a computer address for the information source represented by the region; (ii) displaying information associated with the information source represented by the region; and (iii) linking to the information source. Examples of the computer address include, but are not limited to, a uniform resource locator and an internet protocol address. Preferably, the computer address and the visible representation are simultaneously viewable. Examples of the displayed information include, but are not limited to, a description of the information source, and a portion of the content of the information source. Preferably, the information and the visible representation are simultaneously viewable. The user-initiated event may comprise, for example, a single click or a double click at the region, or a cursor within the region. Preferably, a first user-initiated event initiates the display of the computer address and the description of the computer-readable file, and a second user-initiated event initiates linking to the computer-readable file. In response to a user-initiated event associated with a region representing a subcategory, a new visible representation is determined and displayed. The new visible representation represents the selected subcategory, and its descendant subcategories and/or information sources. For example, if the user selects the region representing node 2, a new visible representation may be determined and displayed for nodes 2, 3, 4 and 7. The user interface comprising the visible representation of the information sources and categories may be provided by a site which provides a categorical directory, such as an internet portal. The user interface may be presented to an end user using a computer with a browser or an alternative client program. The site may also provide one or more visible advertisements to the end user. EXAMPLE 9 Hyperlinks In this example, nodes 0 to 7 represent eight pages of a hypothetical computer site, such as a Web site. The visible representation in FIG. 7 visibly represents a hierarchy of the eight pages. Each pair of radially-adjacent regions represents a hyperlink between two pages. An opening page, such as a home page, of the site is represented by node 0. The opening page is linked with a page represented by node 1 and a page represented by node 6. The page represented by node 1 is linked with a page represented by node 2 and a page represented by node 5. The page represented by node 2 is linked with a page represented by node 3 and a page represented by node 4. The page represented by node 3 is linked with a page represented by node 7. Each page is identified by a unique computer address, such as a URL. Each hyperlink within a page links to a target page using the computer address of the target page. In response to a user-initiated event associated with a region, acts of linking to the computer address represented by the region, and displaying the page represented by the region are performed. The user-initiated event may comprise, for example, a single click or a double click at the region, or a cursor within the region. The page and the visible representation may be simultaneously viewable. Further in response to the user-initiated event associated with the region, a visible display property of the region may be modified. Examples of the visible display property include, but are not limited to, an interior color of the region, an interior gray scale of the region, an interior fill pattern for the region, a color bordering the region, an image within the region, and text within the region. Modifying the visible display property is desirable to indicate that the page has been selected by the user. Unselected regions may be displayed using a first display property. Some or all previously-selected regions may be displayed using a second display property. In response to a first user input, a reduced visible representation may be determined and displayed. The reduced visible representation omits descendant pages of a user-selected page. For example, if the user input indicates that a reduced visible representation is to be determined based on a selection of the page represented by node 2, a reduced visible representation is determined and displayed for the pages associated with nodes 0, 1, 5, 6 and 2. In response to a second user input, an expanded visible representation may be determined and displayed. The expanded visible representation includes descendant pages of a user-selected page. For example, if the user input indicates that an expanded visible representation is to be determined based on a selection of the page represented by node 2, an expanded visible representation returns the regions representing pages associated with nodes 3, 7 and 4. As an alternative to displaying the regions with substantially the same area, each region may be displayed with an associated area monotonically related with a property of its represented page. For example, each region may be displayed with an associated area monotonically related with the size of a file to produce the page. The user interface comprising the visible representation of the hyperlinks may be provided by the computer site itself. Alternatively, the user interface may be provided by another computer site. In these cases, the user interface may be presented to an end user using a computer with a browser or an alternative client program. The site may also provide one or more visible advertisements to the end user. Alternatively, the user interface may be provided by the end user's computer. In this case, for example, the user interface can be provided within a computer program for creating a site, within a browser program, or within another computer program. In general, the teachings in this example can be extended to consider eight pages which may not be necessarily associated with the same computer site. The teachings can be modified to consider portions of a single page, wherein each region represents a corresponding portion of a page, and radial adjacency of two regions represents a hyperlink within one portion of the page to link to another portion of the page. Further, radial adjacency of two regions may suggest either: (i) a link directed from a page or a page portion represented by an inner region to a page or a page portion represented by an outer region; (ii) a link directed from a page or a page portion represented by an outer region to a page or a page portion represented by an inner region; (iii) links in both of the aforementioned directions; or (iv) a link directed in at least one of the aforementioned directions. It is noted that the present disclosure contemplates independent use of any one of the herein-disclosed methods and examples of element organization, visible representation and input interfaces. For example, any of the herein-disclosed methods and examples of element organization may be combined with alternative visible representations and/or alternative input interfaces. As a further example, any of the herein-disclosed methods and examples of visible representation may be combined with an alternative element organization and/or alternative input interfaces. As a still further example, any of the herein-disclosed input interfaces may be combined with an alternative element organization and/or alternative visible representations. It is also noted that the present disclosure contemplates methods, articles, apparatus, and examples which include an act of providing a link to a computer site which performs an embodiment of any of the herein-disclosed methods and examples. The present disclosure also contemplates methods, articles, apparatus, and examples which include an act of providing a user-viewable advertisement for a computer site which performs an embodiment of any of the herein-disclosed methods and examples. The user-viewable advertisement may be communicated to the end user from either an advertisement provider or the computer site. The present disclosure further contemplates methods, articles, apparatus, and examples which include an act of receiving a hit from an end user who has hyperlinked from a computer site which performs an embodiment of any of the herein-disclosed methods and examples. Each of the aforementioned computer sites may include an internet site, a Web site, or another site accessible via a computer network. It will be apparent to those skilled in the art that the disclosed inventions may be modified in numerous ways and may assume many embodiments other than the preferred forms specifically set out and described herein. Accordingly, it is intended by the appended claims to cover all modifications which fall within the true spirit and scope of the present invention. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
