现状 (2018-10-12)#
- 当前的 Windows 和 Linux 构建脚本会执行 schemaCheck.py 作为常规工具测试的一部分,结果可在每日构建页面上查看(例如,请参见 64 位 Linux 工具测试页面末尾的模式检查测试)。
- 该脚本使用 lxml(如果可用)或 Sax2Count(仅在 Windows 上)。后者随 Xerces Windows 二进制发行版一起提供。
- 仅检查在根元素中具有模式声明且属于以下类型(并符合以下命名方案)的文件:
- netconvert 输入
- 边 "*.edg.xml"
- 节点 "*.nod.xml"
- 连接 "*.con.xml"
- 类型 "*.typ.xml"
- sumo 网络 "*.net.xml", "net.netgen", "net.netconvert"
- 路线文件 "*.rou.xml", "routes.duarouter", "alts.duarouter", "routes.jtrrouter" 包括 vehroutes 输出
- 附加文件 "*.add.xml"
- 配置文件 "*.????cfg"
- sumo 原始转储 (netstate), 检测器 (e1 和 e2) 以及边数据 (net, emissions 和 noise) 输出
- netconvert 输入
- 可以为配置生成 XML 模式(命令行选项 --save-schema <FILE>)
- 可以使用 --xml-validation 为所有二进制可执行文件配置 XML 验证
便携式测试应用程序(仅作参考)#
2009年10月28日:我对使用 Python 验证 XML 文件的可能工具进行了简短搜索。似乎主要使用两个:
其他候选:
简短比较:
| lxml | XSV | xmlproc | minixsv | |
|---|---|---|---|---|
| 执行类型 | 库 | 应用程序 | 库 | 库 |
| 依赖项 | libxml 2.6.21 或更高版本, libxslt 1.1.15 | ? | ? | genxmlif |
