← Back to Patent Explorer
US5577241A Expired / Lapsed US ⏱️ 0.0 years remaining

Information retrieval system and method with implementation extensible query architecture

Assignee: Excite Inc
•
Filing: 1994-12-07
•
Granted: 1996-11-19
•
Expires: 2014-12-07
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An information retrieval system incorporates an extensible query architecture allowing an applications programmer to integrate new query models into the system as desired. The query architecture is based on an abstract base class of query nodes, or code objects that retrieve records from the database. Specific subclasses for particular query models are derived from the base class. Each query node class includes a search function that iteratively searches the database for matching records. Query node objects are instantiated by associated node creator class objects. A parser is used to parse a search query into its components, including nested search queries used to combine various query models. The parser determines the particular search operator keywords, and the node creator object for instantiating the appropriate query node object for each search operator. The node creator objects return pointers to the created query nodes, allowing the parser to assemble complex hierarchical query nodes that combine multiple query models.

Inventors

  • 👤 Graham Spencer

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 00:35
CPC Classifications
G; G06; G06F; G06F16/00; G06F16/30; G06F16/33; G06F16/3331; G06F16/334; G06F16/20; G06F16/24; G06F16/245; G06F16/2453; G06F16/24534; G06F16/24542; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99933; Y10S707/99935

Claims Analysis

