1. A method for schema integration, the method comprising: recasting a first source schema into a first graph of concepts with HasA relationships; recasting a second source schema into a second graph of concepts with HasA relationships; identifying matching concepts in the first graph and the second graph based on correspondences between attributes of the concepts of the first and second graphs; enumerating the first graph of concepts and the second graph of concepts to output a plurality of integrated schemas that consider choices of concepts that merge and concepts that do not merge; applying enumeration constraints to determine how the concepts merge; producing an integrated schema from the plurality of integrated schemas, based on a fixed specification of matching concepts to merge; and generating a mapping from the first source schema to the integrated schema and from the second source schema to the integrated schema.