<div dir="auto">I do realize the value of a JavaScript SAI library for C/C++/C#/Pascal/Java browsers!</div><div dir="auto"><br></div><div dir="auto">I don’t think X3DJSONLD.* is suited for this.   We can talk about a separate product for generating something similar to <a href="http://x3d.py/X3DJSAIL">x3d.py/X3DJSAIL</a> in JavaScript for a browser with a JavaScript engine.</div><div dir="auto"><br></div><div dir="auto">When having discussions with C/C++ x3d browser engineers, it was decided that a JSON to XML converter in a separate process would be a good first step.  I have a prototype for that, in C++. Adopters welcome.</div><div dir="auto"><br></div><div dir="auto">That is pretty much the niche i fit in.</div><div dir="auto"><br></div><div dir="auto">There are also more converters, that take the DOM document from X3DJSONLD.* and can render to a number of “encodings,” especially in batch fashion.  These converters might now be called SAI, I’ve not studied the standard.</div><div dir="auto"><br></div><div dir="auto">The main input into X3DJSONLD is a JSON object.  The web page serves as an NxM converter.</div><div dir="auto"><br></div><div dir="auto">Please stop advertising X3DJSONLD as SAI.   What it can do is generate Python, Java and JavaScript programs that use x3d.py and X3DJSAIL.</div><div dir="auto"><br></div><div dir="auto">It’s in the name, X3D JSON LoaDer, more suitable for Inline use.</div><div dir="auto"><br></div><div dir="auto">Sometimes I call X3DJSONLD the JSONParser.  This is similar to an XML DOM parser.  DOM parsers produce DOM from XML.  My JSONParser produces DOM documents from JavaScript from JSON.  The last part is done by regular JSON parsers.</div><div dir="auto"><br></div><div dir="auto">JSONParser.js is found in X_ITE and X3DOM, and is renamed and adapted from X3DJSONLD.js</div><div dir="auto"><br></div><div dir="auto">John </div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jan 12, 2023 at 10:46 AM John Carlson <<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)"><div dir="ltr"><div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr"><font style="color:rgb(0,0,0)">On Thu, Jan 12, 2023 at 10:00 AM Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>> wrote:</font></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)"><div><div lang="EN-US"><div><ol style="margin-top:0in" start="3" type="1"><li><font style="color:rgb(0,0,0)">Take a look at our X3D Node Inventory Comparison, lets prepare to regularly update.</font><u></u><u></u></li></ol><p class="MsoNormal" style="margin-left:4.5pt"><u></u> <u></u></p><ul style="margin-top:0in" type="disc"><li style="margin-left:0in"><font style="color:rgb(0,0,0)">X3D Specifications: Schema and DOCTYPE Validation</font><u></u><u></u></li><li style="margin-left:0in"><a href="https://www.web3d.org/specifications" target="_blank">https://www.web3d.org/specifications</a><u></u><u></u></li><li style="margin-left:0in"><font style="color:rgb(0,0,0)">These assets are commonly used for XML validation of X3D scenes, and in-depth documentation is also provided here.</font><u></u><u></u></li></ul><p class="MsoNormal"><u></u> <u></u></p><ul style="margin-top:0in" type="disc"><li style="margin-left:0in"><font style="color:rgb(0,0,0)">X3D Node Inventory Comparison (.pdf) shows node-by-node implementation coverage of the X3D Abstract Specification: validation using X3D Schema, X3D DOCTYPE, and X3D Schematron; X3D Tooltips and VRML97 node sets; plus selected open-source implementations: FreeWrl, X3DOM, X_ITE, view3dscene (Castle Game Engine), X3D-Edit, Xj3D.</font><u></u><u></u></li><li style="margin-left:0in"><a href="https://www.web3d.org/specifications/X3dNodeInventoryComparison.pdf" target="_blank">https://www.web3d.org/specifications/X3dNodeInventoryComparison.pdf</a></li></ul></div></div></div></blockquote><div><br></div><div><font style="color:rgb(0,0,0)">"Can John Carlson's open-source 
X3DJSONLD be regularized to 
match JavaScript SAI standard?"</font></div><div><br></div><div><font style="color:rgb(0,0,0)">There are 2 parts in X3DJSONLD.  The loader, which requires modifications to SAI to support JSON scene loading.  This has been accomplished in X3DOM and X_ITE. but no one has stepped forward for standardization of this.  Something like importDoc, importJSON, createX3DfromJSON might be appropriate. Andreas and I have worked on X3DOM to add more standard functions to the runtime.  I trust that once the standard is created, I or Holger will modify X_ITE to follow standard SAI for JSON loading. There is no issue with just specifying an X3D JSON file in an Inline right now, and is probably preferred over the SAI functionality.</font></div><div><font style="color:rgb(0,0,0)"><br></font></div><div><font style="color:rgb(0,0,0)">The other part is the JavaScript app files, which now align with X3DJSAIL using a buggy Node.js->Java FFI. found on npm.  Other solutions (Nashorn) worked well in the past. I am not sure why we aren't pursuing those</font>.</div><div><br></div><div>If we want a JavaScript SAI standard implementation, perhaps we should modify X3DOM or X_ITE?  What's the attraction of a 3rd JavaScript SAI implementation?</div><div><br></div><div><br></div></div></div></div>
</blockquote></div></div>