<div dir="ltr"><a href="https://coderextreme.net/X3DJSONLD/src/main/html/proto.html" target="_blank">https://coderextreme.net/X3DJSONLD/src/main/html/proto.html</a>  <br><div><br></div><div>select one of the X3D files that start with ./data/</div><div><br></div><div>Like:</div><div><br></div><div>./data/bubs.x3d</div><div>./data/rubik.x3d</div><div>./data/x3domflowers.x3d</div><div>./data/X3dHeaderPrototypeSyntaxExamples.x3d<br></div><div><br></div><div>If you run my app.js server (requires SSL keys) locally, then you can test more of the x3d resources  examples by checking out the X3D sourceforge project to /c/x3d-code/<a href="http://www.web3d.org/.">www.web3d.org/.</a>..</div><div><br></div><div>Start the server with</div><div><br></div><div>node app.js</div><div><br></div><div>then go to <a href="https://localhost:3000/src/main/html/proto.html">https://localhost:3000/src/main/html/proto.html</a></div><div><br></div><div>then select some of the ./<a href="http://www.web3d.org/.">www.web3d.org/.</a>.. files.</div><div><br></div><div>Note that this does proto expansion on JSON, so first i translate from XML to JSON, then do the proto expansion, then convert back to XML.</div><div><br></div><div>You may optionally turn off scripting and proto expansion, if you want to see differences.</div><div><br></div><div>There need to be some effort to make this work in all cases.</div><div><br></div><div>1.  Don't hog graphics contexts.</div><div>2.  Fix up Scripting on X3DOM.   This may be possible with Scripts.js (not recommended).  Primarily, I recommend fixing routing to/from scripts in X3DOM. That may mean approaching the w3c to allow fields in a script nodes.</div><div>3.  Make sure PROTOs are working in all cases.  Please file issues against X3DJSONLD.   I already know there are many unwritten issues. <a href="https://github.com/coderextreme/X3DJSONLD/issues">https://github.com/coderextreme/X3DJSONLD/issues</a></div><div><br></div><div>Note that app.js does not work on a production machine purposefully.  You may want to rewrite app.js in python. Whatever floats your boat, changes are welcome.</div><div><br></div><div>John</div></div>