title: JSON schema - valid if object does *not* contain a particular property
body: <p>Is it possible to set up a JSON schema that still allows for <code>additionalProperties</code> but does <em>not</em> match if a very particular property name is present? In other words, I need to know if it's possible to have the exact opposite of the <code>required</code> declaration.</p>
  
  <p>Schema:</p>
  
  <pre><code>{
      "type": "object",
      "properties": {
          "x": { "type": "integer" }
      },
      "required": [ "x" ],
      "ban": [ "z" ] // possible?
  }
  </code></pre>
  
  <p>Match:</p>
  
  <pre><code>{ "x": 123 }
  </code></pre>
  
  <p>Match:</p>
  
  <pre><code>{ "x": 123, "y": 456 }
  </code></pre>
  
  <p>Do <em>not</em> match:</p>
  
  <pre><code>{ "x": 123, "y": 456, "z": 789 }
  </code></pre>