给定集合中文档的属性之一的BSON类型为array
。数组中项目的类型的BSON类型为object
,且已设置additionalProperties: false
。我希望数组始终具有10个项目,但希望允许这些项目为null
。这可能吗?这是有关该属性的我的架构:
inventory: {
bsonType: "array",
minItems: 10,
maxItems: 10,
description: "must be an array of 10 items",
items: {
bsonType: "object",
additionalProperties: false,
required: [ "id", "amount" ],
properties: {
id: {
bsonType: "number",
description: "is a number and is required"
},
amount: {
bsonType: "number",
minimum: 0,
description: "is a number >= 0 and is required"
}
}
}
}
换句话说,我希望数组由null
个项目和/或具有object
和id
属性的类型amount
的项目组成。是否可以使用给定的架构执行此操作?还是我需要以某种方式将anyOf
关键字集成到架构中?