title: jsonschema enum values conditional on another enum value
body: <p>I have a table of acceptable input combinations for my application:</p>
  
  <pre><code>noises   appearance
  ------   ----------
  squeaks  fluffy
  purrs    fluffy
  hisses   fluffy
  peeps    feathers
  chirps   feathers
  squeaks  feathers
  hisses   scaly
  </code></pre>
  
  <p>No other combination of values is acceptable.</p>
  
  <p>How can this be encoded in JSON Schema? The "rest of the schema" would look kind of like this:</p>
  
  <pre><code>{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "type": "array",
    "items": {
      "type": "object",
      "required": ["noise", "appearance"]
      "properties": {
        "noise": ...,
        "appearance": ...
      }
    }
  </code></pre>
  
  <p>Currently my application is using Draft 4 because it's what's supported by the last stable version of the <a href="https://pypi.org/project/jsonschema/" rel="nofollow noreferrer">jsonschema package</a>.</p>