<div dir="auto">I don’t mind adding an info field, but I prefer Metadata nodes for uniformity across all nodes beyond HAnim, realizing that HAnim is a special spec with unique requirements.</div><div dir="auto"><br></div><div dir="auto">John <br><div class="gmail_quote gmail_quote_container" dir="auto"><div dir="ltr" class="gmail_attr">On Mon, Mar 16, 2026 at 12:20 AM Joe D Williams via x3d-public <<a href="mailto:x3d-public@web3d.org">x3d-public@web3d.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="color:rgb(0,0,0);font-family:arial,sans-serif;font-size:12pt"><p style="margin:0.1rem 0;line-height:1.0">>  <span style="font-family:arial,sans-serif">adding an <em>info </em>field for all of the HAnim nodes, </span></p>
<p style="margin:0.1rem 0;line-height:1.0"> </p>
<p style="margin:0.1rem 0;line-height:1.0"><span style="font-family:arial,sans-serif">seems fine to me</span></p></div><div style="color:rgb(0,0,0);font-family:arial,sans-serif;font-size:12pt">
<p style="margin:0.1rem 0;line-height:1.0"><span style="font-family:arial,sans-serif">Joe</span></p>
</div>
<div style="border-left:1px solid #aaa;box-sizing:border-box;padding:10px 0 10px 15px;margin:0">
<p>-----Original Message-----<br>From: Don Brutzman via x3d-public <<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>><br>Sent: Mar 13, 2026 11:55 AM<br>To: Humanoid Animation (HAnim) Working Group <<a href="mailto:h-anim@web3d.org" target="_blank">h-anim@web3d.org</a>>, X3D Public Mailing List <<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a>><br>Cc: Don Brutzman <<a href="mailto:don.brutzman@gmail.com" target="_blank">don.brutzman@gmail.com</a>><br>Subject: [x3d-public] Including metadata within an HAnim model</p>
<p style="margin:0.1rem 0;line-height:1.0"> </p>
<div dir="ltr">
<div>Dick, Aaron and I had good discussions during today's X3D Standards Working Group meeting.</div>
<div> </div>
<div>One topic of shared interest:</div>
<div>
<ul>
<li>Mantis 1527: Including metadata within an HAnim model.</li>
<li><a href="https://mantis.web3d.org/view.php?id=1527" target="_blank">https://mantis.web3d.org/view.php?id=1527</a></li>
</ul>
</div>
<div>
<table style="font-family:Poppins;border-collapse:collapse;border-spacing:0px;width:1023.37px;max-width:100%;margin-bottom:0px;border-width:0px;border-style:solid;border-color:#e5e5e5 #dddddd #dddddd;color:#393939;font-size:13px;border-radius:0px">
<tbody style="box-sizing:border-box">
<tr style="box-sizing:border-box">
<td style="box-sizing:border-box;padding:5px;line-height:1.42857;vertical-align:top;border-width:1px 0px;border-style:solid;border-color:#dddddd;border-radius:0px" colspan="5"><br>
<blockquote style="margin:0 0 0 40px;border:none;padding:0px">The metadata structure in an HAnim is relatively simple:<br>- HAnimHumanoid <em>info </em>field: paired "name=value" string array<br>- All of the HAnim nodes have a simple <em>description </em>field</blockquote>
<ul>
<li><a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19774/ISO-IEC19774-1/ISO-IEC19774-1v2.1/ISO-IEC19774-1v2.1-WD/Architecture/ObjectInterfaces.html#Humanoid" target="_blank">HAnimArchitecture draft v2.1, clause 6 Object interfaces, 6.3 Humanoid</a></li>
<ul>
<li><span style="font-family:monospace;font-size:small">sequence<string>    info         []</span></li>
<li><span style="font-family:monospace;font-size:small">string              description  ""</span></li>
</ul>
<li><a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4.1-CD/Part01/components/hanim.html#HAnimHumanoid" target="_blank">X3D Architecture, draft v4.1, 26.3.2 HAnimHumanoid</a></li>
<ul>
<li><span style="font-family:monospace">MFString [in,out] info        []</span></li>
<li><span style="font-family:monospace">SFString [in,out] description ""</span></li>
</ul>
</ul>
<blockquote style="margin:0 0 0 40px;border:none;padding:0px">The X3D Architecture describes how to equivalently map the <em>info </em>field of paired strings to a MetadataSet node.</blockquote>
<br style="box-sizing:border-box">
<blockquote style="margin:0 0 0 40px;border:none;padding:0px">As we continue to build humanoid models of greater sophistication, a likely use case will be inclusion of paired (and hopefully typed) metadata within any of the HAnim nodes. Some capability needs to be considered.</blockquote>
<br style="box-sizing:border-box">
<blockquote style="margin:0 0 0 40px;border:none;padding:0px">Perhaps a simple approach might be to use the <em>info </em>field equivalently in all of the nodes.</blockquote>
</td>
</tr>
</tbody>
</table>
</div>
<div>Mapping definition for X3D HAnimHumanoid <em>info </em>field:</div>
<blockquote style="margin:0 0 0 40px;border:none;padding:0px">
<div>
<p style="color:#000000;font-family:Verdana,Arial,Helvetica,sans-serif">Metadata values from the <em>info</em> field can be equivalently encoded via <span style="background-color:yellow" title="Mantis 1513">a single</span> MetadataSet <span style="background-color:yellow" title="Mantis 1513">node with field <em>name="HAnimHumanoid.info"</em></span> containing <span style="background-color:yellow" title="Mantis 1513">corresponding MetadataString</span> <span style="background-color:orange;text-decoration-line:line-through" title="Mantis 1513">related X3DMetadataObject</span> nodes. <span style="background-color:yellow" title="Mantis 1513">No more than one set of such <code>term=value</code> pairs (via MFString <em>info</em> field or MetadataSet <em>name="HAnimHumanoid.info"</em> node) shall be included at one time.</span></p>
</div>
</blockquote>
<div>
<div style="background-color:yellow;color:#000000;font-family:Verdana,Arial,Helvetica,sans-serif" title="Mantis 1513">
<p style="margin-top:18px;margin-bottom:18px;font-family:univers,arial,sans-serif">EXAMPLE 1  <em>info</em> field <code>term=value</code> pairs</p>
<pre style="margin-left:25px">  HAnimHumanoid {
    name "JinLOA1"
    info [ "gender=female" "height=1.5" "weight=50" ]
  }
