LLMpediaThe first transparent, open encyclopedia generated by LLMs

XMI

Generated by GPT-5-mini
Note: This article was automatically generated by a large language model (LLM) from purely parametric knowledge (no retrieval). It may contain inaccuracies or hallucinations. This encyclopedia is part of a research project currently under review.
Article Genealogy
Expansion Funnel Raw 61 → Dedup 0 → NER 0 → Enqueued 0
1. Extracted61
2. After dedup0 (None)
3. After NER0 ()
4. Enqueued0 ()
XMI
NameXMI

XMI is a standardized interchange format designed to serialize modeling information and metadata for exchange among modeling tools, repositories, and software engineering workflows. It is used to represent models created with modeling languages and frameworks, enabling interoperability between editors, version control systems, and transformation engines. XMI integrates with established modeling ecosystems and is often referenced alongside modeling specifications and enterprise modeling initiatives.

Overview

XMI was defined to enable interchange of models between modeling tools such as Rational Rose, Enterprise Architect (software), MagicDraw, Papyrus (software), and ArgoUML. It maps modeling constructs from languages standardized by Object Management Group specifications like UML and MOF into a serialization based on XML technologies such as XML Schema and XPath. XMI plays a role in integration scenarios involving repositories like EMF (Eclipse Modeling Framework), transformation frameworks like ATL (ATLAS Transformation Language), and code generation tools like Acceleo. XMI is referenced in tool chains that include build systems such as Maven and Gradle when model-driven artifacts are part of software delivery pipelines.

History and Development

XMI emerged from initiatives within the Object Management Group to harmonize model interchange across vendors and projects associated with UML and the Meta-Object Facility. Early development traces to efforts that involved vendors represented in consortia along with academic groups from institutions such as Eclipse Foundation projects and research groups at MIT, ETH Zurich, and University of California, Berkeley. Subsequent revisions aligned XMI with evolving versions of XML Schema and with successive releases of UML including UML 1.3, UML 2.0, and later profiles used in domains like SysML and MARTE. Industry adopters such as IBM, Oracle Corporation, Siemens, and Sparx Systems contributed use cases and test suites that influenced interoperability efforts and conformance testing activities.

Technical Specification

The XMI specification defines mappings from metamodel constructs specified in MOF (Meta-Object Facility) to XML infosets described by XML Schema Part 0 and related W3C XML recommendations. Key aspects include serialization of classes, attributes, associations, multiplicities, and stereotypes from languages like UML 2 into XML elements and attributes that conform to namespace strategies documented by W3C XML Namespaces. XMI outlines mechanisms for referencing reusable model fragments using URI strategies akin to XLink and integration with repository addressing schemes used by OSGi-based infrastructures and Eclipse workspaces. The specification addresses versioning semantics, change tracking metadata compatible with systems such as Subversion and Git, and extension points used by profiles like SysML and UML Profile for MARTE.

Implementations and Tools

Multiple modeling environments and frameworks provide XMI import/export capabilities. Implementations include XML serializers within Eclipse Modeling Framework, native exporters in commercial products like Enterprise Architect (software) and MagicDraw, and conversion utilities developed by organizations such as Object Management Group member companies. Tooling ecosystem components include validators using XML Schema processors from projects like Apache Xerces, transformation pipelines leveraging XSLT engines such as Saxon (software), and integration adapters for continuous integration servers like Jenkins. Interoperability test suites and example models published by vendors and consortia are used with model transformation tools like ATL and code generators like Acceleo to validate round-trip fidelity.

Use Cases and Applications

XMI is applied in scenarios where model portability matters: exchanging design artifacts between development teams using different editors such as Rational Rose and Papyrus (software), persisting models in model repositories like EMFStore and CPS (Cyber-Physical Systems) platforms, and enabling model-driven engineering workflows for domains including automotive industry standards, aerospace systems engineering with DO-178C considerations, and telecommunications specifications. It is also used to feed model transformation chains that produce artifacts for Eclipse-based toolchains, integration with Modelica tool environments via converters, and as an interchange medium for academic collaborations between groups at Stanford University, Carnegie Mellon University, and Imperial College London.

Compatibility and Interoperability

Interoperability of XMI-serialized artifacts depends on alignment of metamodel versions, namespace conventions, and tool-specific extensions; mismatches can occur between different implementations of UML 1.x and UML 2.x. Conformance programs and plug-in ecosystems from vendors such as IBM and Sparx Systems aim to reduce incompatibilities by providing documented profiles and exchange templates. Integration patterns often involve canonicalization steps using XSLT or transformation APIs in EMF (Eclipse Modeling Framework) and middleware like Apache Camel to mediate differences. Community resources, working groups at the Object Management Group, and testing initiatives among tool vendors continue to address interoperability gaps for stakeholders including enterprises, research labs, and standardization bodies like ISO.

Category:Model interchange formats