<html>
  <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">On 9/2/2016 5:01 AM, Andreas Plesch
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAKdk67vLiuZFEzAswx2nHtn+O=f6xwC-2Vp4ZrDZ1KQYW6HTTg@mail.gmail.com"
      type="cite">
      <p dir="ltr">DEF/USE looks nice. It would require special
        treatment of nodes DEF/USE by Macro, and perhaps avoiding
        registration of the nodes element. It may work.<br>
      </p>
    </blockquote>
    <br>
    <br>
    I think you want the DOM and X3D trees to look the same whether the
    nodes are inserted from an external source or as a children of
    'nodes'. That either requires removing the 'nodes' element from the
    tree (or not inserting it) as you indicate OR adding one in when
    loading from an external source. I think this is more of a code
    optimization issue. I don't think it is a good idea to walk the
    scene graph and assume a particular structure.<br>
    <br>
    Another way to look at this is similar to using a color (via
    Material) and an external texture (via ImageTexture). The idea is so
    that objects have some color prior to applying the complete texture.
    Perhaps X3D Nodes in the 'nodes' field are designed to be the
    initial display of the object prior to loading in the external
    resource. That might cause some issues, but I think it is worthy of
    discussion.<br>
    <br>
    Leonard Daly<br>
    <br>
    <br>
    <br>
    <blockquote
cite="mid:CAKdk67vLiuZFEzAswx2nHtn+O=f6xwC-2Vp4ZrDZ1KQYW6HTTg@mail.gmail.com"
      type="cite">
      <p dir="ltr">
        Andreas </p>
      <div class="gmail_extra"><br>
        <div class="gmail_quote">On Sep 2, 2016 12:32 AM, "Leonard Daly"
          <<a moz-do-not-send="true" href="mailto:web3d@realism.com">web3d@realism.com</a>>
          wrote:<br type="attribution">
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            <div bgcolor="#FFFFFF" text="#000000">
              <div>See below...<br>
              </div>
              <blockquote type="cite">
                <div dir="ltr">On Mon, Aug 29, 2016 at 12:32 AM, Leonard
                  Daly <span dir="ltr"><<a moz-do-not-send="true"
                      href="mailto:web3d@realism.com" target="_blank">web3d@realism.com</a>></span>
                  wrote:<br>
                  <div class="gmail_extra">
                    <div class="gmail_quote">
                      <blockquote class="gmail_quote" style="margin:0 0
                        0 .8ex;border-left:1px #ccc
                        solid;padding-left:1ex">
                        <div bgcolor="#FFFFFF" text="#000000">On
                          8/26/2016 7:39 PM, Leonard Daly wrote: <br>
                          <blockquote type="cite">
                            <blockquote type="cite">For the last year I
                              have been working on advancing X3D to be
                              standardized in HTML5/DOM environment and
                              support mobile and VR. I have just
                              completed alpha work on the Macro node.
                              This node provides the static definition
                              capabilities of PROTO in an HTML5
                              environment. It can perform string
                              substitution (name/value pairs) on X3D
                              code stored externally. The node
                              documentation is at <a
                                moz-do-not-send="true"
href="http://tools.realism.com/specification/x3d-v40/abstract-specification/changes-additions-x3d-v33/macro"
                                target="_blank">http://tools.realism.com/speci<wbr>fication/x3d-v40/abstract-<wbr>specification/changes-<wbr>additions-x3d-v33/macro</a>.<br>
                              <br>
                              I will continue to get to at least alpha
                              stage (basic functional implemented and
                              working) for all nodes I discussed during
                              my presentations at Web3D2016 &
                              SIGGRAPH. The presentation is online at <a
                                moz-do-not-send="true"
href="http://realism.com/presentations/188?title=Extending-X3DOM-to-Mobile"
                                target="_blank">http://realism.com/presentatio<wbr>ns/188?title=Extending-X3DOM-<wbr>to-Mobile</a>.
                              <br>
                              <br>
                              All of the code is up on Github at <a
                                moz-do-not-send="true"
                                href="https://github.com/DrX3D/x3dv4"
                                target="_blank">https://github.com/DrX3D/x3dv4</a>
                              with testing code. <br>
                              <br>
                              I am interested in any bugs that are found
                              or new/revised direction for the nodes. I
                              am completely open to anyone who would
                              like to help code. <br>
                            </blockquote>
                          </blockquote>
                        </div>
                      </blockquote>
                    </div>
                    I understand how the external reference to a macro
                    template works since for each instance of the macro
                    it is possible to reference the same url, and
                    therefore template. How do you envision, on the
                    other hand, use of the nodes field as the other
                    option where the template is provided as child nodes
                    ? Repeating the template for each instance would not
                    make a lot of sense. Is there something you had in
                    mind ?<br>
                  </div>
                </div>
              </blockquote>
              <br>
              I was thinking DEF/USE. USE works in X3DOM by referencing
              the node sub-tree defined by DEF. Something like:<br>
              <br>
              <Macro params='"n1=v1","n2=v2"'><br>
                  <nodes DEF='Macro1Nodes'><br>
                      <transform ...><br>
                              ...<br>
                      </transform><br>
                  </nodes><br>
              </Macro><br>
                  :<br>
                  :<br>
              <Macro params='"n1=va","n2=vb"'><br>
                  <nodes USE='Macro1Nodes'></nodes><br>
              </Macro><br>
              <br>
              <br>
              <br>
              <div>-- <br>
                <font color="#333366"> <font size="+1"><b>Leonard Daly</b></font><br>
                  X3D Co-Chair<br>
                  Cloud Consultant<br>
                  President, Daly Realism - <i>Creating the Future</i>
                </font></div>
            </div>
          </blockquote>
        </div>
      </div>
    </blockquote>
    <br>
    <p><br>
    </p>
    <div class="moz-signature">-- <br>
      <font class="tahoma,arial,helvetica san serif" color="#333366">
        <font size="+1"><b>Leonard Daly</b></font><br>
        X3D Co-Chair<br>
        Cloud Consultant<br>
        President, Daly Realism - <i>Creating the Future</i>
      </font></div>
  </body>
</html>