我有这样的简单xml:
<?xml version="1.0" encoding="UTF-8"?>
<xmi:XMI xmi:version="2.1" xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" xmlns:mdmi="http://schema.omg.org/spec/MDMI/1.0">
<xmi:Documentation
xmi:exporter="Firestar MDMI Tool" xmi:exporterVersion="1.0">
</xmi:Documentation>
</xmi:XMI>
我创建了 xsd:
<?xml version="1.0" encoding="utf-16"?>
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://schema.omg.org/spec/XMI/2.1">
<xs:element name="XMI">
<xs:complexType>
<xs:sequence>
<xs:element name="Documentation">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute type="xs:string" name="exporter"/>
<xs:attribute type="xs:string" name="xmi:exporterVersion"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute type="xs:float" name="version"/>
</xs:complexType>
</xs:element>
</xs:schema>
然后生成使用 JAXB 的 java 类。并使用解组。
几乎一切正常,但exporterVersion
没有从 xml 中提取字段。
我尝试使用导入命名空间。但是如果设置attributeFormDefault="qualified"
属性导出器没有被拉起,什么也不会发生