如何将任何 UML/XMI 文件导入 StarUML?

Spe*_*_k9 5 documentation uml staruml xmi visual-paradigm

我正在尝试导入我在名为 Visual Paradigm 的程序中设计的 UML 图表(来自 C++ 项目)。

这个程序允许我以各种格式保存 UML 图

图片)

当我选择 XMI 格式(由 StarUML 通过扩展支持)时,它允许我选择 XMI 版本来保存文件

图片

当我尝试在 StarUml 中导入文件时出现问题:当我尝试加载来自 VP 的 XMI 文件(我尝试了每个版本)时,它显示“加载文件失败”;

图片

另一方面,如果我将图表保存为 UML2 格式,然后尝试打开它,StarUML 将什么也不做。

你有什么建议来解决这个问题吗?

这是一个 zip 存档,其中包含另一个更简单的项目,其中包含 Visual Paradigm 生成的源代码和 XMI 文件(不同版本):Project.rar

小智 3

在 StarUML Github Issues 中,有一些与您的问题非常相似的问题。

我遇到了同样的问题,建议的解决方法对我有用,搜索文件“xmi-reader.js”,然后在函数“loadFromFile”中更改该行:

var XMINode = dom.getElementsByTagName('XMI')[0]
Run Code Online (Sandbox Code Playgroud)

var XMINode = dom.getElementsByTagName('xmi:XMI')[0]
Run Code Online (Sandbox Code Playgroud)

将命名空间“xmi:”添加到元素的名称中使其可以工作。

根据您的 StarUML 版本,文件名可能是 xmi21-reader.js 。