OMG XMI Specification
The XML Metadata Interchange (XMI) is an Object Management Group (OMG) standard for exchanging metadata information via Extensible Markup Language (XML).
It can be used for any metadata whose metamodel can be expressed in Meta-Object Facility (MOF).
The most common use of XMI is as an interchange format for UML models, although it can also be used for serialization of models of other languages (metamodels).
In the OMG vision of modeling, data is split into abstract models and concrete models. The abstract models represent the semantic information, whereas the concrete models represent visual diagrams. Abstract models are instances of arbitrary MOF-based modeling languages such as UML or SysML. For diagrams, the Diagram Interchange (DI, XMI[DI]) standard is used. At the moment there are several incompatibilities between different modeling tool vendor implementations of XMI, even between interchange of abstract model data. The usage of Diagram Interchange is almost nonexistent. Unfortunately this means exchanging files between UML modeling tools using XMI is rarely possible.
One purpose of XML Metadata Interchange (XMI) is to enable easy interchange of metadata between UML-based modeling tools and MOF-based metadata repositories in distributed heterogeneous environments. XMI is also commonly used as the medium by which models are passed from modeling tools to software generation tools as part of model-driven engineering.
Integration of industry standards
XMI integrates four industry standards:
- XML - Extensible Markup Language, a W3C standard.
- UML - Unified Modeling Language, an OMG modeling standard.
- MOF - Meta Object Facility, an OMG language for specifying metamodels.
- MOF Mapping to XMI
The integration of these four standards into XMI allows tool developers of distributed systems to share object models and other metadata.
Several versions of XMI have been created: 1.0, 1.1, 1.2, 2.0 and 2.1. The 2.x versions are radically different from the 1.x series. The current version is 2.1.1, dated December 2007.
There are now other XML standards for representing metadata. One of the most recent is the Web Ontology Language (OWL) (Dubious - citation?? Ontologies are a very specialized kind of metadata: OWL has no built-in support for most of the information represented in UML). OWL is built upon the Resource Description Framework (RDF).
Full article ▸