从XSD生成Go结构体

13
最近我计划使用Go做一个项目。我的问题是: 给定一个XSD文件,如何自动生成Go结构体以表示XML元素。 类似于使用'xjc'从XSD生成Java类。 那么,在Go中有没有工具或包可以做到这一点呢?
谢谢!

1
请查看 https://github.com/csimplestring/xsd-2-go 我刚刚自己制作了一个工具,该工具可以从xsd文件生成带有XML标签的Golang结构体。 - user2912044
2个回答

10

1
go-xsd 自 2013 年起便已被放弃,不再能进行编译。例如请参见 issue #37 - rustyx

5

我开始编写 github.com/ivarg/goxsd 来生成XML结构体的XSD规范。虽然相对于XSD模式参考文献它仍然不完整,但它可以覆盖一些最常见的用例。也许它对别人有用。

目前,它是以命令行方式运行,或作为源文件中的go generate语句运行。它生成格式化的代码,并提供以下选项:

  • 生成已导出或未导出的XML结构体
  • 为输出文件命名(默认为标准输出)
  • 指定包名称

它目前仅处理本地文件系统中的XSD模式文件,不处理命名空间(它们被忽略),也不生成验证代码。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接