Total Claims: 18
Claim 1
Independent Claim 248 words
A system for executing search queries on a database comprising a plurality of documents, each search query having a search query operator and at least one search data element, the system comprising: a search query manager that receives a search query including at least one search query operator and at least one search data element associated therewith to be operated on by the search query operator; a storage structure that stores associations between search query operators and query node creators, each query node creator for creating a query node that executes a search query for a search query operator upon at least one search data element associated therewith, to identify a next document therein as a function of the search query operator and the at least one search data element of the search query, and returning an identifier of the document, and a score for the document; a parser, coupled to the storage structure and further coupled to the search query manager for receiving therefrom the search query, the parser identifying each search query operator and search data element in the search query, and for each search query operator in the search query, identifying the query node creator associated with the search query operator and calling the associated query node creator to create a query node for the search query operator and the search data element associated therewith; and a processor, coupled to the parser, and receiving therefrom a first query node, and executing the first query node.
Claim 2
Independent Claim 248 words
A system for executing search queries on a database comprising a plurality of documents, each search query having a search query operator and at least one search data element, the system comprising: a search query manager that receives a search query including at least one search query operator and at least one search data element associated therewith to be operated on by the search query operator; a storage structure that stores associations between search query operators and query node creators, each query node creator for creating a query node that executes a search query for a search query operator upon at least one search data element associated therewith, to identify a next document therein as a function of the search query operator and the at least one search data element of the search query, and returning an identifier of the document, and a score for the document; a parser, coupled to the storage structure and further coupled to the search query manager for receiving therefrom the search query, the parser identifying each search query operator and search data element in the search query, and for each search query operator in the search query, identifying the query node creator associated with the search query operator and calling the associated query node creator to create a query node for the search query operator and the search data element associated therewith; and a processor, coupled to the parser, and receiving therefrom a first query node, and executing the first query node.
Claim 3
Dependent Claim 68 words
The system of claim 1, wherein each query node further comprises: an argument list containing a first document number; a code object that searches the database to retrieve a document having a second document number greater than the first document number and a non-zero document score, the code object setting the first document number to the second document number and a document score to the non-zero document score.
Claim 4
Dependent Claim 32 words
The system of claim 1, wherein the first query node is comprised of a plurality of nested query nodes, the processor executing the first query node by executing each nested query node.
Claim 5
Dependent Claim 185 words
The computer system of claim 1, further comprising: a) a query node base class, including: i) a search data element member for storing at least one search data element; and, ii) a search function member accepting an input including a first document number, the search function member for searching the database to retrieve a document having a second document number greater than the first document number, and a non-zero document score, and to return the non-zero document score and the second document number; b) at least one query node class derived from the query node base class; c) a query node creator base class including: a query data element member that stores at least one query data element including either a search data element or a subordinate query node; the query node creator base class returning a query node having as a search data element the query data element in response to an invocation of a constructor function of the query node creator base class by the parser; and d) at least one query node creator class derived from the query node creator base class.
Claim 6
Dependent Claim 167 words
A computer implemented method of creating search queries for a database comprising a plurality of documents, the method comprising: storing in a computer readable medium a plurality of query node creators, each query node creator capable of creating a query node that executes a search query to identify a next document in the database as a function of a search query operator upon at least one data element; storing in the computer readable medium a plurality of search operators, each search operator associated with a selected query node creator; receiving an input search query having a search query operator and at least one data element associated therewith; identifying each search query operator and associated data element in the search query; and for each search query operator in the search query: identifying the query node creator associated with the search query operator in the computer readable medium; and invoking the associated query node creator to create query node for the search query operator and the associated data element.
Claim 7
Dependent Claim 167 words
A computer implemented method of creating search queries for a database comprising a plurality of documents, the method comprising: storing in a computer readable medium a plurality of query node creators, each query node creator capable of creating a query node that executes a search query to identify a next document in the database as a function of a search query operator upon at least one data element; storing in the computer readable medium a plurality of search operators, each search operator associated with a selected query node creator; receiving an input search query having a search query operator and at least one data element associated therewith; identifying each search query operator and associated data element in the search query; and for each search query operator in the search query: identifying the query node creator associated with the search query operator in the computer readable medium; and invoking the associated query node creator to create query node for the search query operator and the associated data element.
Claim 8
Dependent Claim 19 words
The method of claim 5, further comprising the step of: creating a hierarchical ordering of the created query nodes.
Claim 9
Dependent Claim 57 words
The method of claim 5, further comprising the steps of: selecting at least one of the created query nodes; and executing the selected query nodes on the database to identify at least one document therein corresponding to the data elements of the search query, and returning an identifier of the document, and a score for the document.
Claim 10
Dependent Claim 47 words
The method of claim 7, wherein the step of selecting at least one of the created query nodes further comprises optimizing an ordering of the created query nodes, and the step of executing the selected query nodes further comprising executing the optimized ordering of selected query nodes.
Claim 11
Dependent Claim 109 words
A computer implemented method of executing a search query including a search query operator associated with at least one search data element, on a database comprising a plurality of documents, each document having a document number, the method comprising: receiving an input including a first document number, and a first document score; identifying a document having a second document number greater than the first document number and a non-zero second document score as a function of the search query operator and the at least one search data element; setting the first document number to the second document number; and setting the first document score to the second document score.
Claim 12
Dependent Claim 109 words
A computer implemented method of executing a search query including a search query operator associated with at least one search data element, on a database comprising a plurality of documents, each document having a document number, the method comprising: receiving an input including a first document number, and a first document score; identifying a document having a second document number greater than the first document number and a non-zero second document score as a function of the search query operator and the at least one search data element; setting the first document number to the second document number; and setting the first document score to the second document score.
Claim 13
Dependent Claim 38 words
The method of claim 9, wherein the step of identifying further comprises the steps of: identifying a document having a second document number greater than the first document number; determining if the document has a non-zero document score.
Claim 14
Dependent Claim 38 words
The method of claim 10, wherein the step of determining if the document has non-zero document score further comprises the steps of: scoring the document on a function defined by a search query operator and a data element.
Claim 15
Dependent Claim 237 words
An information retrieval system for searching and retrieving selected documents in a database of documents in response to a search query including at least one search query operator and at least one associated data element, each document having an identifier and a document score, the information retrieval system, comprising: a) a query node base class including: i) a search data element member for storing at least one search data element; and, ii) a search function member accepting an input including a first document number, the search member function executable by a processor for searching the database to retrieve a document having a second document number greater than the first document number, and a non-zero document score, and to return the non-zero document score and the second document number. b) at least one query node class derived from the query node base class; c) a query node creator baseclass including: a query data element member that stores at least one query data element including either a search data element or a subordinate query node; the query node creator base class returning a query node having as a search data element the query data element in response to an invocation of a constructor function of the query node creator base class; and d) at least one query node creator class derived from the query node creator baseclass, each query node creator class associated with a selected search query operator.
Claim 16
Dependent Claim 237 words
An information retrieval system for searching and retrieving selected documents in a database of documents in response to a search query including at least one search query operator and at least one associated data element, each document having an identifier and a document score, the information retrieval system, comprising: a) a query node base class including: i) a search data element member for storing at least one search data element; and, ii) a search function member accepting an input including a first document number, the search member function executable by a processor for searching the database to retrieve a document having a second document number greater than the first document number, and a non-zero document score, and to return the non-zero document score and the second document number. b) at least one query node class derived from the query node base class; c) a query node creator baseclass including: a query data element member that stores at least one query data element including either a search data element or a subordinate query node; the query node creator base class returning a query node having as a search data element the query data element in response to an invocation of a constructor function of the query node creator base class; and d) at least one query node creator class derived from the query node creator baseclass, each query node creator class associated with a selected search query operator.
Claim 17
Dependent Claim 27 words
The information retrieval system of claim 12, further comprising: e) a storage structure that stores each derived query node creator in association with a selected search operator.
Claim 18
Dependent Claim 76 words
The information retrieval system of claim 13, further comprising: f) a parser that identifies in a search query each search operator and associated data elements therewith, and coupled to the storage structure for determining a query node creator associated with each search operator, the parser invoking the query node creator associated with each search operator to creator a query node, and passing to the query node creator the data elements associated with the search query operator.

References Cited (Backward Citations)

US5404506A Cited
US4931928A Cited
US5311595A Cited
US5161214A Cited
US5321833A Cited
US5448727A Cited
US5265065A Cited
US5421008A Cited
US5412804A Cited
US5377103A Cited
US5446885A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-11-19 2000-05-20 2000-11-19 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-11-19 2004-05-20 2004-11-19 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-11-19 2008-05-20 2008-11-19 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag