我对Python还不熟悉,需要实现与会计工具的接口。我收到了一些描述接口的XSD文件。
有什么简单的方法可以根据XSD生成XML文件吗?是否有可用的模块?
我必须自己创建XML文件吗?然后通过XSD进行验证?我应该如何最好地进行操作?
python generateDS.py -o people.py -s peoplesubs.py people.xsd
读取XSD文件并创建多个类和子类。它生成许多数据结构以及用于访问和使用数据的getter和setter :) 如果有符合该XSD的XML文件,可以直接使用它进行读取
import people
rootObject = people.parse('people.xml')
在代码内部。更多信息请参考第12章。上述类还提供将数据导出为XML格式的方法。文档水平很好,强烈建议在未来的任何项目中使用它。
people.xsd
生成people.xml
来实现。 - rbaleksandarrootObject.export('people.xml')
。没有数据生成 XML 是不可能的。// 我喜欢这个答案,它指引我去使用一个非常完整且易于使用的框架。 - Daniel Alder在Github上有一些项目使用xmlschema库来实现这个功能,例如fortesp/xsd2xml或miaozn/xsd2xml (python2)。
例如使用前者:
xmlgenerator = XMLGenerator('resources/pain.001.001.09.xsd', True, DataFacet())
print(xmlgenerator.execute()) # Output to console
xmlgenerator.write('filename.xml') # Output to file
不幸的是,这些都没有正确打包。