title: json schema validation. How can I accept an array or null?
body: <p>We have implemented json schema validation (using newtonsoft) on our rest layer. It's really made a difference, but I have a question of possibility and how to.</p>
  
  <p>For a specific property, the following is valid (according to the product owner):</p>
  
  <p>.... choices: [] .......</p>
  
  <p>.... choices: ["hello", "world"]</p>
  
  <p>.... choices: null .....</p>
  
  <p>here is a whittled down example of the json schema definition</p>
  
  <pre><code>{
     'description': 'myDescription',
     'type': 'object',
     'properties':
      {
       'name': {'type':'string', 'required': true},
       'description': {'type':'string'},
       'choices': {'type': 'array', 
           'items': {'type': 'string'}}
  }
  </code></pre>
  
  <p>Obviously the first 2 examples pass validation, but the latter fails with "expecting an array" error.</p>
  
  <p>The property is optional.</p>
  
  <p>As an aside, if anyone has a good link to the full set of documentation on json schema definitions, I'd love to get it. I have not found a good single source, but I am sure there is one.</p>
  
  <p>Thank you.</p>
  
  <p>-r</p>