System and method for performing similarity searching
AssigneeInfoglide Corporation
InventorsDavid B. Wheeler, Matthew J. Clay
Life of this patent
Estimating the term…
Abstract
The present invention is a computer-implemented method for detecting and scoring similarities between documents in a source database and a search criteria. It uses a hierarchy of parent and child categories to be searched, linking each child category with its parent category. Source database documents are converted into hierarchical database documents having parent and child objects with data values organized using the hierarchy of parent and child categories to be searched. For each child object, a child object score is calculated that is a quantitative measurement of the similarity between the hierarchical database documents and the search criteria. A parent object score is computed from its child object scores using an algorithm.
Claims93
A computer implemented method for detecting and scoring similarities between documents in a source database and a search criteria comprising:
- a. using a hierarchy of parent and child categories to be searched in a schema created by a user, linking each child category with its parent category by assigning an index to connect each child category with its parent category and assigning an entry in a data structure called a data band to each child category that contains no children categories;
- b. converting source database documents into hierarchical database documents having parent and child objects with data values organized using the hierarchy of parent and child categories to be searched;
- c. for each child object, calculating a child object score that is a quantitative measurement of the similarity between the hierarchical database documents and the search criteria;
- and
- d. computing a parent object score from its child object scores.
A computer implemented method for detecting and scoring similarities between documents in a source database and a search criteria comprising:
- a. using a schema created by a user containing a hierarchy of parent and child categories for searching, linking each child category with its parent category by assigning an index to connect each child category with its parent category and assigning an entry in a data structure called a data band to each child category that contains no children categories;
- b. converting each document within the source database into a hierarchical database having a data structure of parent and child objects, and an indexing structure linking each child object to its parent object;
- c. for each child object in the hierarchical database, populating the data structure with the data values from each child object and linking the child object to its parent object using the indexing structure;
- and
- d. using a query that contains the similarity search criteria:
- i. for each data value in each child object, calculating a data value score that is a quantitative measurement of the similarity between the data value and the search criteria of the query;
- ii. determining a child object score using the data value scores;
- iii. computing a parent object score from its child object scores.
A system for detecting and scoring similarities between items in a source database and a search criteria comprising:
- a. at least one client computer having a graphical user interface for entering client commands including schemas, importing documents to be searched, and entering a similarity search query;
- b. a network interconnecting the client computer to a similarity search engine computer comprising:
- i. a search engine compiler for compiling client commands received from the client computer;
- ii. a virtual machine for executing the client commands;
- iii. a document comparison means for executing document comparison commands;
- iv. a file storage and services function for processing document data and storing schemas, data types, document data and entries in a data structure called a data band assigned to child categories that contain no children categories;
- and
- c. a data storage device for storing search engine data, document data and relative identifiers.
A system for detecting and scoring similarities between items in a source database and a search criteria comprising:
- a. a client computer for:
- i. defining a schema by a user containing a hierarchy of parent and child categories to be searched;
- ii. importing and translating the source database into a hierarchical database using the schema;
- iii. defining a query that contains similarity search criteria;
- iv. sending commands for steps i. through iii. to a similarity search engine computer;
- b. a similarity search engine computer comprising:
- i. a compiler for compiling commands from the client computer;
- ii. a virtual machine for:
- 1. organizing parent and child categories into a data structure and creating an indexing structure that links the child categories of the schema with its parent category;
- 2. converting each document in the source database into a hierarchical database having parent and children objects corresponding to the schema defined hierarchy of parent and children categories;
- 3. for each child object in the hierarchical database, populating the data structure with the data values and linking the child object to its parent object using the indexing structure;
- and
- 4. using a query that contains the similarity search criteria:
- (a) calculating a data value score for each child object having a value in a range between a minimum score and a maximum score that is a quantitative measurement of the similarity between the query and the child object;
- (b) determining a child object score using the data value scores;
- (c) computing a parent object score from its child objects;
- iii. a document comparison means for executing document comparison commands;
- iv. a file storage and services function for
- 1. creating a document table for storing hierarchical database documents when they are imported into the similarity search engine computer;
- 2. creating a relative identification to system identification table to map between relative identifiers and primary keys in the hierarchical database;
- and
- c. a database for
- i. storing the document table and relative identifiers for the database documents;
- ii. storing data bands and relation bands;
- iii. storing a table of relative identifiers.
A computer implemented method for detecting and scoring similarities between documents comprising:
- a. annotating a fist document in a hierarchical format with similarity measures, weights and a choice algorithm which becomes a query;
- b. using the query having query leaf nodes containing search criteria that correspond to the categories to be searched;
- c. using the search criteria in each query leaf node to search a second document in a hierarchical format having parent and child objects, wherein an entry is assigned in a data structure called a data band to each child category that contains no children categories;
- d. if a child object corresponding to a query leaf node category is found in the second document, calculating a child object similarity score that is a quantitative measurement of the similarity between the child object and the search criteria in the leaf node and saving the child object score;
- e. computing a parent object score from its children object scores using a parent object scoring algorithm;
- and
- f. repeating steps b through e until all query leaf nodes are processed.
A computer-readable medium containing instructions for detecting and scoring similarities between documents in a source database and a search criteria comprising:
- a. using a hierarchy of parent and child categories to be searched in a schema created by a user, linking each child category with its parent category by assigning an index to connect each child category with its parent category and assigning an entry in a data structure called a data band to each child category that contains no children categories;
- b. converting source database documents into hierarchical database documents having parent and child objects with data values organized using the hierarchy of parent and child categories to be searched;
- and
- c. using a query that contains the search criteria, for each child object, calculating a child object score that is a quantitative measurement of the similarity between the hierarchical database documents and the search criteria;
- and
- d. computing a parent object score from its child object scores.
Dependencies are inferred from the claim text.