Учитывая следующее определение OpenAPI, какие из перечисленных ниже объектов являются допустимыми. Просто 1. или 1. и 2.?
Person:
required:
- id
type: object
properties:
id:
type: string
{"id": ""}
{"id": null}
{}
Это сводится к вопросу, означает ли «required = true» «ненулевое значение» или «должно присутствовать свойство».
Средство проверки схемы JSON на https://json-schema-validator.herokuapp.com/ сообщает это 2. недействительно, потому что null
не удовлетворяет ограничению type: string
. Обратите внимание, что он не жалуется, потому что id
имеет значение null, а потому, что null
не является строкой. НО насколько это актуально для OpenAPI / Swagger?