我有各种XML模式,其中包含许多全局元素:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="B">
...
</xs:element>
<xs:element name="C">
...
</xs:element>
<xs:element name="X">
...
</xs:element>
<xs:element name="F">
...
</xs:element>
<xs:element name="A">
...
</xs:element>
</xs:schema>
是否有免费工具可以根据名称按字母顺序对元素进行排序?这样,比较和合并模式会更容易。结果应如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="A">
...
</xs:element>
<xs:element name="B">
...
</xs:element>
<xs:element name="C">
...
</xs:element>
<xs:element name="F">
...
</xs:element>
<xs:element name="X">
...
</xs:element>
</xs:schema>
答案 0 :(得分:0)
一种简单的方法是编写一个XSLT样式表,对模式文档执行近似标识转换,并对相应的apply-templates进行排序。有许多免费的XSLT实现。
答案 1 :(得分:0)
我想到了另一种做法:
通过DOM导入XML,重新排列根节点下的节点,然后将其写回XML文件。