[x3d-public] hanim name field vs. DEF

Andreas Plesch andreasplesch at gmail.com
Mon Jul 2 14:53:40 PDT 2018

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

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

Thanks for any feedback,


Andreas Plesch
Waltham, MA 02453

More information about the x3d-public mailing list