Swagger 2.0 Anyof

Что эквивалентно anyof в Swagger версии 2.0? Скажите, пожалуйста, как обновить мой файл json, потому что я хочу обновить свою документацию с swagger 1.0 до 2.0.

Спасибо за помощь.


person Mohcine Aterhzaz    schedule 18.01.2016    source источник


Ответы (2)


Я не думаю, что он есть, и это кажется большим недостатком. Это определенно не упоминается в части спецификации объекта схемы. Они вызывают элементы, которые были заимствованы из схемы JSON, а anyOf среди них нет:

Следующие свойства взяты непосредственно из определения схемы JSON и соответствуют тем же спецификациям:

  • $ ref - как ссылка на JSON
  • формат (дополнительные сведения см. в разделе «Форматы типов данных»)
  • заглавие
  • описание (синтаксис GFM можно использовать для форматированного текстового представления)
  • по умолчанию (в отличие от схемы JSON, значение ДОЛЖНО соответствовать определенному типу для объекта схемы)
  • multipleOf
  • максимум
  • эксклюзивныйМаксимум
  • минимум
  • эксклюзивный минимум
  • максимальная длина
  • minLength
  • шаблон
  • maxItems
  • minItems
  • uniqueItems
  • maxProperties
  • minProperties
  • требуется
  • перечислить
  • тип

Следующие свойства взяты из определения схемы JSON, но их определения были скорректированы в соответствии со спецификацией Swagger. Их определение такое же, как и в схеме JSON, только там, где исходное определение ссылается на определение схемы JSON, вместо этого используется определение объекта схемы.

  • Предметы
  • все
  • характеристики
  • дополнительные свойства

Я думаю, что наиболее близким к этому является поле discriminator, но это означает, что вы должны структурировать свой вывод так, чтобы он соответствовал Swagger.

person drewish    schedule 18.01.2016

anyOf и oneOf теперь поддерживаются в OpenAPI Specification 3.0 (выпущен 26 июля 2017 г.).

person Helen    schedule 10.04.2017
comment
openapi 3.0 не является полноценным расширением Swagger 2.0. Переключение, скорее всего, приведет к тому, что другие части документа станут недействительными. Возможно, оно того стоит, но это не безболезненно. - person Tom; 11.03.2020
comment
@Tom существуют конвертеры OpenAPI 2.0-to-3.0 для помощи в миграции. - person Helen; 11.03.2020