如果在输入文件中指定在架构中配置为要求的元素,则验证是否正常.如果你附加"maxItems":1,它不关心你是否在输入文件中添加另一个元素,验证器仍然将其视为有效的输入文件.
即:架构:
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"properties": {
"Books": {
"type": "object",
"minItems": 1,
"properties": {
"Book": {
"type": "object",
"minItems": 1,
"maxItems": 1,
"properties": {
"Author": {
"type": "string",
"minItems": 1,
"maxItems": 1
}
},
"required": ["Author"]
}
},
"required": ["Book"]
}
},
"required": ["Books"]
}
Run Code Online (Sandbox Code Playgroud)
输入文件:
{
"Books": {
"Book": {
"Author": "Andreas",
"Author": "Geir"
}
}
}
Run Code Online (Sandbox Code Playgroud)
这不应该是无效的输入文件吗?
验证人: