다음은 찾고있는 설명서입니다.
일부 유효성 검사 키워드는 하나 이상의 기본 유형에만 적용됩니다. 인스턴스의 기본 유형이 주어진 키워드에 의해 유효성을 검사 할 수없는 경우이 키워드 및 인스턴스에 대한 유효성 검사가 성공해야합니다.
http://json-schema.org/latest/json-schema-validation.html#anchor8
- 는 개념을 설명 예제로이 스키마를 취합니다. >
required
을 무시 - -> 무시
{ "foo": "bar" }
이
,536 유효성을 검사>
maxLength
통과 - {
"items": { "type": "string" },
"maxLength": 2,
"required": ["foo"]
}
["foo"]
는
items
유효성을 검사
items
->
maxLength
무시 -> 무시
required
-> 무시
maxLength
- -> 실패>
"foo"
통과
required
-> 무시
3
유효성을 검사
items
->
maxLength
을 무시 ->
required
을 무시 ->이 possibl하지만
무시 이 방법으로 스키마를 작성하려면 단일 스키마 내에서 유형 키워드를 혼합하지 않는 것이 좋습니다. 대신 anyOf
을 사용하면 읽을 수있는 스키마를 얻을 수 있습니다.
{
"anyOf": [
{
"type": "string",
"maxLength": 2
},
{
"type": "array",
"items": { "type": "string" }
},
{
"type": "object",
"required": "foo"
}
]
}