<div dir="ltr">John, when I run the X3D Validator from within X3D-Edit on this model, it reports the following diagnostics in the log appearing below.  This is relatively short, as these things go, which is good.  Running the model shows that it is pretty functional too.<div><ul><li>X3D Example Archives: Humanoid Animation, Specifications, HAnim 1 Specification LOA 3 Animation</li><li><a href="https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Specifications/HAnim1SpecificationLOA3AnimationIndex.html">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Specifications/HAnim1SpecificationLOA3AnimationIndex.html</a></li></ul><div>Note the presence of the first <span style="background-color:rgb(255,255,0)">meta error</span> element in the schematron log, highlighted by me, which states that this model includes errors under our HAnim 2.0 tools (since it has been adapted from HAnim 1.0).</div><div><br></div><div>That same error notification is also evident from simply inspecting the model documentation,</div><div><ul><li><table id="gmail-LineNumberTable.top" class="gmail-line" style="border:0px;border-spacing:0px;padding:0px;width:1134.95px;color:rgb(0,0,0);font-family:"Times New Roman";font-size:medium"><tbody><tr class="gmail-line" style="vertical-align:middle;border:0px;padding:0px"><td class="gmail-line" style="font-family:monospace"><a href="https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Specifications/HAnim1SpecificationLOA3Animation.html#11">11</a> </td><td><a id="gmail-11"></a>          <span title="meta 'error' defines information about an error or known problem that can prevent proper operation"><<span class="element" style="color:navy">meta</span> <span class="gmail-attribute" style="color:green">name</span>='<b class="error" style="color:rgb(204,0,0)"> error </b>' <span class="gmail-attribute" style="color:green">content</span>='<b class="error" style="color:rgb(204,0,0)"> Legacy model, not valid as X3D4 HAnim version 2.0 since HAnim version 1.0 has significant differences and is no longer directly supported </b>'/></span></td></tr></tbody></table></li><li><a href="https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Specifications/HAnim1SpecificationLOA3Animation.html#11">https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Specifications/HAnim1SpecificationLOA3Animation.html#11</a></li></ul><div>Perhaps fixable in small steps, but please don't be surprised if you encounter errors as advertised.  I do try to be generous in noting errors and warnings in meta tags for each model, when they occur, to encourage precise continued troubleshooting.</div></div><div><br></div><div>Your log looks like the same X3DJSAIL internal error repeated many times.  The key to an issue report is conciseness, clarity and repeatability.</div><div><br></div><div>Well-defined issues (called "tickets" by SourceForge) are addressed when possible (concise, clear, repeatable) and maintained online at</div><div><ul><li><a href="https://sourceforge.net/p/x3d/tickets/">https://sourceforge.net/p/x3d/tickets/</a></li></ul></div><div><br></div><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">--------- X3D Validator checks commenced for HAnim1SpecificationLOA3Invisible.x3d ---------<br>Performing well-formed XML check...<br>Checking file:/C:/x3d-code/<a href="http://www.web3d.org/x3d/content/examples/HumanoidAnimation/Specifications/HAnim1SpecificationLOA3Invisible.x3d.">www.web3d.org/x3d/content/examples/HumanoidAnimation/Specifications/HAnim1SpecificationLOA3Invisible.x3d.</a>..<br>Well-formed XML check: pass</blockquote></div><div><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>Performing DOCTYPE check...<br>[X3dDoctypeChecker] success: valid XML declaration found.[X3dDoctypeChecker] success: final X3D 3.3 DOCTYPE found.</blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>Performing DTD validation...<br>Checking file:/C:/x3d-code/<a href="http://www.web3d.org/x3d/content/examples/HumanoidAnimation/Specifications/HAnim1SpecificationLOA3Invisible.x3d.">www.web3d.org/x3d/content/examples/HumanoidAnimation/Specifications/HAnim1SpecificationLOA3Invisible.x3d.</a>..<br>Referenced entity at "<a href="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd">http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd</a>".<br>Referenced entity at "<a href="http://www.w3.org/2001/XMLSchema.dtd">http://www.w3.org/2001/XMLSchema.dtd</a>".<br>Referenced entity at "jrt:/java.xml/jdk/xml/internal/jdkcatalog/w3c/dtd/schema10/datatypes.dtd".<br>XML DTD validation: pass</blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>Performing X3D schema validation...<br>Checking file:/C:/x3d-code/<a href="http://www.web3d.org/x3d/content/examples/HumanoidAnimation/Specifications/HAnim1SpecificationLOA3Invisible.x3d.">www.web3d.org/x3d/content/examples/HumanoidAnimation/Specifications/HAnim1SpecificationLOA3Invisible.x3d.</a>..<br>Referenced entity at "<a href="http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd">http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd</a>".<br>Referenced entity at "<a href="http://www.w3.org/2001/XMLSchema.dtd">http://www.w3.org/2001/XMLSchema.dtd</a>".<br>Referenced entity at "jrt:/java.xml/jdk/xml/internal/jdkcatalog/w3c/dtd/schema10/datatypes.dtd".<br>XML schema validation: pass</blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>Performing X3D regular expression (regex) values check...<br>X3D regex check: complete</blockquote><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>Performing X3D Schematron check...<br><span style="background-color:rgb(255,255,0)"><meta name='error' content='Legacy model, not valid as X3D4 HAnim version 2.0 since HAnim version 1.0 has significant differences and is no longer directly supported'/> [/X3D/head/meta[6], diagnostic]<br></span><meta name='TODO' content='move relevant HAnimSite/Viewpoint pairs into skeleton at appropriate locations'/> [/X3D/head/meta[14], diagnostic]<br><meta name='TODO' content='insert MetadataInteger nodes indicating LOA for each Joint and Segment'/> [/X3D/head/meta[15], diagnostic]<br><Viewpoint DEF=''/> centerOfRotation='0 0.9149 0.0016' has mismatched Y-value height of 0.9149 compared to position='2.6 0.8 0' which has Y-value height of 0.8[/X3D/Scene/Viewpoint[5], warning]<br><Viewpoint DEF=''/> centerOfRotation='0 0.9149 0.0016' has mismatched Y-value height of 0.9149 compared to position='1 0.8 0.5' which has Y-value height of 0.8[/X3D/Scene/Viewpoint[6], warning]<br><Viewpoint DEF=''/> centerOfRotation='0 0.9149 0.0016' has mismatched Y-value height of 0.9149 compared to position='-1 0.8 0.5' which has Y-value height of 0.8[/X3D/Scene/Viewpoint[7], warning]<br><Viewpoint DEF=''/> centerOfRotation='0 0.9149 0.0016' has mismatched Y-value height of 0.9149 compared to position='-2.6 0.8 0' which has Y-value height of 0.8[/X3D/Scene/Viewpoint[8], warning]<br><HAnimHumanoid DEF='hanim_humanoid' name='humanoid'/> version='1.0' with X3D version='3.3' [/X3D/Scene/HAnimHumanoid, diagnostic]<br>============================================================================================================<font size="1" face="monospace">======== [/X3D/Scene/HAnimHumanoid, diagnostic]<br><HAnimHumanoid DEF='hanim_humanoid' name='humanoid'/> node count(HAnimJoint)           within skeleton hierarchy        = 94[/X3D/Scene/HAnimHumanoid, diagnostic]<br><HAnimHumanoid DEF='hanim_humanoid' name='humanoid'/> node count(HAnimSegment)         within skeleton hierarchy        = 94[/X3D/Scene/HAnimHumanoid, diagnostic]<br><HAnimHumanoid DEF='hanim_humanoid' name='humanoid'/> node count(HAnimSite)            within HAnimHumanoid             = 95[/X3D/Scene/HAnimHumanoid, diagnostic]<br><HAnimHumanoid DEF='hanim_humanoid' name='humanoid'/> node count(HAnimSite//Viewpoint) within skeleton hierarchy        = 4[/X3D/Scene/HAnimHumanoid, diagnostic]<br><HAnimHumanoid DEF='hanim_humanoid' name='humanoid'/> node count(HAnimDisplacer)       within skeleton hierarchy        = 0[/X3D/Scene/HAnimHumanoid, diagnostic]<br><HAnimHumanoid DEF='hanim_humanoid' name='humanoid'/> node count(<HAnimJoint   USE='*' containerField = 'joints'/>)     = 94[/X3D/Scene/HAnimHumanoid, diagnostic]<br><HAnimHumanoid DEF='hanim_humanoid' name='humanoid'/> node count(<HAnimSegment USE='*' containerField = 'segments'/>)   = 94[/X3D/Scene/HAnimHumanoid, diagnostic]<br><HAnimHumanoid DEF='hanim_humanoid' name='humanoid'/> node count(<HAnimSite    USE='*' containerField = 'sites'/>)      = 91[/X3D/Scene/HAnimHumanoid, diagnostic]<br><HAnimHumanoid DEF='hanim_humanoid' name='humanoid'/> node count(<HAnimSite    DEF='*' name ends with '_view'/>)        = 14[/X3D/Scene/HAnimHumanoid, diagnostic]<br><HAnimHumanoid DEF='hanim_humanoid' name='humanoid'/> has mismatched HAnimSite     node counts, 95 within skeleton hierarchy and 91 USE nodes in sites field [/X3D/Scene/HAnimHumanoid, diagnostic]</font><br>==================================================================================================================== [/X3D/Scene/HAnimHumanoid, diagnostic]</blockquote><br>--------- X3D Validator checks complete for HAnim1SpecificationLOA3Invisible.x3d ---------</div></div><div><br></div><div>v/r Don</div></div></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Mon, Jul 14, 2025 at 9:16 PM John Carlson <<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto">Recommendation is to check archive HAnimV2 specification .x3d models by validating them with X3DJSAIL.  There’s no need to run foreign code, just CommandLine.java -validate.  See below for one to choose.  You should be able to search for “Specification” in the email.</div><div dir="auto"><br></div><div dir="auto">I do realize running validation on the whole archive takes a lot of time, my archive too, when I’m generating code.  I recommend focusing on a single model.</div><div dir="auto"><br></div><div dir="auto">For example:</div><div dir="auto"><br></div><div dir="auto"><div><span style="font-size:19px;font-style:normal;font-weight:400;letter-spacing:normal;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;float:none;color:rgb(0,0,0);display:inline">java -cp ~/X3DJSONLD/X3DJSAIL.4.0.full.</span><span style="font-size:19px;font-style:normal;font-weight:400;letter-spacing:normal;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;float:none;color:rgb(0,0,0);display:inline">jar org.web3d.x3d.jsail.</span><span style="font-size:19px;font-style:normal;font-weight:400;letter-spacing:normal;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;text-decoration:none;float:none;color:rgb(0,0,0);display:inline">CommandLine -validate</span></div>HumanoidAnimation/<span>Specifications/</span><span>HAnim1SpecificationLOA3Invisib</span><span>le.x3d</span></div><div dir="auto"><span><br></span></div><div dir="auto"><span>It would be good to get another set of eyes on this, even if an error isn’t reported.</span></div><div dir="auto"><span><br></span></div><div dir="auto"><span>I am adapting my code not to call setContainerFieldOverride().</span></div><div dir="auto"><span><br></span></div><div dir="auto"><span>I do have some good news, I am re-adopting the x3d.py module for testing in addition to JRuby and GraalPy for X3DJSAIL.  There are a few tweaks I had to make, but these were made to:</span></div><div dir="auto"><span><br></span></div><div dir="auto"><span><div><a href="https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/node/PythonSerializer.js" target="_blank">https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/node/PythonSerializer.js</a></div><br></span></div><div dir="auto"><span>So I have improved Python code generation.  The old PythonSerializerX3DJSAIL is now:</span></div><div dir="auto"><span><br></span></div><div dir="auto"><span><div><a href="https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/node/GraalPySerializer.js" target="_blank">https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/node/GraalPySerializer.js</a></div><br></span></div><div dir="auto">I had to take a break and get some sleep.</div><div dir="auto"><br></div><div dir="auto">Maybe eventually I’ll get to languages like Kotlin and Scala.   I’ve only played with Kotlin on the command line.</div><div dir="auto"><br></div><div dir="auto">Typically one would use json2all.js:</div><div dir="auto"><br></div><div dir="auto"><div><a href="https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/node/json2all.js" target="_blank">https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/node/json2all.js</a></div><br></div><div dir="auto">This is tuned to run in X3DJSONLD/src/main/shell</div><div dir="auto"><br></div><div dir="auto"><br></div><div dir="auto">John</div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Jul 13, 2025 at 10:45 PM John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Interestingly enough, I did some X3DJSAIL (recently compiled) against a recent checkout of the HumanoidAnimation archive on sourceforge:<div><br></div><div><a href="https://sourceforge.net/p/x3d/code/HEAD/tree/www.web3d.org/x3d/content/examples/HumanoidAnimation/" target="_blank">x3d / Code / [r37163] /www.web3d.org/x3d/content/examples/HumanoidAnimation</a></div><div><br></div><div>I fully realize that I haven't checked the archives elsewhere (which might not be checked in).</div><div><br></div><div>Looking for something checked in.  I'll try X3DJSAIL from the distribution website next.</div><div><br></div><div>John</div><div><br></div><div>~/<a href="http://www.web3d.org/x3d/content/examples/HumanoidAnimation" target="_blank">www.web3d.org/x3d/content/examples/HumanoidAnimation</a><br>$ for i in */*x3d; do java -cp ~/X3DJSONLD/X3DJSAIL.4.0.full.jar org.web3d.x3d.jsail.CommandLine -validate $i 2>&1|grep "Invalid setContainerFieldOverride" && echo $i; done<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Legacy/AllenDutton.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Legacy/BoxMan3.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Legacy/BoxMan3AnimationPanel.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Legacy/DiamondManLOA_0.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Legacy/DiamondManLOA_1.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Legacy/DiamondManLOA_2.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Legacy/HAnim1SpecificationLOA3Animation.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Legacy/HAnim1SpecificationLOA3Illustrated.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Legacy/HAnim1SpecificationLOA3Invisible.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Legacy/NancyNativeTags.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>MotionAnimation/BvhConversion1.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>MotionAnimation/BvhConversion1Illustrated.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>MotionAnimation/BvhConversion1Invisible.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>MotionAnimation/Pirouette.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>MotionAnimation/UniversityWisconsionExample1.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Skin/BoxMan4.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Skin/BoxMan4AnimationPanel.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Specifications/HAnim1SpecificationLOA3Animation.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Specifications/HAnim1SpecificationLOA3Illustrated.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Specifications/HAnim1SpecificationLOA3Invisible.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Specifications/HAnim2SpecificationLOA3Illustrated.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Specifications/HAnim2SpecificationLOA3Invisible.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Templates/DiamondManLOA0.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Templates/DiamondManLOA1.x3d<br>Exception in thread "main" org.web3d.x3d.sai.InvalidFieldValueException: *** Invalid setContainerFieldOverride() value='viewpoints', legal values for HAnimSite are containerField_ALLOWED_VALUES='"children" "sites" "skeleton"'<br>Templates/DiamondManLOA2.x3d</div></div>
</blockquote></div></div>
</blockquote></div>