使用Python将XMI文件转换为XML文件
我需要把一个活动图的xmi格式转换成xml格式。请问用python可以做到这个转换吗?有没有工具可以把xmi文件转换成xml呢?
3 个回答
1
你可以从任何 file.xmi
文件中获取你需要的信息,比如类和属性等等。这个 文档 可能会对你有帮助。
from xml.dom import minidom
xmldoc = minidom.parse('file.xmi')
for element in xmldoc.getElementsByTagName("UML:Class"):
print(" -> UML:Class ",element.getAttribute('name'))
for a in element.getElementsByTagName("UML:Attribute"):
print(" -> UML:Attr : ",a.getAttribute('name'))
1
正如Ignacio所说,问题可能不是目标工具需要XML格式,而是它可能需要一种不同的XMI格式。
不幸的是,每个工具对XMI标准的理解都不一样,所以两个建模工具很可能会为同一个模型生成两个不兼容的XMI文件。你可以在这篇文章中看到一个例子,标题是"一次建模,随处打开,这根本不是真的"。
1
把XML转换成XML的过程通常叫做 XML转换。在Python中,你可以使用 libxsltmod 来通过使用XSLT样式表来进行XML转换。