我正在尝试编写一个
python脚本来标准化通用
XML文件,用于配置网站和网站表单.但是要做到这一点,我想维护元素的原始属性排序,或者甚至更好地能够以预定义的方式重新排列它们.目前我尝试过的大多数xml解析器都将属性顺序重写为字母数字.由于这些XML文件是人工读/写和维护的,因此这不太有用.
例如,通用元素在XML中可能如下所示;
但是,一旦通过elementtree并重新写入新文件,这将更改为:
由于脚本的目标是标准化大量XML文件以增加同事之间的可读性,并且元素属性中包含的信息具有不同的重要性(例如,QuestionRef非常重要),表明属性需要明智地下令.
我理解python dicts(存储在哪些属性中)自然是无序的,XML规范状态属性排序是无关紧要的,但是这个人的可读性因素是脚本背后的驱动力.
在其他问题(在Stack Overflow上)类似于我已经看到它注意到pxdom可以做到这一点(问题链接:link),但我找不到任何提及如何在pxdom文档或使用谷歌搜索这样做.那么是否有某种方法来维护属性的顺序或使用当前的XML解析器定义它?最好不要求助于hotpatching :)!
任何人都可以提供的帮助将非常感激:).