2015-07-24 39 views
5

Vorrei utilizzare gli schemi oneOf che differiscono solo per il valore della proprietà xyType. Mi piacerebbe averne due: uno in cui lo xyType è impostato su "1" e il secondo in cui lo xyType è qualsiasi altro valore. Questo può essere fatto usando gli schemi JSON?Schema JSON "non in" tipo enum?

"oneOf": [ 
    { 
     "properties": { 
      "xyType": "enum": ["1"], 
      "whatever" : "string" 
     }, 
     "type": "object" 
    }, 
    { 
     "properties": { 
      "xyType": "enum": [], /// NOT "1"? 
      "whatever" : "string" 
     }, 
     "type": "object" 
    } 
] 

risposta

8

C'è un operatore not, e la parola chiave enum, e si possono usare insieme, come

{ 
    "not": { 
     "enum": ["1"] 
    } 
}