问题描述
我在 openApi 3.0 的“组件”部分定义了以下架构:
schema1:
required:
- prop1
- prop2
- prop3
properties:
prop1
prop2
prop3
schema2:
required:
- prop4
- prop5
- prop6
properties:
prop4
prop5
prop6
现在有另一个模式对上述 2 个模式执行 'anyOf' 操作
schema3:
anyOf:
- $ref: '#/components/schema1'
- $ref: '#/components/schema2'
schema4:
properties:
prop7
现在我的问题是,如果我在 schema5 中对 schema3 和 schema4 执行 allOf 那么 property7 会成为必需的属性吗?如果是,那么如何在 schema5 中保持 property7 可选。
Schema5 为:
schema5:
allOf:
- $ref: '#/components/schema3'
- $ref: '#/components/schema4'
解决方法
property7 会成为必需属性吗?
否 - 因为 property7
未列在您架构的任何位置的 required
列表中。