</pre>
<p style="margin-top:18px;margin-bottom:18px;font-family:univers,arial,sans-serif">EXAMPLE 2  MetadataSet node equivalent to EXAMPLE 1</p>
<pre style="margin-left:25px">  HAnimHumanoid {
    name "JinLOA1"
    metadata MetadataSet {
      name "HAnimHumanoid.info"
      reference "<a href="https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/ObjectInterfaces.html#Humanoid" target="_blank">https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/ObjectInterfaces.html#Humanoid</a>"
      value [
        MetadataString {
          name "gender"
          value [ "female" ]
        }
        MetadataFloat {
          name "height"
          value [ 1.5 ]
        }
        MetadataFloat {
          name "weight"
          value [ 50 ]
        }
      ]
    }
  }</pre>
</div>
</div>
<div>
<div class="gmail_signature" dir="ltr" data-smartmail="gmail_signature">
<div dir="ltr">
<div style="color:#222222"><span style="font-family:monospace"> </span></div>
<div style="color:#222222"><span style="font-family:arial,sans-serif">I can see one editorial tweak to make in spec prose above:  rather than forbidding it, allow MetadataSet to contain either MetadataString or other typed Metadata@ nodes for floats, booleans, etc.  That will match the intent shown in the second example, which includes two MetadataFloat nodes.</span></div>
<div style="color:#222222"><span style="font-family:arial,sans-serif"> </span></div>
<div style="color:#222222"><span style="font-family:arial,sans-serif">So... what do people think about adding an <em>info </em>field for all of the HAnim nodes, not just HAnimHumanoid?</span></div>
<div style="color:#222222"><span style="font-family:monospace"> </span></div>
<div style="color:#222222"><span style="font-family:monospace">all the best, Don</span></div>
<div style="color:#222222"><span style="font-family:monospace">-- </span></div>
<div style="color:#222222"><span style="font-family:monospace">X3D Graphics, Maritime Robotics, Distributed Simulation</span></div>
<div style="color:#222222"><span style="font-family:monospace">Relative Motion Consulting  <a href="https://RelativeMotion.info" rel="noopener" target="_blank">https://RelativeMotion.info</a></span></div>
</div>
</div>
</div>
</div>
</div>

<p style="margin:0.1rem 0;line-height:1.0"> </p>_______________________________________________<br>
x3d-public mailing list<br>
<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a><br>
<a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" rel="noreferrer" target="_blank">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a><br>
</blockquote></div></div>