У меня есть входной JSON, как показано ниже,Условная проверка Json схемы на основе стоимости недвижимости
{
"results": [
{
"name": "A",
"testA": "testAValue"
}
]
}
условие, если значение «имя» является «A», то «Теста» должно быть обязательное поле и если значением «name» является «B», тогда «testB» должно быть обязательным.
Это Json схемы Я пытался и ее не работает, как ожидалось,
{
"$schema": "http://json-schema.org/draft-04/schema#",
"type": "object",
"required": [
"results"
],
"properties": {
"results": {
"type": "array",
"oneOf": [
{
"$ref": "#/definitions/person"
},
{
"$ref": "#/definitions/company"
}
]
}
},
"definitions": {
"person": {
"type": "object",
"required": [
"name",
"testA"
],
"properties": {
"name": {
"type": "string",
"enum": [
"A"
]
},
"testA": {
"type": "string"
}
}
},
"company": {
"type": "object",
"required": [
"name",
"testB"
],
"properties": {
"name": {
"type": "string",
"enum": [
"B"
]
},
"testB": {
"type": "string"
}
}
}
}
}
Пробовал с «dependecies» в JSON Schema тоже, но не смог найти правильное решение.
Любая помощь/обходной путь с образцом JSON Schema для достижения вышеуказанного варианта использования оценивается.
Возможный дубликат [Как использовать зависимости в JSON схеме (проект-04)] (http://stackoverflow.com/questions/18375506/how-to-use-dependencies-in-json-schema- проект-04) – jruizaranguren