<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style></head><body lang=EN-US link=blue vlink="#954F72"><div class=WordSection1><p class=MsoNormal>Thanks, Don,</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>The main JSON schema changes seem to be using $defs for definitions (not required) and format (may need application code to validate URIs).</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Send me a meeting date and time, and I will attempt to attend.  I have an appointment on Thursday.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>I have already implemented $defs changes in the autogenerated schema (not checked in). I have been unable to test this due to the lack of validators.  We will not modify Roy’s schema for backwards compatibility I feel.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>The autogenerated schema has useful additions over Roy’s schema, including USE handling.  I believe we’ve gone through comparing draft-07 and Roy’s schema, and they find “equivalent” invalid documents, ignoring some items in development. My guess is Roy’s schema will be unable to process USE properly, since this is a major change.  Most of our documents correctly use USE, so it’s not a problem.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>You should probably include this JSON validator in your documentation, if the main X3DJSONLD is not used if it’s too confusing:</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><a href="https://coderextreme.net/X3DJSONLD/src/main/html/validator.html">https://coderextreme.net/X3DJSONLD/src/main/html/validator.html</a> (3.3 draft-07 validator)<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>(regression testing is not done after installation, so there may be bugs one can report).<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>It’s important to note that the Unified Object Model is not a JSON schema according to the recent draft, AFAIK.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>If you wish to generate X3D JSON schema from X3DUOM JSON, that will require more work.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>I can provide or check in recent X3D JSON schemas, if desired.  I’m waiting for 4.0 demand, I guess.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>John</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Sent from <a href="https://go.microsoft.com/fwlink/?LinkId=550986">Mail</a> for Windows 10</p><p class=MsoNormal><o:p> </o:p></p><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='border:none;padding:0in'><b>From: </b><a href="mailto:brutzman@nps.edu">Brutzman, Donald (Don) (CIV)</a><br><b>Sent: </b>Sunday, September 22, 2019 5:34 PM<br><b>To: </b><a href="mailto:yottzumm@gmail.com">John Carlson</a><br><b>Cc: </b><a href="mailto:x3d-public@web3d.org">X3D Graphics public mailing list</a><br><b>Subject: </b>Re: [x3d-public] Status: JSON Schema</p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Thanks for noting this advancement John, it is a very useful milestone to us.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>When ready we need to go the the latest version, now labeled 2019-09 (published 8 days ago).</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>There is a helpful-looking section, "Migrating from older drafts"</p><p class=MsoNormal>https://json-schema.org/specification.html#migrating-from-older-drafts</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Our latest version (primarily authored by Roy Walmsley with some updates by you) is available at</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>* http://www.web3d.org/specifications/X3dUnifiedObjectModel-4.0.json</p><p class=MsoNormal>* http://www.web3d.org/specifications/X3dJsonSchemaDocumentation3.3/x3d-3.3-JSONSchema.html</p><p class=MsoNormal>and</p><p class=MsoNormal>* https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/specifications/X3dUnifiedObjectModel-4.0.json</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>The points in the migration sections look pretty straightforward.  How about we go through these in another two weeks or so? TODO, lets</p><p class=MsoNormal>a. upgrade current manually produced version of X3D JSON Schema, then</p><p class=MsoNormal>b. autogenerate X3D JSON Schema using X3DUOM.</p><p class=MsoNormal>c. validate with JSON schema tools when available, we can ask around there for support.</p><p class=MsoNormal>d. update all tool support and all models in X3D Examples Archives.</p><p class=MsoNormal>e. outline what ISO/IEC 19776-5 X3D JSON Encoding specification will look like next year.</p><p class=MsoNormal>    http://www.web3d.org/specifications/X3dSpecificationRelationships.png</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Additional references, now better organized at:</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>                X3D Specifications: Schema and DOCTYPE Validation</p><p class=MsoNormal>                https://www.web3d.org/specifications/contents.html#JSON</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>* coderextreme/X3DJSONLD: X3D JSON loader and node.js express web server for serving files from localhost</p><p class=MsoNormal>   https://github.com/coderextreme/X3DJSONLD</p><p class=MsoNormal>   https://coderextreme.net/X3DJSONLD/src/main/html/index.html</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>* X3D JavaScript Object Notation (JSON) Encoding</p><p class=MsoNormal>   https://www.web3d.org/wiki/index.php/X3D_JSON_Encoding</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>* X3D to JSON Stylesheet Converter</p><p class=MsoNormal>   https://www.web3d.org/x3d/stylesheets/X3dToJson.html</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>* Roy Walmsley, Don Brutzman and John Carlson, A JSON Encoding for X3D,</p><p class=MsoNormal>   ACM SIGGRAPH Web3D 2016 Conference, Anaheim California USA, 22-24 August 2016 (presentation, .pdf).</p><p class=MsoNormal>   https://savage.nps.edu/Savage/JsonEncodingForX3D.Web3D2016.pdf</p><p class=MsoNormal>   https://savage.nps.edu/Savage/JsonEncodingForX3D.Web3D2016.slides.pdf</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Have fun with X3D JSON!  8)</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>On 9/22/2019 12:15 PM, John Carlson wrote:</p><p class=MsoNormal>> The new JSON Schema drafts have been published, but no Java or JavaScript validator implementations exist, so I am staying at draft-07.</p><p class=MsoNormal>> </p><p class=MsoNormal>> Here is the link to implementations in the meantime.</p><p class=MsoNormal>> </p><p class=MsoNormal>> https://json-schema.org/implementations.html#validators**</p><p class=MsoNormal>> </p><p class=MsoNormal>> **</p><p class=MsoNormal>> </p><p class=MsoNormal>> *Good Luck!*</p><p class=MsoNormal>> </p><p class=MsoNormal>> **</p><p class=MsoNormal>> </p><p class=MsoNormal>> *John*</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>all the best, Don</p><p class=MsoNormal>-- </p><p class=MsoNormal>Don Brutzman  Naval Postgraduate School, Code USW/Br       brutzman@nps.edu</p><p class=MsoNormal>Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149</p><p class=MsoNormal>X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman</p><p class=MsoNormal><o:p> </o:p></p></div></body></html>