是否有工具通过Java从XML模式生成JSON模式?

是否有人知道我们可以通过Java从XML模式或XML模式生成JSON模式的工具或方法?

它不是很优雅,但是jackson可以从java类生成json模式 。 因此,您可以使用xml架构, 使用jaxb注释从中生成java类 ,然后从中生成json架构,因为jackson支持jaxb注释 。

如果您可以获得与Schema匹配的POJO(例如使用xjc),则可以使用Jackson生成JSON Schema(请参阅ObjectMapper.generateSchema(…) )。

我希望您能够编写一个XSLT脚本,该脚本可以非常轻松地从XML模式生成JSON结构。 这是有效的,因为XSLT非常乐于阅读和转换XML,而XML模式只是XML。

走另一条路会有点困难。 您需要能够读取JSON模式并吐出XML的东西。 为此,您需要一个解析器,并且可能构建解析的AST。 通过它和树步行,您可以非常轻松地生成XML模式。

ANTLR可以让你轻松定义语法,构建解析器和AST。 它有一些“结构化文本”生成器,可以用于行走AST。

我们的DMS软件再造工具包就像ANTLR,但有更多的机器。 使用DMS,您可以定义JSON语法,构建AST,然后编写源到源转换器以将其映射到表示您的架构的XML。

例如,CXF可以在Json或XML中提供请求,因此它必须有一种方法来转换这两者。

将XML转换为JSON非常简单,可以通过多种方式完成:

http://answers.oreilly.com/topic/278-how-to-convert-xml-to-json-in-java
http://www.json.org/javadoc/org/json/XML.html#toJSONObject%28java.lang.String%29

对于从XML转换为JSON的看法,这看起来很简单:

http://www.bramstein.com/projects/xsltjson/
http://code.google.com/p/xml2json-xslt/
http://json-lib.sourceforge.net/index.html

还有http://x-stream.github.io/库,它允许您在两侧进行转换(也适用于POJO)。 您可以在此处找到简单的示例用法: 将XML转换为JSON格式

/编辑:ups,看起来我没有正确理解问题:P