The document discusses metamodeling and its use in the MDA framework. It defines key terms like model, language, metamodel, and metalanguage. A metamodel is a model that defines the constructs and rules of a modeling language. It allows unambiguous definition of languages so transformation tools can process models. Transformation rules in a definition reference the source and target metamodels to specify how one model transforms to another. Metamodeling provides the mechanism to formally define modeling languages in MDA.