如何将XSD转换为Python类

52 投票
5 回答
69509 浏览
提问于 2025-04-15 12:37

我只是想知道有没有什么程序可以把XSD文件转换成Python类,就像JAXB对Java做的那样?

5 个回答

9

对于现在(2021年)看到这个问题的人,我建议你去看看 xmlschema

我试过上面提到的那些建议(尽管有结束支持的警告),但是体验并不好。后来我发现了xmlschema,只用了3行代码就解析了我的数据,包括导入的那一行。

>> import xmlschema
>> data_schema = xmlschema.XMLSchema('my_schema.xsd')
>> data=data_schema.to_dict('my_data.xml')

导入的数据是一个嵌套的字典,里面的键和值都和模式匹配。太棒了!

11

xsdata 是一个工具,它可以根据 XSD 文件生成 数据类。根据 文档 的介绍,这个工具的灵感来自于 JAXB。

45

generateDS : 我觉得这是我需要的好工具

补充:其实,generateDS做得非常好!!它可以生成包含所有方法的Python类(包括设置值和获取值的方法,还有导出到XML和从XML导入的功能)。它运行得非常顺利!

撰写回答