Limitations of XMI
Whilst XMI is a valuable means of defining a UML model in a common format, it is relatively limited in the amount of additional information it can tolerate using the standard syntax.
Notes on Enterprise Architect
A lot of information from an Enterprise Architect model must be converted to Tagged Values, which import into other modeling systems as additional information or are ignored completely. Enterprise Architect can both generate and read:
- XMI 1.0 and 1.1 using UML 1.3 format
- XMI 1.2 using UML 1.4 format, and
- XMI 2.1 using UML 2.x format
Round-tripping model elements using XMI in Enterprise Architect is possible using XMI 1.1 or XMI 2.1; XMI 1.1 uses the additional Tagged Values to store the UML 2.x information - this ensures model completeness when round-tripping UML 2.x model elements using XMI 1.1.
Enterprise Architect exclusively uses XMI 1.1 for round-tripping models using Version Control.
Notes for Exporting to Rose and Other Tools
There are discrepancies in the Unisys/Rose implementation with regard to spelling mistakes and slightly different syntax to the official XMI 1.1 specification, so problems might occur. The way Packages are arranged in different models can impact successful import into other systems; experimentation is the only work around for this problem.
Some parts of the XMI import/export process do not work as expected in products like Rational Rose; for example, Note Links are not supported, and State Operations import but do not appear in diagrams. Rational Rose only supports import of a full project, not a single Package.
For best results, it is recommended that you keep the model elements to export to Rose simple and that they conform as closely as possible to the UML 1.3 specification.