2017-01-27 6 views
0

JSONスキーマを使用して、キーの制約をJSONドキュメントに入れたいと思います。私は特定のキーが使用されているかを気にしないが、私は何もキーがより長くされていないスキーマに施行したいJSONスキーマでキーを制約する

{ 
    "id": 1, 
    "name": "a green door", 
    "price": 12.50, 
    "tags": ["home", "green"] 
} 

:たとえば、私はこのようになりますJSONドキュメントを有することができます特定の文字数。議論のために4文字としましょう。 "price"は5文字であるため、上記の例ではスキーマの検証に失敗します。

は私が の長さを検証する方法を知っている - ここでは、私は キー気に。

答えて

0

patternPropertiesを使用すると、プロパティ名を正規表現に一致するものに制限できます。あなたの例の場合、それは次のようになります。

{ "$schema": "http://json-schema.org/draft-04/schema#", 
    "type": "object", 
    "additionalProperties": false, 
    "patternProperties": { 
    "^.{1,4}$": {} 
    } 
} 

"additionalProperties": falseも同様に必要です。