下面的 JSON 对象将负责呈现选择菜单。
使用 JSON 模式,我是否可以动态地验证
default
键的值(在本例中为“sm”)是否与 options
对象内的至少一个属性匹配?
我已经查看了文档,希望可以使用
pattern
refs
和 json pointers
的组合来实现这一点,但找不到此用例的示例。
{
"top": {
"label": "Small",
"default": "sm",
"options": {
"none": {
"label": "None"
},
"sm": {
"label": "Small"
},
"md": {
"label": "Medium"
},
"lg": {
"label": "Large"
},
"xl": {
"label": "XL"
}
}
}
}
据我所知,你所要求的是不可能的。
pattern
验证需要正则表达式模式enum
验证需要一个值数组
default
关键字是注释关键字,不用于任何类型的验证目的。 JSON Schema 不支持验证 schema 中的关键字。