スキーマで要件として設定されている入力ファイルに要素を指定すると、検証 OK です。また、「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"]
}
入力ファイル:
{
"Books": {
"Book": {
"Author": "Andreas",
"Author": "Geir"
}
}
}
これは無効な入力ファイルであってはなりませんか?
バリデーター: