如何针对XSD模式验证JSON

时间:2018-07-16 05:02:30

标签: json xml architecture xsd

我知道标题听起来不可能,请再说一遍。我们有一个由开放标准行业组织创建的XSD模式。在我们的服务中,我们希望客户在提供数据时能够使用JSON或XML。在这种情况下,最佳做法是什么?

  1. 将JSON有效负载转换为XML并针对XSD进行验证。

  2. 将XSD转换为JSON模式,并根据自己的模式验证每种内容类型

  3. 将XSD转换为基于语言规范的类,并在代码中进行模式验证,然后在api中间件中处理内容协商

  4. 秘密超级选项

FWIW,这些XSD架构并不是太琐碎:〜4000行长,多个命名空间,它们之间共享六个共同的架构。更改很少(每2年更改一次),但是新模式的添加频率更高(每年10次)

1 个答案:

答案 0 :(得分:0)

  

在这种情况下,最佳做法是什么?

遵循界面的所有现有行业标准。您已为XML采用UBL。好。

现在,您也想添加一个JSON界面,并且想知道是否要...

  
      
  1. 将JSON有效负载转换为XML并针对XSD进行验证。

  2.   
  3. 将XSD转换为JSON模式,并根据自己的模式验证每种内容类型

  4.   
  5. 将XSD转换为基于语言规范的类,并在代码中进行模式验证,然后在api中间件中处理内容协商

  6.   

以上都不是。直接实施OASIS的UBL 2.1 JSON Alternative Representation Version 1.0 。为了进行验证,请使用已经开发的JSON UBL schemas