<div dir="auto">I know X3DJSONLD will only warn, and my x3dschema repository will report errors if the JSON schema is set up for a limited number of names.</div><br><div class="gmail_quote"><div dir="ltr">On Tue, Jul 3, 2018, 11:33 AM Leonard Daly <<a href="mailto:Leonard.Daly@realism.com">Leonard.Daly@realism.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div text="#000000" bgcolor="#FFFFFF">
    <div class="m_1064049983510891859moz-cite-prefix">Andreas,<br>
      <br>
      Some comments on DEF in general<br>
      <ol>
        <li>DEF values are scoped in a single X3D structure (4.4.3)
          where structure is file, prototype, or string
          (CreateX3DFrom...)</li>
        <li>The 19775-1 document makes no reference to allowed
          characters or character sequence in DEF values. It appears
          that it is possible that the string (between ") is legal:
          "This is &#61; 'Legal' DEF value\" (note that various
          encodings may impose additional requirements).<br>
        </li>
        <li>The only restrictive reference I could find on DEF is in the
          Annexes that describe profiles. The total number of DEFs is
          either limited to 50 utf8 octets or that is the minimum
          required support (or both).</li>
        <li>The XML encoding document (19776-1) in [4.3.4] indicates
          that DEF is assigned the XML type ID (not the 'id' attribute).
          That imposes certain character set and pattern limitations. It
          also states that USE is assigned the XML type IDREF, though I
          cannot find any other reference to using IDREF inside an XML
          document (all references are internal to DTDs or Schemas).<br>
        </li>
      </ol>
      <p>As you noted the 'name' field in H-Anim is poorly specified
        with no requirements other than it being a SFString. There is no
        requirement for uniqueness, so I am not sure how a developer
        would use it to identify each HAnimJoint at run-time (see 3rd
        paragraph of 26.3.3)<br>
      </p>
      <p><br>
      </p>
      <p>Leonard Daly<br>
      </p>
      <p><br>
      </p>
    </div>
    <blockquote type="cite">
      <pre>The HAnim nodes have a required name field which is subject to certain
rules depending on the type of node. It is supposed to be used to for
referencing nodes within an Humanoid to each other.
For example. segment nodes needs to have names compatible with the
parent joint node name.
Another rule is that a global reference to a HAnim node needs to
consist of a prefix and the name as a suffix.
Here is where the DEF keyword comes in. In the examples, the DEF value
is constructed as the global reference to a name. This makes sense but
seems to be just a convention since I could not find instructions to
this effect in the abstract x3d spec., the x3d or the vrml encodings.
The assumption seems to be that the DEF value constitutes the global
reference in the x3d context.
Several questions arise:
Should an implementation care about the relationship with DEF and name
values ? Presumably yes, in in some way.
To what extent if any should an implementation enforce the naming
rules, eg. warn or ignore nodes with non-compliant names ? Perhaps
only warn.
Is the DEF value implicitly defined by the name value and the
Humanoids name value as prefix, if not explicitly provided ? Probably
not.

What, in general, is an x3d browser implementation expected to do with
the name field, if anything ?

Thanks for any feedback,

-Andreas

</pre>
    </blockquote>
    <p><br>
    </p>
    <div class="m_1064049983510891859moz-signature">-- <br>
      <font class="m_1064049983510891859tahoma,arial,helvetica m_1064049983510891859san m_1064049983510891859serif" color="#333366">
        <font size="+1"><b>Leonard Daly</b></font><br>
        3D Systems & Cloud Consultant<br>
        LA ACM SIGGRAPH Past Chair<br>
        President, Daly Realism - <i>Creating the Future</i>
      </font></div>
  </div>

_______________________________________________<br>
x3d-public mailing list<br>
<a href="mailto:x3d-public@web3d.org" target="_blank" rel="noreferrer">x3d-public@web3d.org</a><br>
<a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" rel="noreferrer noreferrer" target="_blank">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a><br>
</blockquote></div>