如何显示对象的每个键都具有相同的类型?
How to show that each key of an object will have the same type?
我有一个 JSON 响应,return 各种指标作为值和置信度,我想将其表示为 JSON 架构(以及使用 JsonSchema2Pojo 生成 bean)。
{
"QPI": {
"value": 0.053916827852998075,
"confidence": 0.89127
},
"MTBF": {
"value": 0.053916827852998075,
"confidence": 0.90210
},
"MDT": {
"value": 0.053916827852998075,
"confidence": 0.63541
}
}
响应中的指标数量未固定,因此我无法将它们表示为属性。
如果响应是
[
{
"metric": "QPI",
"value": 0.053916827852998075,
"confidence": 0.89127
},
{
"metric": "MTBF",
"value": 0.053916827852998075,
"confidence": 0.90210
},
{
"metric": "MDT",
"value": 0.053916827852998075,
"confidence": 0.63541
}
]
然后我可以写一个像
这样的模式
{
"type": "array",
"items": {
"type": "object",
"properties": {
"metric": {
"type": "string"
},
"value": {
"type": "number"
},
"confidence": {
"type": "number"
}
}
}
}
但是如何为对象的值做到这一点?
"additionalProperties"
不只是像 "additionalProperties": false
那样的布尔值,还可以采用预期的对象类型:
{
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"value": {
"type": "number"
},
"confidence": {
"type": "number"
}
}
}
}
我有一个 JSON 响应,return 各种指标作为值和置信度,我想将其表示为 JSON 架构(以及使用 JsonSchema2Pojo 生成 bean)。
{
"QPI": {
"value": 0.053916827852998075,
"confidence": 0.89127
},
"MTBF": {
"value": 0.053916827852998075,
"confidence": 0.90210
},
"MDT": {
"value": 0.053916827852998075,
"confidence": 0.63541
}
}
响应中的指标数量未固定,因此我无法将它们表示为属性。
如果响应是
[
{
"metric": "QPI",
"value": 0.053916827852998075,
"confidence": 0.89127
},
{
"metric": "MTBF",
"value": 0.053916827852998075,
"confidence": 0.90210
},
{
"metric": "MDT",
"value": 0.053916827852998075,
"confidence": 0.63541
}
]
然后我可以写一个像
这样的模式{
"type": "array",
"items": {
"type": "object",
"properties": {
"metric": {
"type": "string"
},
"value": {
"type": "number"
},
"confidence": {
"type": "number"
}
}
}
}
但是如何为对象的值做到这一点?
"additionalProperties"
不只是像 "additionalProperties": false
那样的布尔值,还可以采用预期的对象类型:
{
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"value": {
"type": "number"
},
"confidence": {
"type": "number"
}
}
}
}