pepe_la_phew's diary

LL系の話など

JSONスキーマで妥当性確認

JSONスキーマでJSONファイルをvalidateするだけのコード。

#!/usr/bin/env ruby

require 'rubygems'
require 'json-schema'

exit 1 unless ARGV.length == 2

schema = ARGV[0]
json = ARGV[1]

errors = JSON::Validator.fully_validate(schema, json)

errors.each do |error|
  puts error
end

スキーマの書き方に自信をもてないので、上記スクリプトに .../gems/json-schema-1.0.9/resources/draft-03.json (JSON Schema自体のスキーマ定義)とスキーマファイルを指定してvalidateしながら書いている。