给定以下JSON对象:
{
"objects": {
"foo": {
"id": 1,
"name": "Foo"
},
"bar": {
"id": 2,
"name": "Bar"
}
}
}
这是一个包含子对象的对象,每个子对象都具有相同的结构 - 它们都是相同的类型。每个子对象都有唯一的键,因此它的行为类似于命名数组。
我想验证objects
属性中的每个对象是否符合JSON Schema参考规范。
如果objects
属性是一个数组,例如:
{
"objects": [
{
"id": 1,
"name": "Foo"
},
{
"id": 2,
"name": "Bar"
}
]
}
我可以使用模式定义来验证这个,比如:
{
"id": "my-schema",
"required": [
"objects"
],
"properties": {
"objects": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name"
],
"properties": {
"id": {
"type": "integer"
},
"name": {
"type": "string"
}
}
}
}
}
}
这是通过将 type
设置为 array
实现的,从而允许验证 items
。
那么,是否可以使用嵌套对象实现类似的功能呢?
谢谢!