是的,为了更严格地限制对象的属性,可以添加dependentSchemas属性。dependentSchemas属性是一个对象,其中键表示必须存在的属性名称,值表示存在此属性时必须满足的模式。
例如,以下代码将确保如果属性a为true,则属性b必须是非空字符串:
{
"type": "object",
"properties": {
"a": {"type": "boolean"},
"b": {"type": "string"}
},
"additionalProperties": false,
"dependentSchemas": {
"a": {
"properties": {
"b": {"minLength": 1}
},
"required": ["b"]
}
}
}