【发布时间】:2014-04-28 18:13:30
【问题描述】:
我想知道是否可以在元素树中向上或向下移动 xml 元素。
输入的xml。
<ROOT>
<A1>A</A1>
<B1>B</B1>
<C1>C</C1>
<D1>D</D1>
</ROOT>
所需的输出 xml。
<ROOT>
<A1>A</A1>
<D1>D</D1>
<B1>B</B1>
<C1>C</C1>
</ROOT>
XSD 序列规则
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="ROOT">
<xs:complexType>
<xs:sequence>
<xs:element type="xs:string" name="A1"/>
<xs:element type="xs:string" name="D1"/>
<xs:element type="xs:string" name="B1"/>
<xs:element type="xs:string" name="C1"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
谁能提供一些 XSLT 示例来做这样的事情?提前感谢您的帮助。
【问题讨论】:
-
节点顺序在 XML 中通常无关紧要。如果是这样,你可能做错了什么。你的模式说什么?另外,您的问题未详细说明。确定所需顺序的确切规则是什么?
-
感谢您的回复。实际上,我有 XSD,它具有元素序列,因此转换后的 XML 失败,这就是我希望以特定顺序输出 XML 的原因。
-
更新和说明应编辑到原始帖子中,以匹配 SO 的问答格式。评论不用于讨论。请添加一个示例 XSD 以显示同级顺序的必要性以及顺序是什么。
-
Hello Outis,添加了序列规则。
-
这个问题与您的其他问题stackoverflow.com/questions/23343204/… 有什么关系?它们听起来确实很相似。
标签: xslt-1.0