Knowledge Discovery Metamodel (KDM) is a publicly available specification from the Object Management Group (OMG).
The goal of KDM is to ensure interoperability between tools for maintenance, evolution, assessment and modernization.
KDM is defined as a metamodel that can be also viewed as an ontology for describing the key aspects of knowledge related to the various facets of enterprise software.
It provides a high-fidelity intermediate representation which can be used, for example, for performing static analysis of existing software systems.
KDM packages are arranged into the following four layers: The KDM Infrastructure Layer consists of the Core, kdm, and Source packages which provide a small common core for all other packages, the inventory model of the artifacts of the existing system and full traceability between the meta-model elements as links back to the source code of the artifacts, as well as the uniform extensibility mechanism.