我正在从这种json类型过渡:
entity
到
{
"id": 1,
"data": {
"item_number": "4",
...
}
}
我需要一个与这两个json都匹配的jsonschema。
这是:
{
"id": 1,
"data": {
"itemNumbers": [4],
...
}
}
使用python jsonschema软件包,它与所有json匹配,无论项目编号如何。
感谢您的帮助。
答案 0 :(得分:1)
您将需要将anyOf
修改为oneOf
(这不会更改您当前的架构,而是使意图更清晰),并将additionalProperties: false
添加到每个亚计划。
在您的架构中,"item_number": "4"
对anyOf [0]的验证失败,但对anyOf [1]的验证失败,因为对item_number
或未定义的属性没有约束。
additionalProperties: false
表示properties
中未包含为键的任何属性都将导致验证失败。