2

我真的只需要能够验证我收到的 XMI 文件是否符合 OMG 设置的 XMI 标准。

例如,

我有一个像这样开头的文件......

<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmlns:uml="http://www.omg.org/spec/UML/20090901" xmlns:xmi="http://www.omg.org/spec/XMI/20100901" xmlns:StandardProfileL3="http://schema.omg.org/spec/UML/2.3/StandardProfileL3.xmi"  xmlns:StandardProfileL2="http://schema.omg.org/spec/UML/2.3/StandardProfileL2.xmi" xmi:version="2.4" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.omg.org/spec/XMI/20100901 file:///D:/data/tools/Altova/XMI.xsd">
    <xmi:Documentation exporter="Altova" exporterVersion="1.0"/>
    <uml:Model xmi:id="eee_1045467100313_135436_1" name="Data" visibility="public">
        <ownedComment xmi:type="uml:Comment" xmi:id="_17_0_8ce027f_1306433568482_126880_1517" body="Created:6/26/11 3:32">

第一部分验证得很好,但是一旦到达 uml:Model 就会引发错误。我查看了 OMGs 网站,但找不到验证 UML 部分的模式。我需要自己写一个吗?我做对了吗,我以前没有任何过期,一些工作要求不允许我有时间正确地教育自己。感谢任何和所有帮助/建议!提前致谢!

4

2 回答 2

1

我正在寻找一些用于 OMG-UML-Validation 的模式文件,但也没有找到任何东西。在官方 OMG 网站上只有 pdf/ps 中的 Xml 示例和规范。

从您给定的 XML 中,很明显没有为 UML 声明命名空间。

uml 的命名空间在 xml 的根元素中定义。

<xmi:XMI xmlns:uml="http://www.omg.org/spec/UML/20090901" [...]>
于 2011-12-17T14:27:39.337 回答
0
<uml:Model xmi:id="eee_1045467100313_135436_1" name="Data" visibility="public">

从您给定的 XML 中,很明显没有为 UML 声明命名空间。

所以总结是,你接收的xml是无效的。

希望它会有所帮助。

于 2011-06-16T16:18:58.010 回答