1. A data processing system, comprising: a processor; and a memory coupled to the processor, the memory configured to store program instructions executable by the processor to cause the data processing system to: receive a collection of values from a user; identify a data type for each of the values; identify datasets that correspond to the data types, each data set having one or more of the data types; identify relationships among the datasets, the relationships corresponding to links between similar data types in different datasets; and provide a list of proposed groups of datasets, wherein the datasets within each proposed group linked to each other through one or more relationships.