XMLBeans中丢失了已解析元素的顺序

时间:2009-06-10 12:41:33

标签: java xml xmlbeans

我的XML结构有点像这样:

<root>
    <a/>
    <b/>
    <b/>
    <a/>
    <a/>
</root>

我的XSD看起来像这样:

<xs:element name="root">
    <xs:complexType>
        <xs:sequence>
            <xs:choice maxOccurs="unbounded">
                <xs:element ref="a"/>
                <xs:element ref="b"/>
            </xs:choice>
        </xs:sequence>
    </xs:complexType>
</xs:element>

<xs:element name="a" type="xs:string" />
<xs:element name="b" type="xs:string" />

即。我有两个不同子标签的随机序列。

使用XMLBeans我得到一个带有访问方法的Root对象:     getAArray(),getBArray()

这是我的问题:
标签按名称分组,原始顺序(a,b,b,a,a)丢失 但我需要知道这些元素的顺序

使用XMLBeans执行此操作的最佳/最简单方法是什么?

2 个答案:

答案 0 :(得分:5)

尝试

xml.selectPath("./*")

答案 1 :(得分:1)

好吧,我明白了。 XmlObject的selectPath方法返回一个对象数组,因此它给出了序列。