我的Json数据看起来像
{
“key1”:“value1”,
“key2”:“value2”,
“key3”:“value3”,
“iterKey”:{
“key11”:[“val11”,“val12”],
“key21”:[“val21”],
“key31”:[“val31”,“val32”] }
}
在上面的Json数据key1中,key2和key3是固定的,其值是字符串。但是iterKey是一个包含键值对的Map。 iterKey的大小和值不固定。 我想编写Json模式,它将验证所有密钥(key11,key21,key31 ..etc)是字符串,它们的值是字符串列表。
(我不知道key11,key21 ..etc的值,它可以是任何值) 请帮助为这种类型的JSON数据编写模式。
答案 0 :(得分:1)
使用patternProperties
代替properties
。然后,键不是对象而是正则表达式。使用.*
作为正则表达式来匹配所有内容。
{
"type": "object",
"properties": {
"key1": {
"type": "string"
},
...
"iterKey": {
"type": "object",
"patternProperties": {
".*": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}