type:numberと設定することで数値を期待しているという意味にできます。そして数値にもさらに期待値を絞り込むようなオプションがいくつかあります。
ある数値の倍数だけに制限
multipleOf:<number>で<number>の倍数だけを期待しているという意味にできます。以下は3の倍数だけを期待するという意味になります。
{
"type": "number",
"multipleOf": 3
}範囲
以上
大きい
以下
小さい
数値を期待するという意味にできるオプションがあります。ちょっと順番が変わります。
以上
minimumを置きます。
{
"type": "number",
"minimum": 10
}これは、「最小値はこれ以上にしてくださいね」という感じです。
大きい
minimumに合わせてexclusiveMinimum:falseを設定すると、「最小値は除外で」という意味にできます。
{
"type": "number",
"minimum": 10,
"exclusiveMinimum": true
}これは、11からの数値を期待します。
以下
maximumを置きます。
{
"type": "number",
"maximum": 40
}これは、「最大値はこれ以下にしてくださいね」という感じです。
小さい
maximumに合わせてexclusiveMaximum:falseを設定すると、「最大値は除外で」という意味にできます。
{
"type": "number",
"maximum": 40,
"exclusiveMaximum": true
}これは、39以下の数値を期待します。
組み合わせ
もちろんこれらは組み合わせて使えます。以下は10 <= num <= 40な数値を期待する例です。
{
"type": "number",
"minimum": 10,
"maximum": 40,
}特定の数値のどれか
数値でもenumを使うことで、特定の数値のどれかを期待するという意味にできます。以下は3や11、1002を期待するという意味になります。
{
"type": "number",
"enum": [
3,
11,
1002
]
}