2016-05-02 12 views
1

IこのJSONスキーマ

{ 
    "visits": { 
     "1": 1000, 
     "2": 300, 
     "3": 43, 
    } 
} 

ようなJSON文書を有するが、すべてのキー("1""2""3")が実際に列挙され、それがストレージの節約のために整数として格納されています目的。私は列挙の記述を文書化したい。例えば。

1 => When the user is guest 
2 => When the user is logged in 
3 => When the user is admin 

これはjsonスキーマにどのように入れますか?

答えて

0

あなたはパターンに一致しない任意のプロパティ禁止する数値プロパティを記述するためにpatternPropertiesを使用して、additionalPropertiesできます、だからここ^(0|[1-9][0-9]*)$(非負の整数)に一致する任意のプロパティを

{ 
    "type": "object", 
    "patternProperties": { 
     "^(0|[1-9][0-9]*)$": {"type": "string"} 
    }, 
    "additionalProperties": false 
} 

を文字列でなければならず、他のプロパティは許可されません。

(あなたが発注のいくつかの種類を強制するために探しているなら"4"も定義されている場合(例えば"5"のみ存在している必要があります)、あなたはJSONスキーマを持つことを表現することはできません。)