<div dir="ltr"><br><div class="gmail_extra"><div class="gmail_quote">On Thu, Jul 20, 2017 at 3:13 PM, John Carlson <span dir="ltr"><<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div lang="EN-US"><div class="gmail-m_-5807074914988505526WordSection1"><p class="MsoNormal">There is a node tree in X3DJSAIL.   There’s two parts to X3DJSAIL, jsail (the implementation) and sai (the interface)</p><p class="MsoNormal"><u></u></p></div></div></blockquote><div><br></div><div>Ok. I think sai (lowercase), the interface, defined in X3DJSAIL, is quite different from the SAI defined in the standard (abstract, java or javascript), right ?</div><div><br></div><div>My mental model currently is: Use X3DJSAIL to conveniently compose and manage an (X3D looking) object graph (a 'scene'). The object graph can be serialized (written out) to XML (strings). The XML is processed by the X3D browser to an internal scene graph with state. Use SAI to directly manipulate the internal scene graph. Does that sound right ?</div><div><br></div><div>Hoping to clarify and avoid misunderstandings,<br></div><div><br></div><div>-Andreas</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div lang="EN-US"><div class="gmail-m_-5807074914988505526WordSection1"><p class="MsoNormal"> <u></u></p><div style="border-right:none;border-bottom:none;border-left:none;border-top:1pt solid rgb(225,225,225);padding:3pt 0in 0in"><p class="MsoNormal" style="border:none;padding:0in"><b>From: </b><a href="mailto:yottzumm@gmail.com" target="_blank">John Carlson</a><br><b>Sent: </b>Thursday, July 20, 2017 2:39 PM<br><b>To: </b><a href="mailto:andreasplesch@gmail.com" target="_blank">Andreas Plesch</a>; <a href="mailto:x3d-public@web3d.org" target="_blank">X3D Graphics public mailing list</a><br><b>Subject: </b>RE: [x3d-public] setUSE in X3DJSAIL. Impact on X3DJSONLD.</p></div><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">As far as I know, there is no DOM in X3DJSAIL except for processing XML input into the “scene” through reflection as defined with typesafe instances of concrete classes (not in SAI, but likely implementations of SAI).   XML output is done with strings.<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal">Sent from <a href="https://go.microsoft.com/fwlink/?LinkId=550986" target="_blank">Mail</a> for Windows 10<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><div style="border-right:none;border-bottom:none;border-left:none;border-top:1pt solid rgb(225,225,225);padding:3pt 0in 0in"><p class="MsoNormal"><b>From: </b><a href="mailto:andreasplesch@gmail.com" target="_blank">Andreas Plesch</a><br><b>Sent: </b>Thursday, July 20, 2017 2:35 PM<br><b>To: </b><a href="mailto:x3d-public@web3d.org" target="_blank">X3D Graphics public mailing list</a><br><b>Subject: </b>Re: [x3d-public] setUSE in X3DJSAIL. Impact on X3DJSONLD.<u></u><u></u></p></div><p class="MsoNormal"><u></u> <u></u></p><div><div><div><blockquote style="border-top:none;border-right:none;border-bottom:none;border-left:1pt solid rgb(204,204,204);padding:0in 0in 0in 6pt;margin:5pt 0in 5pt 4.8pt"><p class="MsoNormal" style="margin-right:0in;margin-bottom:12pt;margin-left:4.8pt"><br>Date: Thu, 20 Jul 2017 12:18:53 -0400<br>From: John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>><br><br>As far as I know, there is no ?parents? property on a node in DOM, so this whole discussion is rather moot until that changes. If you don?t have parents, then there?s no way to get to one or more of your parents from a child node (not necessarily needed, but?)<u></u><u></u></p></blockquote><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">There is parentNode:<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><div><p class="MsoNormal"><a href="https://developer.mozilla.org/en-US/docs/Web/API/Node/parentNode" target="_blank">https://developer.mozilla.org/<wbr>en-US/docs/Web/API/Node/<wbr>parentNode</a><u></u><u></u></p></div></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">But the property is readonly because there can be only one parent for a node.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">x3dom/cobweb do not use the DOM for storing the x3d scene graph. They use javascript objects, for this reason among others. Additionally, there is a SAI service importDOM (or so) to help with bridging.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">I am not sure if I am following the discussion completely. One key seems to be to be careful in distinguishing in nomenclature (and praxis) the abstract scene graph (including the runtime state) - accessible via standardized SAI - from the (XML) node tree. Is perhaps X3DJSAIL a bit of a misnomer somewhat conflating SAI services with node tree manipulation ?<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div></div></div></div><p class="MsoNormal">Andreas<u></u><u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"><u></u> <u></u></p></div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature">Andreas Plesch<br>39 Barbara Rd.<br>Waltham, MA 02453</div>
</div></div>