A relatively new addition to JSON Schema (draft-07) adds the if, then and else keywords. I cannot work out how to use these new key words correctly. Here is my JSON Schema so far:
{
"type": "object",
"properties": {
"foo": {
"type": "string"
},
"bar": {
"type": "string"
}
},
"if": {
"properties": {
"foo": {
"enum": [
"bar"
]
}
}
},
"then": {
"required": [
"bar"
]
}
}
If the "foo" property equals "bar", Then the "bar" property is required. This works as expected.
However, if the "foo" property does not exist or input is empty then I don't want anything. how to acheive this?
empty input {}.
Found Errors:
Required properties are missing from object: bar.
Schema path: #/then/required
I use online validation tool: