JSON 스키마 검증
JSON Schema Validator
문서를 JSON 스키마로 검증하고 실패한 위치를 경로와 함께 보여 줍니다.
JSON 문서를 JSON Schema draft 2020-12로 검증합니다. 전부 브라우저 안에서 돕니다. 공식 JSON-Schema-Test-Suite의 필수 테스트 1,299건을 모두 통과하고, 실패는 인스턴스 위치와 그것을 낸 키워드와 함께 알려 줍니다.
스키마 (draft 2020-12)
검증할 데이터
결과
판정
유효하지 않음
실패 개수
3
| 인스턴스 위치 | 키워드 | 문제 |
|---|---|---|
| /port | maximum | 65535 이하여야 합니다 |
| /tags | uniqueItems | 0번과 1번 항목이 같습니다 |
| /debug | false | 여기서는 어떤 값도 통과할 수 없습니다(스키마가 false입니다) |
$ref 는 스키마 자신과 붙여넣은 추가 문서, 그리고 함께 담긴 2020-12 메타 스키마 안에서만 풉니다. 원격 참조는 가져오지 않고 거절하므로 결과가 네트워크에 좌우되지 않습니다. format 은 강제하지 않고 주석으로만 보고합니다. 2020-12의 기본 동작입니다.사용 방법
스키마와 데이터를 붙여넣습니다
두 상자 모두 입력하는 대로 다시 검증합니다. 어느 쪽의 문법 오류인지 따로 알려 주므로 어디가 깨졌는지 알 수 있습니다.
`$ref`가 있으면 참조되는 문서를 더합니다
추가 스키마를 켜고 붙여넣습니다. 문서 하나여도 되고 각각 `$id`가 있는 배열이어도 됩니다. 네트워크로 가져오지 않으므로, 파일이 여러 개로 나뉜 스키마도 여기서 검증됩니다.
실패 표를 읽습니다
줄마다 인스턴스 경로, 실패한 키워드, 무엇을 기대했는지가 나옵니다. 이슈에 붙여넣을 거라면 전체를 JSON으로 복사하면 됩니다.
자주 묻는 질문
`"format": "email"`이 왜 강제되지 않나요?
2020-12에서 `format`은 기본적으로 주석이기 때문입니다. 검증기가 보고만 하고 검사하지 않아도 되고, 대부분 정확히 그렇게 합니다. 강제해야 한다면 `pattern`을 쓰거나 format-assertion 어휘를 켠 검증기를 쓰세요.
원격 `$ref`를 풀지 못했습니다.
원격 참조는 가져오지 않고 거절합니다. 네트워크로 나가는 검증기는 DNS와 남의 가동률에 결과가 좌우되고, 어떤 스키마를 검증 중인지 그쪽에 알려 주게 됩니다. 참조되는 문서를 추가 스키마 상자에 붙여넣으세요.
어떤 draft를 지원하나요?
2020-12입니다. Draft-07 스키마도 대개 그대로 통과합니다. 키워드 대부분이 그대로이기 때문입니다. 다만 `definitions`는 `$defs`가 아니고, 튜플에서 `items`의 뜻이 다르며, `$recursiveRef`는 사라졌습니다. 넘겨짚기 전에 `$schema` 줄을 확인하세요.
필드 하나가 틀렸는데 왜 오류가 이렇게 많나요?
`anyOf`, `oneOf`, `allOf` 안에서 실패하면 실패한 가지를 전부 보고하기 때문입니다. 명세가 출력 단위에 그렇게 담으라고 정하고 있습니다. 보통은 첫 줄이 원하는 것이고, 나머지는 다른 가지도 왜 맞지 않았는지를 설명합니다.
이 도구로 이어지는 것
YAML 정렬·검사
YAML Formatter & Validator
YAML 들여쓰기를 통일하고 문법을 검사하며, 파서를 깨뜨리는 탭·앵커 실수를 표시합니다.
JSON YAML 변환
JSON ⇄ YAML
키 순서를 유지한 채 양방향으로 변환하며 YAML은 블록·플로 스타일을 고를 수 있습니다.
JSON Zod 스키마 변환
JSON to Zod Schema
JSON 예시로 Zod 스키마를 만들며 nullable·optional·열거형을 추론합니다.
JSON 스키마 생성
JSON to JSON Schema
하나 또는 여러 예시에서 JSON 스키마를 추론하고 발견한 형태를 합칩니다.
다음 단계
이 도구의 결과를 그대로 받을 수 있는 도구들입니다.
JSON 정렬·검사
JSON Formatter & Validator
JSON을 보기 좋게 정렬하거나 압축하고, 문법 오류가 난 줄과 열을 정확히 짚어 줍니다.
JSON 스키마 생성
JSON to JSON Schema
하나 또는 여러 예시에서 JSON 스키마를 추론하고 발견한 형태를 합칩니다.
OpenAPI 점검
OpenAPI Linter
OpenAPI 문서에서 누락된 응답, 쓰이지 않는 스키마, 아무것도 가리키지 않는 참조처럼 코드 생성기를 깨뜨리는 결함을 점검합니다.
YAML 정렬·검사
YAML Formatter & Validator
YAML 들여쓰기를 통일하고 문법을 검사하며, 파서를 깨뜨리는 탭·앵커 실수를 표시합니다.
JSON CSV 변환
JSON ⇄ CSV
중첩 JSON을 점 표기 열 이름으로 펼치거나, 표에서 객체를 다시 만듭니다.
JSON 비교
JSON Diff
키 순서를 무시하고 두 JSON을 구조로 비교해 추가·삭제·변경된 경로를 알려 줍니다.