| US 7,617,184 B2 | ||
| Scalable hierarchical data-driven navigation system and method for information retrieval | ||
| Adam Ferrari, Cambridge, Mass. (US); David Gourley, Boston, Mass. (US); Keith Johnson, Cambridge, Mass. (US); Frederick Knabe, Boston, Mass. (US); Andrew Lau, Cambridge, Mass. (US); Vinay Mohta, Cambridge, Mass. (US); Daniel Tunkelang, Cambridge, Mass. (US); and John Walter, Boston, Mass. (US) | ||
| Assigned to Endeca Technologies, Inc., Cambridge, Mass. (US) | ||
| Filed on Sep. 21, 2001, as Appl. No. 9/961,131. | ||
| Application 09/961131 is a continuation in part of application No. 09/573305, filed on May 18, 2000, granted, now 7,035,864. | ||
| Prior Publication US 2002/0051020 A1, May 02, 2002 | ||
| Int. Cl. G06F 17/30 (2006.01) | ||
| U.S. Cl. 707—3 [707/6; 707/10; 707/102] | 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, and
wherein 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.
|