1. A method for joining data elements from two or more datasets stored in at least one data storage system, the method performed by one or more processors and including: determining matches between one or more variants of objects in first data elements from a first dataset and objects in second data elements from a second dataset, with a variant being in accordance with a variant relation between one or more of the objects in the first data elements from the first dataset and one or more of the objects in the second data elements from the second dataset; evaluating respective second data elements having respective objects determined as matches; joining at least one of the first data elements from the first dataset with at least one of the second data elements from the second dataset to produce a third data element, with the joining based on the evaluation of the respective second data elements; and outputting a third dataset including at least a portion of the first data set combined with at least a portion of the second dataset, with the third dataset including one or more third data elements produced by joining.