<div dir="auto">This is well researched now. This is a summary.</div><div dir="auto"><br></div><div dir="auto">HAnimMotion channels field in XML schema does not match current X3D4 specification. The schema should probably be changed to match the standard. I don’t think there’s any need for MFString.</div><div dir="auto"><br></div><div dir="auto">See below. Sorry for duplicate.</div><div dir="auto"><br></div><div dir="auto">John</div><div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><br></div><div>I see in the X3D JSON schema that:</div><div><br></div><div><div> "@channels": {</div><div> "$comment": "<font color="#ff0000">MFString </font>inputOutput",</div><div> "type": "array",</div><div> "items": {</div><div> "type": "string"</div><div> }</div><div> },</div></div><div><br></div><div>Says it's an MFString. Let's look in X3DUOM. Here's the kicker, X3DUOM doesn't agree with X3D4, from my reading, but I am old.</div><div><br></div><div><div> <ConcreteNode name="HAnimMotion"></div><div> <InterfaceDefinition specificationUrl="<a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-IS.proof/Part01/components/hanim.html#HAnimMotion" target="_blank">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-IS.proof/Part01/components/hanim.html#HAnimMotion</a>"</div><div> appinfo="An HAnimMotion node supports discrete frame-by-frame playback for H-Anim motion data animation."></div><div> <componentInfo name="HAnim" level="2"/></div><div> <Inheritance baseType="X3DChildNode"/></div><div> <field name="channels"</div><div> type="<font color="#ff0000">MFString</font>"</div><div> accessType="inputOutput"</div><div> description="list of number of channels for transformation, followed by transformation type of each channel of data."/></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></blockquote><div dir="auto"><br></div><div dir="auto">Here’s XML Schema:</div><div dir="auto"><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><div dir="auto"></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><br></div><div><br></div><div> <xs:element name="HAnimMotion"><br></div><div>[ snip for readability ]</div><div><div> <xs:complexType></div><div> <xs:complexContent></div><div> <xs:extension base="X3DChildNode"></div><div> <xs:attribute name="channels" type="<font color="#ff0000">MFString</font>"/></div></div><div><br></div><div>So X3DUOM agrees with the XML schema, which agrees with the X3D JSON schema.</div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></blockquote><div dir="auto"><br></div><div dir="auto">But here’s the current standard:</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="auto"></div><div><br></div><div><br></div><div><a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-IS.proof/Part01/components/hanim.html#HAnimMotion" target="_blank">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-IS.proof/Part01/components/hanim.html#HAnimMotion</a><br></div><div><br></div><div> </div><h2 style="font-size:20.8px;margin-top:18px;color:rgb(0,0,0);font-family:Verdana,Arial,Helvetica,sans-serif">26.3.4 HAnimMotion</h2><pre style="font-size:11.05px;margin-left:25px" dir="auto"><span style="color:rgb(0,0,0)">HAnimMotion : X3DChildNode {
SFBool [in] next
SFBool [in] previous
</span><font color="#ff0000">SFString [in,out] channels ""</font><font color="#000000">
MFBool [in,out] channelsEnabled []
SFString [in,out] description ""
SFBool [in,out] enabled TRUE
SFInt32 [in,out] endFrame 0 [0,∞)
SFTime [in,out] frameDuration 0.1 (0,∞)
SFInt32 [in,out] frameIncrement 1 (-∞,∞)
SFInt32 [in,out] frameIndex 0 [0,∞)
SFString [in,out] joints ""
SFInt32 [in,out] loa -1 [-1,4]
SFBool [in,out] loop FALSE
SFNode [in,out] metadata NULL [X3DMetadataObject]
SFString [in,out] name ""
SFInt32 [in,out] startFrame 0 [0,∞)
MFFloat [in,out] values [] (-∞,∞)
SFTime [out] cycleTime [0,∞)
SFTime [out] elapsedTime (0,∞)
SFInt32 [out] frameCount [0,∞</font></pre></div></div></div></div></div></div></div></div></div></div></div></div></div></div></blockquote><div dir="auto"><br></div><div dir="auto">[snip]</div></div></div>