Недавно я обнаружил ключевые слова if-then-else, доступные в JSON Schema 07.
Я хотел бы использовать эти ключевые слова для изменения типа свойства в зависимости от ответа другого свойства.
По сути, я хотел бы сделать:
"if": {
"properties" : {
"QuestionA": {"enum": ["CorrectAnswer"]}
}
},
"then": {
"QuestionB": //Change type of question B from null to string
}
}
Весь смысл в том, что когда вопрос зависит от правильности ответа на предыдущий вопрос, то на этот вопрос невозможно ответить, пока первый вопрос не будет задан правильно.
Если я сначала установлю тип второго вопроса на ноль, никакого ответа дать не удастся. После ответа на первый вопрос тип второго вопроса меняется на строковый, и на второй вопрос можно ответить.
Достижимо ли это в JSON-схеме, используя если иное еще?