<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>I think that Ajv has a way to validate JSON schema draft-07 and
      all the versions of the X3D JSON schema.</p>
    <p>While this probably shouldn't run on every X3D JSON file, I will
      probably create a separate script or scripts for inclusion in a
      larger generation or validation test suite.</p>
    <p>I already have an Everit Java-based version of this in x3dschema.
      Unfortunately, the java code does not print anything upon success,
      and exceptions will be thrown from main().<br>
    </p>
    <p>What I'd like to do is validate the JSON schema (draft-07) and
      X3D JSON generated schemas with a python-based validator for now.</p>
    <p><br>
    </p>
    <p>From: 
      <a class="moz-txt-link-freetext" href="https://json-schema.org/implementations.html#validator-python">https://json-schema.org/implementations.html#validator-python</a> :<br>
    </p>
    <ul>
      <li> <a href="https://github.com/Julian/jsonschema">jsonschema</a>
        <em> draft-07, -06, -04, -03 </em> (MIT) </li>
      <li> <a href="https://github.com/horejsek/python-fastjsonschema">fastjsonschema</a>
        <em> draft-07, -06, -04 </em> Great performance thanks to code
        generation. (BSD-3-Clause) </li>
      <li> <a
          href="https://github.com/Stranger6667/jsonschema-rs/python">jsonschema-rs</a>
        <em> draft-07, -06, -04 </em> Python bindings to Rust’s
        jsonschema crate (MIT) </li>
    </ul>
    <p>These validations will added to the
      X3DJSONLD/src/main/python/generateSchemas.py Python3 script, as
      best as I can manage.</p>
    <p><br>
    </p>
    <p>Note:  In generateSchema.py, there's also jsonlint, which
      pretty-prints and parses the X3D JSON schemas, so there's no need
      to accomplish that.  We will validate each schema generated after
      generation (obviously, not before).  We will validate draft-07
      before the loop.<br>
    </p>
    <p>John<br>
    </p>
  </body>
</html>