{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ほげほげ",
"type": "object",
"properties": {},
"required": []
}
$schema
これには今現在(2019-04)最新のhttp://json-schema.org/draft-07/schema#
バージョンを指定します。
title
そのスキーマの説明。
type
ルートに置かれるtype
は、その JSON のルートがどんな要素かを指定します。object
やarray
が指定できます。
properties
type:object
な時、どんなプロパティがあるかを指定していきます。例えば以下は、foo
プロパティが置けるという意味になります。
{
"properties": {
"foo": {
"description": "説明(オプション)",
"type": "string"
}
}
}
この各プロパティのタイプには
string
number
object
array
boolean
null があります。
required
type:object
な時、ここに羅列したプロパティは必ず設定しなければならないという意味になります。以下はfoo
を必須にする例です。
{
"properties": {"foo": {}},
"required": ["foo"]
}