【发布时间】:2015-07-27 22:57:15
【问题描述】:
我试过搜索,但我不太确定如何用文字表达!混淆的地方在于,当存在 同名的嵌套键值时,“必需”在 JSON 模式 v4 中的工作方式。
例如,这个架构:
{
"Root": {
"type": ["array", "null"],
"items": {
"type": "object",
"properties": {
"LevelOne": {
"required": ["id", "name", "LevelOneRepeat"],
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"LevelOneRepeat": {
"type": ["array", "null"],
"items": {
"type": "object",
"properties": {
"required": ["id", "name"],
"id": {
"type": "string"
},
"name": {
"type": "string"
}
}
}
}
}
}
}
}
}
在LevelOne 中,我需要“id”、“name”和“LevelOneRepeat”。但是,在 LevelOneRepeat 中,我还需要“id”和“name”。
是否只需要检查同一级别的元素,还是所有子元素?如果所需的键值(同名)已在上面的级别中列出,是否需要在 LevelOneRepeat 中包含所需的?
我用我的模式测试了我的 JSON,但我可能在某个地方弄乱了我的代码,因为不再需要它了。
【问题讨论】:
标签: json jsonschema