我有一个简单的JSON架构:
{
"properties": {
"name": {
"type": "string"
}
},
"type": "object"
}
它要求name
属性是一个字符串。此架构不限制其他属性,例如
{
name: 'foo',
url: 'http://foo'/
}
后者是有效的输入。
有没有办法根据条件属性名称匹配来设置属性值格式要求?其中包含url
字符串的任何属性必须对应于以下架构:
{
"type": "string",
"format": "url"
}
因此,输入:
{
name: 'foo',
location_url: 'not-a-valid-url'
}
会导致错误,因为location_url
不包含有效的网址吗?
我想,这样的架构看起来像是:
{
"properties": {
"name": {
"type": "string"
}
},
"matchProperties": {
"/url/i": {
"type": "string",
"format": "url"
}
}
"type": "object"
}
其中matchProperties
是我编写的关键字。