Перечисления схемы JSON
Перечисления функций схем JSON, которые налагают ограничение на значения строкового типа:
{
"type": "array",
"items": [
{
"type": "number"
},
{
"type": "string"
},
{
"type": "string",
"enum": ["Street", "Avenue", "Boulevard"]
},
{
"type": "string",
"enum": ["NW", "NE", "SW", "SE"]
}
]
}
Эта схема проверяет такие значения, как [1600, "Pennsylvania", "Avenue", "NW"]
.
Эта проблема
Есть ли элегантный способ сделать enum
нечувствительным к регистру, чтобы и Avenue
, и avenue
принимались как третье значение в массиве?
Другие возможные решения
Я могу использовать anyOf
в списке значений и проверять каждое на соответствие с нечувствительным к регистру регулярным выражением, но это громоздко, подвержено ошибкам и неэлегантно.