Merging objects in a facts database
First Claim
Patent Images
1. A computer-implemented method, comprising:
- accessing a set of objects, each object having a name and a set of one or more attribute-value pairs;
identifying a candidate attribute in the attribute-value pairs;
identifying a candidate subset of the set of objects, each object of the candidate subset including a respective attribute-value pair having the candidate attribute;
selecting the candidate attribute as a key attribute of the set of objects when the attribute-value pairs in the candidate subset of objects meet predefined criteria with respect to the names of the objects in the candidate subset of objects;
identifying a first subset of the set of objects, each object in the first subset including a respective attribute-value pair having the key attribute;
identifying a second subset of the first subset, the objects in the second subset having a same value as the respective attribute-value pair having the key attribute and having a same or similar name;
merging the objects in the second subset to form a single object that includes attribute-value pairs from the objects in the second subset, including at least one attribute-value pair that has an attribute other than the key attribute; and
storing in a database information related to the selected key attribute.
2 Assignments
0 Petitions
Accused Products
Abstract
A key attribute may be selected for a set of objects in a fact repository. A candidate attribute is identified and objects having an attribute-value pair with the candidate attribute are gathered. The candidate attribute is selected as a key attribute if the names of the gathered objects and the values of the objects for the candidate attribute satisfy predefined criteria. For instance, objects may be merged into one object if they have same or similar names and have the same value for a key attribute.
-
Citations
12 Claims
-
1. A computer-implemented method, comprising:
-
accessing a set of objects, each object having a name and a set of one or more attribute-value pairs; identifying a candidate attribute in the attribute-value pairs; identifying a candidate subset of the set of objects, each object of the candidate subset including a respective attribute-value pair having the candidate attribute; selecting the candidate attribute as a key attribute of the set of objects when the attribute-value pairs in the candidate subset of objects meet predefined criteria with respect to the names of the objects in the candidate subset of objects; identifying a first subset of the set of objects, each object in the first subset including a respective attribute-value pair having the key attribute; identifying a second subset of the first subset, the objects in the second subset having a same value as the respective attribute-value pair having the key attribute and having a same or similar name; merging the objects in the second subset to form a single object that includes attribute-value pairs from the objects in the second subset, including at least one attribute-value pair that has an attribute other than the key attribute; and storing in a database information related to the selected key attribute. - View Dependent Claims (2, 3, 4)
-
-
5. A computer system for processing objects, comprising:
-
memory; one or more processors; and one or more modules, stored in the memory and executed by the one or more processors, the modules having instructions; to access a set of objects, each object having a name and a set of one or more attribute-value pairs; to identify a candidate attribute in the attribute-value pairs; to identify a candidate subset of the set of objects, each object of the candidate subset including a respective attribute-value pair having the candidate attribute; to select the candidate attribute as a key attribute of the set of objects when the attribute-value pairs in the candidate subset of objects meet predefined criteria with respect to the names of the objects in the candidate subset of objects; to identify a first subset of the set of objects, each object in the first subset including a respective attribute-value pair having the key attribute; to identify a second subset of the first subset, the objects in the second subset having a same value in the respective attribute-value pair having the key attribute and having a same or similar name; to merge the objects in the second subset to form a single object that includes attribute-value pairs from the objects in the second subset, including at least one attribute-value pair that has an attribute other than the key attribute; and to store information related to the selected key attribute in a database. - View Dependent Claims (6, 7, 8)
-
-
9. A computer program product for use in conjunction with a computer system, the computer program product comprising a computer readable storage medium and a computer program mechanism embedded therein, the computer program mechanism comprising instructions for:
-
accessing a set of objects, each object having a name and a set of one or more attribute-value pairs; identifying a candidate attribute in the attribute-value pairs; identifying a candidate subset of the set of objects, each object of the candidate subset including a respective attribute-value pair having the candidate attribute; selecting the candidate attribute as a key attribute of the set of objects when the attribute-value pairs in the candidate subset of objects meet predefined criteria with respect to the names of the objects in the candidate subset of objects; identifying a first subset of the set of objects, each object in the first subset including a respective attribute-value pair having the key attribute; identifying a second subset of the first subset, the objects in the second subset having a same value in the respective attribute-value pair having the key attribute and having a same or similar name; merging the objects in the second subset to form a single object that includes attribute-value pairs from the objects in the second subset, including at least one attribute-value pair that has an attribute other than the key attribute; and storing in a database information related to the selected key attribute. - View Dependent Claims (10, 11, 12)
-
Specification