<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">Just answering one item at the end (and
      so deleting all of the intervening text...)<br>
    </div>
    <blockquote type="cite"
cite="mid:CAKdk67sLLcREW-epJ+oFChabyE0F=+qFAmhj6P7sLUT3PMNR8g@mail.gmail.com">
      <div dir="auto">
        <div><br>
        </div>
        <div dir="auto">
          <div class="gmail_extra">
            <div class="gmail_quote">
              <blockquote class="m_-6107552470267862612quote"
                style="margin:0 0 0 .8ex;border-left:1px #ccc
                solid;padding-left:1ex">
                <br>
                ><br>
                > Overall, it looks like it may be necessary to rely
                on more than the<br>
                > DOM alone for DEF/USE functionality.<br>
                <br>
                Offering another possibility. Unreal (and I think Unity)
                create a class<br>
                for each object. If something is "copied", then it is
                sub-classed from<br>
                the original class. Changes to the parent propagate to
                all subclasses;<br>
                however, a sub-class can override any property (which
                would then<br>
                propagate to sub-sub-classes). I think that means in
                "X3D"-speak, the<br>
                "DEF" node defines the master class. Any node that
                "USE"s it would<br>
                create a subclass. A USE node could also redefine fields
                for that<br>
                subclass, and even make itself available for subclassing
                by using a DEF<br>
                statement. This would look something like:<br>
                ...</blockquote>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
    <blockquote type="cite"
cite="mid:CAKdk67sLLcREW-epJ+oFChabyE0F=+qFAmhj6P7sLUT3PMNR8g@mail.gmail.com">
      <div dir="auto">
        <div dir="auto">Svg also allows reusing a modified use for
          subclassing, judging from the spec. . I have never tried this.</div>
        <div dir="auto"><br>
        </div>
        <div dir="auto">Could be cool. There may be a chance to make
          this a backwards compatible addition to x3d ?</div>
        <div dir="auto"><br>
        </div>
        <div dir="auto">Trying to come up with a practical use case.
          Cars. Blue Cars. Blue cars with lights on.</div>
      </div>
    </blockquote>
    <br>
    Examples where you might wish to sub-class an object. You have one
    master car wheel. The ones on the other side need to have their
    geometry inverted, but not their rotation characteristics. The ones
    in front turn, the ones in back don't. Going around corners cause
    the tires to rotate at different speeds.<br>
    <br>
    Another one is trees. They may all be the same, but they will bend
    differently depending on how the wind blows through the forest.<br>
    <br>
    The people who build Unreal environments do this all time. I can ask
    a couple of illustrated examples if that would help.<br>
    <br>
    <br>
    <div class="moz-signature">-- <br>
      <font class="tahoma,arial,helvetica san serif" color="#333366">
        <font size="+1"><b>Leonard Daly</b></font><br>
        3D Systems & Cloud Consultant<br>
        LA ACM SIGGRAPH Chair<br>
        President, Daly Realism - <i>Creating the Future</i>
      </font></div>
  </body>
</html>