Валидатор JSON Schema — пути draft-07, локально
Проверяйте JSON по JSON Schema (draft-07) в браузере. Шаги: вставьте Schema и экземпляр, проверьте, читайте каждый сбой по JSON Pointer. Пример: товар без price падает с missingProperty. Текст остаётся во вкладке; Ajv подгружается с CDN только как код библиотеки.
Движок: Ajv 8 · JSON Schema draft-07 (по умолчанию).
Как это работает
Слева Schema, справа экземпляр. Ajv (draft-07) компилирует Schema, проверяет экземпляр и перечисляет ошибки с JSON Pointer. Есть ошибочный и верный примеры; при входе загружается ошибочный, чтобы сразу показать реальные пути.
Ожидаемые правила
На этой странице: разбор → компиляция Schema draft-07 → проверка экземпляра → Pointer на каждую ошибку.
- Разбор: оба поля должны проходить JSON.parse. Ошибки синтаксиса/компиляции отделены от провалов валидации.
- Проверка: allErrors собирает все сбои. Строка = instancePath + message (+ missingProperty при необходимости).
- Draft: диалект draft-07. Не рассчитывайте на словарь 2020-12 здесь.
- Конфиденциальность: вставка остаётся во вкладке. CDN загружает только код Ajv.
Пример
Schema требует sku (строка) и price (число ≥ 0). Верный: {"sku":"A-1","price":9.5}. Ошибочный: {"sku":"A-1"} — missingProperty для price в корне (/).
Подходящие задачи
- ИИ / агенты: проверить, не пропущены ли поля в структурированном JSON модели, прежде чем доверять ему.
- Торговые feed: проверить JSON товара по Schema перед импортом.
- Отладка API: вставить тело запроса/ответа в фрагмент Schema из контракта.
Frequently asked questions
Почему проверка не прошла?
Частые причины: нет required, неверный тип или additionalProperties:false. Смотрите Pointer и сообщение keyword.
Как читать ошибку JSON Pointer?
instancePath — JSON Pointer в экземпляре (пустой показывается как /). При отсутствии required Ajv добавляет missingProperty в params.
Какой draft использует страница?
Страница использует диалект draft-07 в Ajv. Drafts 2019-09 / 2020-12 требуют других сборок и здесь не выбираются.
Покидает ли JSON браузер?
Schema и JSON не загружаются на сервер. CDN скачивает только код Ajv.
Как проверить структурированный вывод LLM?
Вставьте Schema и JSON модели, проверьте и исправьте каждый Pointer до успеха — полезно перед передачей структурированного вывода дальше.
Вопросы и отзывы
Что-то неясно, сломано или отсутствует? Напишите сообщение ниже — мы читаем каждую заметку об этих инструментах.