【问题标题】:Validation of converted JSON against XML or XSD针对 XML 或 XSD 验证转换后的 JSON
【发布时间】:2021-09-04 22:11:05
【问题描述】:
我有一个 XML 和 XSD 文件。我正在使用 Apache NiFi 将 XML 转换为 JSON。但是,它嵌套在许多级别中,因此我想验证转换是否正常。我想在 Apache NiFi 中使用 XSD 进行验证。
我将无法分享公司的敏感信息。
我可以使用任何处理器或脚本吗?可以选择在称为 ExecuteScript 的处理器中编写 Python 脚本。
提前致谢
【问题讨论】:
标签:
json
xml
xsd
apache-nifi
【解决方案1】:
您的问题分为两部分。
- 可以通过 XSD 验证 JSON 吗?
- nifi 是否有通过 XSD 验证 JSON 的处理器?
这里已经回答了第一部分:
Validate JSON against XML Schema (XSD)
现在对于第二部分,根据您最终使用的解决方案,两者都没有在 nifi 处理器中实现,并且尝试使用 ExecuteScript 对您不起作用,因为这些需要使用导入的非本地模块。相反,您需要使用 java 创建自己的自定义处理器并将其导入 nifi 来解决您的问题。这有点费力。
或者,您可以尝试将 XML 反向转换回属性,然后根据原始 XSD 验证该属性内容。这是我在编写单元测试时经常使用的一种方法。我没有亲自在 nifi 中尝试过,但听起来这是可能的,并且可能是最不复杂的解决方案。