<html>
 <head>
  <meta name="viewport" content="width=device-width">
  <meta http-equiv="Content-Type" content="text/vnd.ui.insecure+html;charset=utf-8">
 </head>
 <body style="overflow-wrap:break-word; word-break: break-word;"><div class="mail_android_message" style="line-height: 1; padding: 0.5em">Hi John,<br/><br/>I cannot provide more info, but I can contribute my point of view and my opinion:<br/><br/>Yes, it's also my perception - related to classical X3D Players like Instant Player, BS Contact, Octaga, FreeWRL, ......<br/> - that the ecmascript, which can be used in X3D <Script> nodes, is completely separate from the JavaScript in the possibly surrounding web page.<br/><br/>I always felt it a drawback, that one was not able to extract common functionality from the   ecmascript of several X3D scripts and placing it at a lower layer - e.g. in the surrounding html <head> section, calling by function call. Thus a lot of cloning was necessary. Or I had to define "lower layer script nodes" and emulate function calls by event exchange (troubleful).<br/><br/>It was not possible to call functions from other scripts or to use JS libraries.<br/><br/>Please anybody correct me, if I'm wrong.<br/><br/>A second drawback was that I never could use switch(), because at least one browser supported only if() else (and similar issues) and I wanted to code browser stiff. This drawback a minor one.<br/><br/>Just my opinion, as I already stated.<br/><br/>All the best<br/>Christoph<br/><br/>-- <br/>Diese Nachricht wurde von meinem Android Mobiltelefon mit GMX Mail gesendet.</div><div class="mail_android_quote" style="line-height: 1; padding: 0.3em"><html><body>Am 16.10.20, 02:57 schrieb John Carlson <yottzumm@gmail.com>:</body></html><blockquote class="gmail_quote" style="margin: 0.8ex 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

  <div dir="auto">
   That is, the JavaScript in a X3DScript isn’t working yet.
  </div>
  <div dir="auto">
   <br>
  </div>
  <div dir="auto">
   Scripts are  behind that,  I can’t even tell there are any fields in a Script.
  </div>
  <div dir="auto">
   <br>
  </div>
  <div dir="auto">
   I believe the main difference between x_ite and X3DOM is one uses the HTML parser for script and the other uses an XML parser for script.
  </div>
  <div dir="auto">
   <br>
  </div>
  <div dir="auto">
   Please correct me if I am wrong.
  </div>
  <div dir="auto">
   <br>
  </div>
  <div dir="auto">
   If I am right, we should not release X3D4 as HTML compatible unless we provide an alternate web scripting language...wasn’t that called VRMLscript in the day?
  </div>
  <div dir="auto">
   <br>
  </div>
  <div dir="auto">
   I am done until someone provides more info.
  </div>
  <div dir="auto">
   <br>
  </div>
  <div dir="auto">
   John
  </div>
  <div dir="auto">
   <br>
  </div>
  <div dir="auto">
   <br>
  </div>
  <div>
   <br>
   <div class="gmail_quote">
    <div class="gmail_attr" dir="ltr">
     On Thu, Oct 15, 2020 at 7:40 PM 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="auto">
      Joe you’re at level 401, when I’m still at 101 or 102.
     </div>
     <div>
      <br>
      <div class="gmail_quote"></div>
     </div>
     <div>
      <div class="gmail_quote">
       <div class="gmail_attr" dir="ltr">
        On Thu, Oct 15, 2020 at 4:38 PM Joseph D Williams <<a href="mailto:joedwil@earthlink.net">joedwil@earthlink.net</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>
         <div>
          <ul style="margin-top:0in" type="disc">
           <li style="margin-left:0in">Script node or field node was not considered first class X3DOM nodes so we couldn’t route to/from it<u></u><u></u></li>
          </ul>
          <p class="MsoNormal"><u></u> <u></u></p>
          <p class="MsoNormal">The x3d script node can either in/out data using routes or directly to/from another node no route using direct out. <u></u><u></u></p>
          <p class="MsoNormal">The only difference is that directout do not initiate a cascade because no route. <u></u><u></u></p>
          <p class="MsoNormal">Thanks, <u></u><u></u></p>
          <p class="MsoNormal">Joe<u></u><u></u></p>
         </div>
        </div>
        <div>
         <div>
          <p class="MsoNormal"><u></u> <u></u></p>
          <div style="border-style:solid none none;border-top-width:1pt;padding:3pt 0in 0in;border-top-color:rgb(225,225,225)">
           <p class="MsoNormal" style="border:none;padding:0in"><b>From: </b><a href="mailto:yottzumm@gmail.com">John Carlson</a><br><b>Sent: </b>Thursday, October 15, 2020 2:18 PM<br><b>To: </b><a href="mailto:andreasplesch@gmail.com">Andreas Plesch</a><br><b>Cc: </b><a href="mailto:Leonard.Daly@realism.com">Leonard Daly</a>; <a href="mailto:x3d-public@web3d.org">X3D Graphics public mailing list</a><br><b>Subject: </b>Re: [x3d-public] Fwd: Priorities</p>
          </div>
          <p class="MsoNormal"><u></u> <u></u></p>
          <div>
           <p class="MsoNormal">I believe it was Leonard’s conclusion that the script tag could not be overridden, but now it a appears that there’s a way to implement new scripting languages (brython) inside the script node.   Can we modify/add X3D script fields and routes to X3DOM to provide events for a new scripting language?</p>
          </div>
          <div>
           <p class="MsoNormal"><u></u> <u></u></p>
          </div>
          <div>
           <p class="MsoNormal">Leonard, can you weigh in on adding a new scripting language to the script node?</p>
          </div>
          <div>
           <p class="MsoNormal"><u></u> <u></u></p>
          </div>
          <div>
           <p class="MsoNormal">Thanks!</p>
          </div>
          <div>
           <p class="MsoNormal"><u></u> <u></u></p>
          </div>
          <div>
           <p class="MsoNormal">John</p>
          </div>
          <div>
           <p class="MsoNormal"><u></u> <u></u></p>
           <div>
            <div>
             <p class="MsoNormal">On Thu, Oct 15, 2020 at 4:06 PM John Carlson <<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a>> wrote:</p>
            </div>
            <blockquote style="border-style:none none none solid;border-left-width:1pt;padding:0in 0in 0in 6pt;margin-left:4.8pt;margin-right:0in;border-left-color:rgb(204,204,204)">
             <div>
              <p class="MsoNormal">Yes, we are considering 2 different tags, script and X3DScript.  What we’re trying to figure out is whether script tag can be overridden/extended to provide fields in X3DOM.   I believe this can be done by providing a new script type (ala brython).  We know X3DScript already has fields, but we need more research on events and routes.</p>
             </div>
             <div>
              <p class="MsoNormal"><u></u> <u></u></p>
              <div>
               <div>
                <p class="MsoNormal">On Thu, Oct 15, 2020 at 3:51 PM Andreas Plesch <<a href="mailto:andreasplesch@gmail.com">andreasplesch@gmail.com</a>> wrote:</p>
               </div>
              </div>
             </div>
            </blockquote>
           </div>
          </div>
          <p class="MsoNormal" style="margin-left:9.6pt">Hi John,<br><br>yes, your memory is correct. x3dom does not know about a script or<br>x3dscript x3d node. You would have to implement it as a new node.<br><br>-Andreas<br><br>On Thu, Oct 15, 2020 at 4:09 PM John Carlson <<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a>> wrote:<br>><br>> Yes, I’ve added the field types.<br>><br>> Now the question for the master branch is, what JavaScript is necessary to add fields to X3DScripts, and how do we mesh Protos with X3DScripts.<br>><br>> The question for the Script branch is whether it’s going to work with existing X3DOM architecture, in particular, what were the issues behind previous implementation efforts. I think the best way forward would be implement a new scripting language for script nodes which includes fields.   We should be able to follow brython’s example.<br>><br>> For me, the failures of previous attempts were found in the debugger.  If I recall correctly,  the Script node or field node was not considered first class X3DOM nodes so we couldn’t route to/from it.   I need to start the debugger again.<br>><br>> On Thu, Oct 15, 2020 at 8:30 AM Andreas Plesch <<a href="mailto:andreasplesch@gmail.com">andreasplesch@gmail.com</a>> wrote:<br>>><br>>> All field type constructors and methods are defined fields.js . Since x3dom is operating together with other scripts on the page everything needs to be namespaced. Instead of<br>>><br>>> new MFInt32()<br>>><br>>> there is a<br>>><br>>> new x3dom.fields.MFInt32()<br>>><br>>> I think John added appropriate helpers which should work in an encapsulated function scope under which all X3Dscripts execute.<br>>><br>>><br>>><br>>> ---on the phone---<br>>><br>>> On Thu, Oct 15, 2020, 2:45 AM Don Brutzman <<a href="mailto:brutzman@nps.edu">brutzman@nps.edu</a>> wrote:<br>>>><br>>>> Color me very surprised if X3DOM doesn't have field types already.<br>>>><br>>>> On 10/14/2020 8:52 PM, John Carlson wrote:<br>>>> ><br>>>> > I've added the following test to x3dom (coderextreme's master branch).  There are some pretty basic things such that it doesn't work, below--MFInt32 not defined.   Do I need to define all field Types?  Can do, I've done it before!  I probably need to do it in the same scope as initialize?<br>>>> ><br>>>> > I will pursue adding field types for now. Wish me luck!<br>>>> ><br>>>> > Thanks.<br>>>> ><br>>>> > x3dom-full.debug.js:45007 Adding fields<br>>>> > x3dom.registerNodeType.defineClass.nodeChanged @ x3dom-full.debug.js:45007<br>>>> > x3dom-full.debug.js:45034 Number of fields 6<br>>>> > VM46:31 Uncaught ReferenceError: MFInt32 is not defined<br>>>> >      at eventsProcessed (eval at nodeChanged (x3dom-full.debug.js:45126), <anonymous>:31:16)<br>>>> >      at initialize (eval at nodeChanged (x3dom-full.debug.js:45126), <anonymous>:24:2)<br>>>> >      at eval (eval at nodeChanged (x3dom-full.debug.js:45126), <anonymous>:236:41)<br>>>> >      at x3dom.registerNodeType.defineClass.nodeChanged.nodeChanged (x3dom-full.debug.js:45139)<br>>>> >      at x3dom.NodeNameSpace.setupTree (x3dom-full.debug.js:11796)<br>>>> >      at x3dom.registerNodeType.defineClass.nodeChanged.nodeChanged (x3dom-full.debug.js:33648)<br>>>> >      at x3dom.NodeNameSpace.setupTree (x3dom-full.debug.js:11796)<br>>>> >      at x3dom.NodeNameSpace.<anonymous> (x3dom-full.debug.js:11789)<br>>>> >      at NodeList.forEach (<anonymous>)<br>>>> >      at x3dom.NodeNameSpace.setupTree (x3dom-full.debug.js:11787)<br>>>> > x3dom-full.debug.js:45007 Adding fields<br>>>> > x3dom.registerNodeType.defineClass.nodeChanged @ x3dom-full.debug.js:45007<br>>>> > x3dom-full.debug.js:45034 Number of fields 5<br>>>> > x3dom-full.debug.js:45007 Adding fields<br>>>> > x3dom.registerNodeType.defineClass.nodeChanged @ x3dom-full.debug.js:45007<br>>>> > x3dom-full.debug.js:45034 Number of fields 5<br>>>> > x3dom-full.debug.js:45007 Adding fields<br>>>> > x3dom.registerNodeType.defineClass.nodeChanged @ x3dom-full.debug.js:45007<br>>>> ><br>>>> >   create mode 100644 test/functional/Gears/Rotor.x3d<br>>>> >   create mode 100644 test/functional/Gears/gears.x3d<br>>>> >   create mode 100644 test/functional/Gears/index.html<br>>>> ><br>>>> > <a href="http://localhost:8000/test/functional/Gears/">http://localhost:8000/test/functional/Gears/</a><br>>>> ><br>>>> > Thanks,<br>>>> ><br>>>> > John<br>>>> ><br>>>> > ---------- Forwarded message ---------<br>>>> > From: *John Carlson* <<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a> <mailto:<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a>>><br>>>> > Date: Wed, Oct 14, 2020 at 9:54 PM<br>>>> > Subject: Re: [x3d-public] Priorities<br>>>> > To: Don Brutzman <<a href="mailto:brutzman@nps.edu">brutzman@nps.edu</a> <mailto:<a href="mailto:brutzman@nps.edu">brutzman@nps.edu</a>>><br>>>> > Cc: X3D Graphics public mailing list <<a href="mailto:x3d-public@web3d.org">x3d-public@web3d.org</a> <mailto:<a href="mailto:x3d-public@web3d.org">x3d-public@web3d.org</a>>><br>>>> ><br>>>> ><br>>>> > I will be pursuing getting X3DScript working entirely within x3dom this evening.<br>>>> ><br>>>> > John<br>>>> ><br>>>> > On Wed, Oct 14, 2020 at 9:44 PM John Carlson <<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a> <mailto:<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a>>> wrote:<br>>>> ><br>>>> >     X3DJSONLD only has limited functionality for X3DScript.   I stripped it because X_ITE did not have support, so none of my X3DScripts were working.   I hope we can get X3DScript added to XMLSchema, X3DUOM etc<br>>>> ><br>>>> >     Thanks, Don<br>>>> ><br>>>> >       John<br>>>> ><br>>>> >     On Wed, Oct 14, 2020 at 9:33 PM John Carlson <<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a> <mailto:<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a>>> wrote:<br>>>> ><br>>>> >         If I recall correctly, full support for SAI will require a Browser implementation.   I suggest someone scope out the work for that, if any.   That is, much of the functionality may be there.  It’s important to distinguish X_ITE’s Browser from X3DOM’s in any case.<br>>>> ><br>>>> >         John<br>>>> ><br>>>> >         On Wed, Oct 14, 2020 at 9:22 PM John Carlson <<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a> <mailto:<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a>>> wrote:<br>>>> ><br>>>> >             Andreas, can you share any info about why field routing may not be working for X3DScripts in X3DOM?  See coderextreme repository.<br>>>> ><br>>>> >             When I get a chance, I will peek at proto declare/interface fields, but my understanding is those go away!<br>>>> ><br>>>> >             Note that I’m not currently working on SAI for X3DOM, but I do have some preliminary steps for declaring field types.<br>>>> ><br>>>> >             John<br>>>> ><br>>>> >             On Wed, Oct 14, 2020 at 6:45 PM Don Brutzman <<a href="mailto:brutzman@nps.edu">brutzman@nps.edu</a> <mailto:<a href="mailto:brutzman@nps.edu">brutzman@nps.edu</a>>> wrote:<br>>>> ><br>>>> >                 On 10/13/2020 8:26 PM, John Carlson wrote:<br>>>> >                  ><br>>>> >                  > Here’s may be possible:  X3DScript node for X3DOM and  X_ITE.   PROTOs with scripts<br>>>> ><br>>>> >                 Script node support is is always topmost deficient.  X3DOM without scripts is not compliant X3D or VRML.<br>>>> ><br>>>> >                 Prototypes are tied for importance, as in Really Really Important for X extensibility.<br>>>> ><br>>>> >                 Please continue sharing information with Andreas so that this might all land and work.  Thanks John.<br>>>> ><br>>>> >                 all the best, Don<br>>>> >                 --<br>>>> >                 Don Brutzman  Naval Postgraduate School, Code USW/Br <a href="mailto:brutzman@nps.edu">brutzman@nps.edu</a> <mailto:<a href="mailto:brutzman@nps.edu">brutzman@nps.edu</a>><br>>>> >                 Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149<br>>>> >                 X3D graphics, virtual worlds, navy robotics <a href="http://faculty.nps.edu/brutzman">http://faculty.nps.edu/brutzman</a><br>>>> ><br>>>><br>>>> all the best, Don<br>>>> --<br>>>> Don Brutzman  Naval Postgraduate School, Code USW/Br       <a href="mailto:brutzman@nps.edu">brutzman@nps.edu</a><br>>>> Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149<br>>>> X3D graphics, virtual worlds, navy robotics <a href="http://faculty.nps.edu/brutzman">http://faculty.nps.edu/brutzman</a><br><br><br><br>-- <br>Andreas Plesch<br>Waltham, MA 02453</p>
          <p class="MsoNormal"><u></u> <u></u></p>
         </div>
        </div>
       </blockquote>
      </div>
     </div> 
    </blockquote>
   </div>
  </div> _______________________________________________ x3d-public mailing list x3d-public@web3d.org http://web3d.org/mailman/listinfo/x3d-public_web3d.org 
 </blockquote></div></body>
</html>