US 9,811,543 B2
Systems and methods for generating schemas that represent multiple data sources
Rick Morrison, Palo Alto, CA (US); Jud Gardner, Palo Alto, CA (US); and Matthew Saffer, Palo Alto, CA (US)
Assigned to Comprehend Systems, Inc., Redwood City, CA (US)
Filed by Comprehend Systems, Inc., Redwood City, CA (US)
Filed on Mar. 24, 2015, as Appl. No. 14/667,272.
Application 14/667,272 is a continuation of application No. 13/251,149, filed on Sep. 30, 2011, granted, now 9,020,981.
Prior Publication US 2015/0199389 A1, Jul. 16, 2015
This patent is subject to a terminal disclaimer.
Int. Cl. G06F 17/30 (2006.01)
CPC G06F 17/30292 (2013.01) [G06F 17/30557 (2013.01); G06F 17/30542 (2013.01); G06F 17/30566 (2013.01); G06F 17/30864 (2013.01); G06F 17/30929 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method for generating a negotiated schema for multiple data sources, the method comprising:
interrogating multiple data sources via a computing device communicatively couplable with each of the multiple data sources, each of the multiple data sources including different, unknown types of data structures that define how data is stored in each data source, the interrogation of at least one of the data sources including:
comparing the unknown data structure of the data source to a plurality of schema templates,
determining a fuzzy template match between the unknown data structure and one or more of the plurality of schema templates based on the comparison, and
selecting a schema representing the unknown data structure that is a fuzzy template match between the unknown data structure and a schema template of one or more of the plurality of schema templates;
generating a negotiated schema by:
comparing the selected schemas of the multiple data sources to one another, the selected schemas including at least one schema representing the unknown data structure that is the fuzzy template match; and
interrelating data points of the multiple data sources that correspond to one another;
interrelating the negotiated schema with the selected schema for each of the multiple data sources based upon the interrelation of the data points; and
storing the negotiated schema in a storage media by way of the computing device.