Схема JSON 2019-09 – обязательное условие

В моей схеме есть одно значение enum type. Оно может иметь значение Client или Corporate. Мне нужен способ вписать проверку, когда, если "type": "Client" только тогда требуется другое поле font.

Тело JSON

Схема JSON

Я пробовал с oneOf, но это не работает.

Изменить: фиксированный тип

{
  "type": "Client",
  "font": "Small",
  "occupation": "Super"
}
{
    "$schema": "https://json-schema.org/draft/2019-09/schema",
    "$id": "http://example.com/example.json",
    "title": "Root Schema",
    "type": "object",
    "default": {},
    "required": ["type", "occupation"],
    "properties": {
        "type": {
            "type": "string",
            "enum": ["Client", "Corporate"]
        },
        "font": {
            "type": "string"
        },
        "occupation": {
            "type": "string"
        }
    },
    "examples": [
        {
            "type": "Client",
            "font": "Large",
            "occupation": "Super"
        }
    ],
    "oneOf": [
        {
            "properties": {
                "type": {
                    "enum": ["Client"]
                }
            }
        },
        {
            "required": ["font"]
        }
    ]
}
Пимен
Вопрос задан19 февраля 2024 г.

1 Ответ

2
Макар
Ответ получен4 сентября 2024 г.

Ваш ответ

Загрузить файл.