El intercambio de metadatos XML ( XMI ) es un estándar de Object Management Group (OMG) para intercambiar información de metadatos a través del lenguaje de marcado extensible (XML) .
Se puede utilizar para cualquier metadato cuyo metamodelo pueda expresarse en Meta-Object Facility (MOF) , un modelo independiente de la plataforma (PIM).
El uso más común de XMI es como formato de intercambio para modelos UML , aunque también se puede utilizar para la serialización de modelos de otros lenguajes (metamodelos).
En la visión de modelado de OMG , los datos se dividen en modelos abstractos y modelos concretos. Los modelos abstractos representan la información semántica, mientras que los modelos concretos representan diagramas visuales. Los modelos abstractos son instancias de lenguajes de modelado basados en MOF arbitrarios, como UML o SysML . Para los diagramas, se utiliza el estándar Diagram Interchange (DI, XMI[DI]). Actualmente, existen varias incompatibilidades entre las implementaciones de XMI de diferentes proveedores de herramientas de modelado, incluso entre el intercambio de datos de modelos abstractos. El uso de Diagram Interchange es casi inexistente. Esto significa que el intercambio de archivos entre herramientas de modelado UML que utilizan XMI rara vez es posible.
Uno de los objetivos del intercambio de metadatos XML (XMI) es permitir un intercambio sencillo de metadatos entre herramientas de modelado basadas en UML y repositorios de metadatos basados en MOF en entornos heterogéneos distribuidos. XMI también se utiliza habitualmente como medio mediante el cual los modelos se pasan de las herramientas de modelado a las herramientas de generación de software como parte de la ingeniería basada en modelos .
Hay ejemplos de XMI y listas de etiquetas XML que componen archivos con formato XMI disponibles en el documento de especificación de la versión 2.5.1. [1]
XMI integra 4 estándares de la industria:
La integración de estos 4 estándares en XMI permite a los desarrolladores de herramientas de sistemas distribuidos compartir modelos de objetos y otros metadatos.
Se han creado varias versiones de XMI: 1.0, 1.1, 1.2, 2.0, 2.1, 2.1.1, 2.4, 2.4.1, 2.4.2 y 2.5.1. Las versiones 2.x son radicalmente diferentes de la serie 1.x.
El proyecto Diagram Definition OMG es otra alternativa para el intercambio de metadatos, que también puede expresar el diseño y la representación gráfica. [2]
XMI es un estándar internacional: