【问题标题】:Validate JSON against XML Schema (XSD)根据 XML Schema (XSD) 验证 JSON
【发布时间】:2016-07-09 06:09:25
【问题描述】:

是否可以在 Java 中使用 XSD 验证 JSON?我有一个接收 JSON 响应的应用程序,我想根据现有的 XSD 对其进行验证。我的应用程序的另一部分使用 XML,这就是为什么如果它们都可以针对现有 XSD 进行验证将是最简单的。

【问题讨论】:

  • 您必须将其转换为 xml 我认为...呃。随处使用 JSON :-)
  • 对于 json,最好生成一个类似于 xsd 的 json shema 并针对它进行验证。有第三方库可以根据模式验证 json,可能存在 Java 等。

标签: java json xml xsd xml-validation


【解决方案1】:

不,两者的标准不同。

但如果您真的想依赖 xsd 进行验证,Jsonix Schema Compiler 可以帮助您生成 JSON Schema 来验证您的 XML Schema 中的 json。

【讨论】:

    【解决方案2】:

    XML Schema (XSD) 用于验证XML;要验证JSON,请参阅JSON Schema

    我建议手动生成架构,以便完全理解和完全控制约束。但是,这里有一些可以快速启动流程的自动化工具:

    相关且非常有用:

    • 从 XML 解析为 JSON(解组)或将 JSON 序列化为 XML (元帅),见JSONIX
    • 有关实现列表,包括各种语言的验证器,请参阅JSON-Schema Implementations

    【讨论】:

    • 谢谢。根据 JSON 模式进行验证是否容易?
    • 一般来说,当然。请参阅JSON-Schema ImplementationsValidators 部分。
    • 您能详细说明为什么不能将 XSD 用于 JSON 吗?我想您可以将 JSON 转换为 XML,然后对照 XSD 检查 XML。除了 XML 中的原始文本,JSON 和 XML 只是具有属性和子元素的元素。
    • @ubiquibacon:当然,任何 XML 都可以使用 XSD 进行验证,包括使用我在答案中提到的方法从 JSON 自动转换的 XML。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-03
    • 2010-09-12
    • 2011-01-24
    • 1970-01-01
    相关资源
    最近更新 更多