首页 > 解决方案 > 如何在 OpenAPI 规范 3 中的数组中创建所需的引用

问题描述

我在一个数组中有一堆引用,并希望它们全部(或一个子集)都是必需的。

似乎使用 allOf 符合要求,使它们都成为必需的。然而,这似乎只允许一个(看似任意的)参考。

相反,我可以使用 anyOf,但是在文档架构中,虽然它现在列出了所有引用的项目,但它并没有显示这些项目是强制性的。有任何想法吗?

components:
  schemas:
...

            entry:
              type: array
              items: 
                anyOf:
                  - $ref:  "#/components/schemas/EligibilityRequestMessageHeader"
                  - $ref:  "#/components/schemas/CoverageEligibilityRequest"
                  - $ref:  "#/components/schemas/Coverage"
                  - $ref:  "#/components/schemas/provider-organization"
                  - $ref:  "#/components/schemas/Patient"
                  - $ref:  "#/components/schemas/payer-organization"

现在我刚刚添加:

              minItems: 6
              maxItems: 6

这有点笨拙,但表明需要包含每个对象。如果只需要引用的一个子集,那是行不通的。

标签: arraysopenapiref

解决方案


推荐阅读