Схема JSON, которая допускает либо объект, либо массив этих объектов
Скажем, у меня есть схема JSON, которая позволяет объекту, например, так:
...
"assetMetadata": {
"type": "object",
"additionalProperties": false,
"properties": { ... }
}
...
Скажем, я хочу изменить это, чтобы разрешить либо тот же объект, либо массив этого конкретного объекта. Здесь принимает только массив:
...
"assetMetadata": {
"type": "array",
"description": "...",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {...}
}
...
Свойства одинаковы (это один и тот же объект, только опция для нескольких вместо одного).
Интересно, что в проекте, над которым я работаю, демаршаллер может уже обрабатывать оба (он превращает один объект в последовательность размера 1), так что это просто проверка, которая мешает мне двигаться вперед. Мы хотим сохранить сопоставимость с существующим API, поэтому я не могу просто сейчас требовать массив.