как определить несколько раз объекта в объекте map в Open api yml

#swagger #swagger-ui #openapi #swagger-2.0 #swagger-editor

#swagger #swagger-пользовательский интерфейс #openapi #swagger-2.0 #swagger-редактор

Вопрос:

Я новичок в openapi. Мне нужна помощь в написании open api yml 3.0

для приведенного ниже формата ответа

 {
    “Details”: {
        “detail1”: [
            {
                "id": “idvalue”1,
                “Info”: {
                    “Testinfo1”: "1.0.0",
                    “Testinfo2”: "2.0.0"
                }
            }
        ],
        “Detail2”: [
            {
                "id": “idvalue2”,
                “Info”: {
                    “Testinfo3”: "1.0.0",
                    “Testinfo4”: "2.0.0"                }
            }
        ],
        "Detail3”: [
            {
                “First name”: “firstName,
                “Lastname: “last”Name,
                “Address”: “address”,
                “Dependents”: []
            }
        ]
    },
    "links": {
        "self": {
            "href": “some url”
        }
    }
}
 

detail1, detail2, detail3 могут быть разными типами объектов или одинаковыми типами объектов
, и может быть любое отсутствие деталей.
Я поражен следующими моментами

  1. как я могу представить map open api
  2. как представить несколько типов объектов с помощью in map.

Ответ №1:

Проверьте это ниже YAML snap

 DetailsSchemaElement:
  type: object
  properties:
    Details:
      type: object
      properties:
        detail1:
          type: array
          items:
            properties:
              id:
                type: string
              Info:
                type: object
                properties:
                  Testinfo1:
                    type: string
                  Testinfo2:
                    type: string
        Detail2:
          type: array
          items:
            properties:
              id:
                type: string
              Info:
                type: object
                properties:
                  Testinfo4:
                    type: string
                  Testinfo3:
                    type: string
        Detail3:
          type: array
          items:
            properties:
              First-name:
                type: string
              Address:
                type: string
              Dependents:
                type: array
                items:
                  type: string
              Lastname:
                type: string
    links:
      type: object
      properties:
        self:
          type: object
          properties:
            href:
              type: string