コンテンツへスキップ
uencoder

JSON Schema

JSON Schema は JSON 文書の構造を記述する語彙である。型、制約、検証規則を定義し、JSON のスキーマ標準である。

目的

JSON に XSD 類似の検証機構を与え、データが期待する構造に一致することを保証する。

メカニズム

スキーマ自体も JSON で記述される:type は型、properties はオブジェクトのプロパティ、items は配列要素、required は必須フィールド、minimum/maximum/pattern は制約を宣言する。最新版は Draft 2020-12 である。バリデータ(ajv)が文書を検証する。

ユースケース

  • API リクエスト/レスポンスの検証
  • 設定ファイルのチェック
  • フォームデータの検証
  • OpenAPI の型定義

例

  • 入力
    {"type":"object","properties":{"age":{"type":"integer","minimum":0}}}
    Output
    Validates that age is a non-negative integer

    Constraint declaration

よくあるエラー

Using an outdated draft version breaks validator compatibility
Pin the draft version and use a matching validator

関連用語

関連ツール

References