Scalable hierarchical data-driven navigation system and method for information retrieval
First Claim
1. A method for presenting materials corresponding to a navigation state, the method comprising:
- receiving a user selection of an expression of attribute-value pairs;
producing a plurality of refinement options and a plurality of ancestors by processing, in each server of a plurality of servers, the expression of attribute-value pairs to produce at least one refinement option and at least one ancestor;
combining the plurality of refinement options and plurality of ancestors to form combined refinement options, the combined refinement options including at least one refinement navigation state;
determining the navigation state associated with the expression of attribute-value pairs;
providing materials associated with the navigation state; and
providing the combined refinement options,wherein the combining comprises;
taking a union of the plurality of refinement options, determining a set of ancestors for each refinement option of the plurality of refinement options, from the plurality of ancestors produced in the plurality of servers, to form sets of ancestors, computing an intersection of all of the sets of ancestors, and computing the combined refinement options based on terms in the intersection of all sets of ancestors, including identifying at least two related terms among the plurality of refinement options, and computing, for the at least two related terms, a least common ancestor of the related terms, andwherein a first server of the plurality of servers acts as a master server and some of the plurality of servers act as slave servers, the method further comprising the master server distributing a request for a navigation state to a plurality of slave servers, the slave servers computing navigation states for requests and returning results to the master server, and the master server combining the results from the slave servers to obtain a navigation state corresponding to the request, wherein the combining of the results is based on the combining of the plurality of refinement options and plurality of ancestors.
2 Assignments
0 Petitions
Accused Products
Abstract
A data-driven, hierarchical information navigation system and method enable search of sets of documents or other materials by certain common attributes that characterize the materials. The invention includes several aspects of a data-driven, hierarchical navigation system that employs this navigation mode. The navigation system of the present invention includes features of an interface, a knowledge base and a taxonomy definition process and a classification process for generating the knowledge base, a graph-based navigable data structure and method for generating the data structure, World Wide Web-based applications of the system, and methods of implementing the system. Users are able to search or browse a particular collection of documents by selecting desired values for the attributes. A data-driven, hierarchical information navigation system and method enable this navigation mode by associating terms with the materials, defining a set of hierarchical relationships among the terms, and providing a guided search mechanism based on the relationship between the terms. In another aspect of the invention, implementations of the invention may be scalable through parallel or distributed computation. Implementations of the invention may employ master and slave servers in a hierarchical configuration.
243 Citations
42 Claims
-
1. A method for presenting materials corresponding to a navigation state, the method comprising:
-
receiving a user selection of an expression of attribute-value pairs; producing a plurality of refinement options and a plurality of ancestors by processing, in each server of a plurality of servers, the expression of attribute-value pairs to produce at least one refinement option and at least one ancestor; combining the plurality of refinement options and plurality of ancestors to form combined refinement options, the combined refinement options including at least one refinement navigation state; determining the navigation state associated with the expression of attribute-value pairs; providing materials associated with the navigation state; and
providing the combined refinement options,wherein the combining comprises;
taking a union of the plurality of refinement options, determining a set of ancestors for each refinement option of the plurality of refinement options, from the plurality of ancestors produced in the plurality of servers, to form sets of ancestors, computing an intersection of all of the sets of ancestors, and computing the combined refinement options based on terms in the intersection of all sets of ancestors, including identifying at least two related terms among the plurality of refinement options, and computing, for the at least two related terms, a least common ancestor of the related terms, andwherein a first server of the plurality of servers acts as a master server and some of the plurality of servers act as slave servers, the method further comprising the master server distributing a request for a navigation state to a plurality of slave servers, the slave servers computing navigation states for requests and returning results to the master server, and the master server combining the results from the slave servers to obtain a navigation state corresponding to the request, wherein the combining of the results is based on the combining of the plurality of refinement options and plurality of ancestors. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 37, 38)
-
-
13. A computer-readable storage medium storing computer-executable instructions that, when executed by a computer, cause the computer to perform a method for presenting materials corresponding to a navigation state, the method comprising:
-
receiving a user selection of an expression of attribute-value pairs; producing a plurality of refinement options and a plurality of ancestors by processing, in each server of a plurality of servers, the expression of attribute-value pairs to produce at least one refinement option and at least one ancestor; combining the plurality of refinement options and plurality of ancestors to form combined refinement options, the combined refinement options including at least one refinement navigation state; determining the navigation state associated with the expression of attribute-value pairs; providing materials associated with the navigation state; and providing the combined refinement options, wherein the combining comprises;
taking a union of the plurality of refinement options, determining a set of ancestors for each refinement option of the plurality of refinement options, from the plurality of ancestors produced in the plurality of servers, to form sets of ancestors, computing an intersection of all of the sets of ancestors, and computing the combined refinement options based on terms in the intersection of all sets of ancestors, including identifying at least two related terms among the plurality of refinement options, and computing, for the at least two related terms, a least common ancestor of the related terms, andwherein a first server of the plurality of servers acts as a master server and some of the plurality of servers act as slave servers, the method further comprising the master server distributing a request for a navigation state to a plurality of slave servers, the slave servers computing navigation states for requests and returning results to the master server, and the master server combining the results from the slave servers to obtain a navigation state corresponding to the request, wherein the combining of the results is based on the combining of the plurality of refinement options and plurality of ancestors. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 39, 40)
-
-
25. A system for presenting materials corresponding to a navigation state, comprising:
-
at least one server that includes a computer readable storage medium for storing the materials, wherein the at least one server; receives a user selection of an expression of attribute-value pairs; and produces at least one refinement option by processing the expression of attribute-value pairs; at least one other server that; receives a user selection of an expression of attribute-value pairs;
produces at least one refinement option by processing the expression of attribute-value pairs, wherein the at least one refinement option produced by the at least one server and the at least one refinement option produced by the at least one other served form a plurality of refinement options;combines the plurality of refinement options and plurality of ancestors to form combined refinement options, the combined refinement options including at least one refinement navigation state; determines the navigation state associated with the expression of attribute-value pairs; provides materials associated with the navigation state; and
provides the combined refinement options, wherein when the at least one server combines the plurality of refinement options, the at least one server;takes a union of the plurality of refinement options, determines a set of ancestors for each refinement option of the plurality of refinement options, from the plurality of ancestors produced in the plurality of servers, to form sets of ancestors, computes an intersection of all of the sets of ancestors, and computes the combined refinement options based on terms in the intersection of all sets of ancestors, including identifying at least two related terms among the plurality of refinement options, and computing, for the at least two related terms, a least common ancestor of the related terms, and wherein at least one of at least one other servers acts as a master server;
the at least one server includes a plurality of servers, and the plurality of servers act as slave servers;
the master server distributes a request for a navigation state to the slave servers;
the slave servers compute navigation states for requests and return results to the master server based on the combining; and
the master server combines the results from the plurality of slave servers to obtain a navigation state corresponding to the request, wherein the combining of the results is based on the combining of the plurality of refinement options and plurality of ancestors. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 41, 42)
-
Specification