approach is based on the utilization of a language to write metamodels called the Meta Object Facility or MOF. Typical metamodels proposed by OMG are UML, SysML, SPEM or CWM. ISO has also published the standard metamodel ISO/IEC 24744. All the languages presented below could be defined as MOF metamodels. Metadata modeling Metadata modeling is a type of metamodeling used in software engineering and systems engineering for the analysis and construction of models applicable and useful to some predefined class of problems. (see also: data modeling). Model transformations One important move in model-driven engineering is the systematic use of model transformation languages. The OMG has proposed a standard for this called QVT for Queries/Views/Transformations. QVT is based on the meta-object facility (MOF). Among many other model transformation languages (MTLs), some examples of implementations of this standard are AndroMDA, VIATRA, Tefkat, MT, ManyDesigns Portofino. Relationship to ontologies Meta-models are closely related to ontologies. Both are often used to describe and analyze the relations between concepts Ontologies: express something meaningful within a specified universe or domain of discourse by utilizing a grammar for using vocabulary. The grammar specifies what it means to be a well-formed statement, assertion, query, etc. (formal constraints) on how terms in the ontology’s controlled vocabulary can be used together. Meta-modeling: can be considered as an explicit description (constructs and rules) of how a domain-specific model is built. In particular, this comprises a formalized specification of the domain-specific notations. Typically, metamodels are – and always should follow - a strict rule set. "A valid metamodel is an ontology, but not all ontologies are modeled explicitly as metamodels". Types of metamodels For software engineering, several types of models (and their corresponding modeling activities) can be distinguished: Metadata modeling (MetaData model) Meta-process modeling (MetaProcess model) Executable meta-modeling (combining both of the above and much more, as in the general purpose tool Kermeta) Model transformation language (see below) Polynomial metamodels Neural network metamodels Kriging metamodels Piecewise polynomial (spline) metamodels Gradient-enhanced kriging (GEK) Zoos of metamodels A library of similar metamodels has been called a Zoo of metamodels. There are several types of meta-model zoos. Some are expressed in ECore. Others are written in MOF 1.4 – XMI 1.2. The metamodels expressed in UML-XMI1.2 may be uploaded in Poseidon for UML, a UML CASE tool. See also Business reference model Data governance Model-driven engineering (MDE) Model-driven architecture (MDA) Domain Specific Language (DSL) Domain-Specific