Esquema JSON que permite um objeto ou uma matriz desses objetos
Digamos que eu tenha um esquema JSON que permita um objeto como este:
...
"assetMetadata": {
"type": "object",
"additionalProperties": false,
"properties": { ... }
}
...
Digamos que eu queira alterar isso para permitir o mesmo objeto OU uma matriz desse objeto em particular. Aqui está aceitando apenas uma matriz:
...
"assetMetadata": {
"type": "array",
"description": "...",
"items": {
"type": "object",
"additionalProperties": false,
"properties": {...}
}
...
As propriedades são as mesmas (é o mesmo objeto, apenas a opção para múltiplos em vez de apenas um).
Curiosamente, no projeto em que estou trabalhando, o desempacotador já pode lidar com ambos (transforma o único objeto em uma sequência de tamanho 1), portanto, é apenas a validação que está me impedindo de seguir em frente. Queremos manter a comparabilidade com a API existente, razão pela qual não posso exigir apenas uma matriz agora.