[x3d-public] renamed: HAnimHumanoid scale is required to be non-negative, USE outputs out of order

Brutzman, Donald (Don) (CIV) brutzman at nps.edu
Tue Oct 17 06:52:51 PDT 2023


I believe that the following email is trying to report that

1.	HAnimHumanoid with a non-positive scale is being reported as
invalid.
2.	HAnimHumanoid USE nodes are getting output out of order.



Let’s look further at whether those are the problem issues.



1.	Looking at X3D Architecture Specification,

*	26.3.2 HAnimHumanoid

*        HAnimHumanoid : X3DChildNode, X3DBoundedObject {

*          […]

*          SFVec3f    [in,out] scale                 1 1 1    (0,∞)



*
https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-IS.proof/Pa
rt01/components/hanim.html#HAnimHumanoid



Indicates that is the specified bounds for validity.



So the reported error message is precisely correct.



If anyone is wondering “how did x3d.py know that” you can find the same
information in X3D Unified Object Model (X3DUOM), which is used to
autogenerate x3d.py library:



class Transform(_X3DGroupingNode):



    def scale(self, scale):

        if  scale is None:

            scale = (1, 1, 1)  # default

        assertValidSFVec3f(scale)

        self.__scale = scale



*	X3DUOM 4.0
*	https://www.web3d.org/specifications/X3dUnifiedObjectModel-4.0.xml



<ConcreteNode name="HAnimHumanoid">



            <field name="scale"

                    type="SFVec3f"

                    accessType="inputOutput"

                    default="1 1 1"

                    minExclusive="0"

                    description="Non-uniform x-y-z scale of child coordinate
system, adjusted by center and scaleOrientation."/>



which in turn is built from X3D 4.0 XML Schema, which would similarly flag
this invalid scale value.



*	X3D Specifications: Schema and DOCTYPE Validation
*	https://www.web3d.org/specifications


    Recommended Validation and Implementation Assets


*        X3D XML Schema x3d-4.0.xsd
<https://www.web3d.org/specifications/x3d-4.0.xsd>  and documentation
<https://www.web3d.org/specifications/X3dSchemaDocumentation4.0.html>
(latest)

*	HAnimHumanoid documentation
*	https://www.web3d.org/specifications/X3dSchemaDocumentation4.0/x3d-4
.0_HAnimHumanoid.html#Link147



scale  SFVec3f   1 1 1  appinfo <xs:minExclusive value="0"/>



Further informal guidance plus reference links can be found in X3D Tooltips:



*	X3D Tooltips 4.0, HAnimHumanoid scale
*	https://www.web3d.org/x3d/tooltips/X3dTooltips.html#HAnimHumanoid.sc
ale
*	scale accessType inputOutput, type SFVec3f CDATA "1 1 1"]
*	Non-uniform x-y-z scale of child coordinate system, adjusted by
center and scaleOrientation.



Just added, for consistency:

*	Warning: HAnimHumanoid scale values must be positive.



So many paths to get to the same authoritative answer from X3D 4.0
Architecture specification.



2.	Regarding error reports that HAnimHumanoid child USE nodes are out
of order, recommend checking your output text files.



If that is indeed the case, then cut and paste to move them to a later
position in the file.



Further scrutiny of the HAnimHumanoid documentation (linked above) shows
that the X3D XML Schema is indeed order sensitive regarding outputs as well.
So once again your diagnostics for a complex model are consistent, even
though correspondingly complex.



I have added that issue to the TODO list for X3DPSAIL.



*	X3D Python Scene Access Interface Library (X3DPSAIL)
*	https://www.web3d.org/x3d/stylesheets/python/python.html#TODO
*	TODO: When converting to other forms, check ordering of output for
USE nodes within HAnimHumanoid.



Wishing best progress with all X3D modeling efforts - the only bad error is
the one you don’t know about.



Have fun with X3D - or else!  8)



all the best, Don

--

Don Brutzman  Naval Postgraduate School, Code USW/Br        brutzman at nps.edu

Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA    +1.831.656.2149

X3D graphics, virtual worlds, navy robotics https://faculty.nps.edu/brutzman



From: x3d-public <x3d-public-bounces at web3d.org> On Behalf Of John Carlson
Sent: Monday, October 16, 2023 10:52 PM
To: X3D Graphics public mailing list <x3d-public at web3d.org>
Subject: Re: [x3d-public] Thoughts for x3d.py str() calls ("real world"
tests of x3d.py output)



I've made suggestions to improve issues with containerField XML output, and
they were roundly dismissed. x3d.py has not had to face real world problems,
especially with HAnim, which is why this whole discussion came up.  Do you
want fewer digits in numbers or not?  Do you see any x3d.py HAnim tests
being run?  Let me try one:



https://www.web3d.org/x3d/content/examples/HumanoidAnimation/WinterAndSpring
/Lily.py



So try this example IN "REAL" life:



$ py !$

py Lily.py

x3d.py package 4.0.64.4 loaded, have fun with X3D Graphics!

Traceback (most recent call last):

  File "C:\Users\john\X3DJSONLD\blend\Lily.py", line 69, in <module>

    HAnimHumanoid(DEF='Lily',scale=(1,1,-1),version='2.0',

  File "C:\Users\john\X3DJSONLD\blend\x3d.py", line 45576, in __init__

    self.scale = scale

    ^^^^^^^^^^

  File "C:\Users\john\X3DJSONLD\blend\x3d.py", line 45751, in scale

    assertPositive('scale', scale)

  File "C:\Users\john\X3DJSONLD\blend\x3d.py", line 1906, in assertPositive

    assert isPositive(value), str(fieldName) + '=' + str(value) + ' fails
assertPositive requirements: value(s) must be greater than or equal to zero'

AssertionError: scale=(1, 1, -1) fails assertPositive requirements: value(s)
must be greater than or equal to zero





I didn't even get CLOSE to XML output!



Admittedly, this example may be cherry picked, so let's try another:



https://www.web3d.org/x3d/content/examples/HumanoidAnimation/Skin/JoeKick.py





$ py JoeKick.py

x3d.py package 4.0.64.4 loaded, have fun with X3D Graphics!

Self-test diagnostics for JoeKick.py:

meta information, TODO: Record information about skin coordinates (found in
comment at end of scene) as a structured MetadataSet containing
MetadataString nodes

*** Python-to-XML well-formed XML document test failed.

    x3dSchemaUrl=https://www.web3d.org/specifications/x3d-4.0.xsd

    XMLSchemaParseError cannot import namespace
'http://www.w3.org/2000/09/xmldsig#
<https://nam10.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.w3.org
%2F2000%2F09%2Fxmldsig%23&data=05%7C01%7Cbrutzman%40nps.edu%7C0d81df4029db4f
2feb5d08dbced54052%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C638331187540
927780%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6I
k1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=p799nNynxEsmtnhC6rCo9TZgttglwjla
6TD1zH4QPRU%3D&reserved=0> ': Entities are forbidden (entity_name='dsig')

Python-to-VRML export of VRML output successful

Python-to-JSON export of JSON output successful (under development)

python JoeKick.py load and self-test diagnostics complete.



That looks good, let's try tovrmlx3d:



Uncomment this like in JoeKick.py:



print(newModelXML) # diagnostic



$ py JoeKick.py > JoeKick.x3d



[ edit all the stuff that for some reason, x3d.py writes to standard output.
]



$ ~/Downloads/view3dscene-4.3.0-win64-x86_64/view3dscene/tovrmlx3d.exe
--validate JoeKick.x3d

tovrmlx3d: Warning: X3D: Unknown X3D field name (indicated by containerField
value) "children" by node "HAnimJoint" inside node "HAnimHumanoid"

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_SkinCoord"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_humanoid_root"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_sacroiliac"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_skullbase"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_temporomandibular" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vc1" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vc2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vc3" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vc4" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vc5" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vc6" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vc7" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vl1" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vl2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vl3" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vl4" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vl5" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vt1" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vt10"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vt11"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vt12"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vt2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vt3" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vt4" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vt5" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vt6" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vt7" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vt8" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_vt9" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_acromioclavicular" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_acromioclavicular" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_carpal_distal_interphalangeal_2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_carpal_distal_interphalangeal_2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_carpal_distal_interphalangeal_3" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_carpal_distal_interphalangeal_3" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_carpal_distal_interphalangeal_4" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_carpal_distal_interphalangeal_4" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_carpal_distal_interphalangeal_5" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_carpal_distal_interphalangeal_5" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_carpal_interphalangeal_1" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_carpal_interphalangeal_1" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_carpal_proximal_interphalangeal_2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_carpal_proximal_interphalangeal_2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_carpal_proximal_interphalangeal_3" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_carpal_proximal_interphalangeal_3" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_carpal_proximal_interphalangeal_4" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_carpal_proximal_interphalangeal_4" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_carpal_proximal_interphalangeal_5" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_carpal_proximal_interphalangeal_5" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_carpometacarpal_1" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_carpometacarpal_1" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_carpometacarpal_2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_carpometacarpal_2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_carpometacarpal_3" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_carpometacarpal_3" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_carpometacarpal_4" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_carpometacarpal_4" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_carpometacarpal_5" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_carpometacarpal_5" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_l_elbow"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_r_elbow"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_eyeball_joint" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_eyeball_joint" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_eyebrow_joint" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_eyebrow_joint" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_eyelid_joint" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_eyelid_joint" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_l_hip"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_r_hip"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_l_knee"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_r_knee"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_metacarpophalangeal_1" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_metacarpophalangeal_1" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_metacarpophalangeal_2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_metacarpophalangeal_2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_metacarpophalangeal_3" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_metacarpophalangeal_3" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_metacarpophalangeal_4" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_metacarpophalangeal_4" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_metacarpophalangeal_5" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_metacarpophalangeal_5" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_metatarsophalangeal_2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_metatarsophalangeal_2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_l_radiocarpal"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_r_radiocarpal"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_l_shoulder"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_r_shoulder"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_sternoclavicular" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_sternoclavicular" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_l_talocrural"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_r_talocrural"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_tarsal_distal_interphalangeal_2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_tarsal_distal_interphalangeal_2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_l_tarsometatarsal_2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_r_tarsometatarsal_2" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "Joe_sacrum"
undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"Joe_RootFront_view" undefined

tovrmlx3d: Warning: X3D: Unknown X3D field name (indicated by containerField
value) "children" by node "Shape" inside node "HAnimHumanoid"

tovrmlx3d: Warning: X3D: Route destination node name "Joe_humanoid_root" not
found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_humanoid_root" not
found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_sacroiliac" not
found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_l_hip" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_l_knee" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_l_talocrural" not
found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_tarsometatarsal_2" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_metatarsophalangeal_2" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_tarsal_distal_interphalangeal_2" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_r_hip" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_r_knee" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_r_talocrural" not
found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_tarsometatarsal_2" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_metatarsophalangeal_2" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_tarsal_distal_interphalangeal_2" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vl5" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vl4" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vl3" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vl2" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vl1" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vt12" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vt11" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vt10" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vt9" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vt8" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vt7" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vt6" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vt5" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vt4" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vt3" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vt2" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vt1" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vc7" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vc6" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vc5" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vc4" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vc3" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vc2" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_vc1" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_skullbase" not
found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_l_eyelid_joint"
not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_l_eyeball_joint"
not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_l_eyebrow_joint"
not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_r_eyelid_joint"
not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_r_eyeball_joint"
not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_r_eyebrow_joint"
not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_temporomandibular"
not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_sternoclavicular" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_acromioclavicular" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_l_shoulder" not
found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_l_elbow" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_l_radiocarpal" not
found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_carpometacarpal_1" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_metacarpophalangeal_1" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_carpal_interphalangeal_1" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_carpometacarpal_2" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_metacarpophalangeal_2" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_carpal_proximal_interphalangeal_2" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_carpal_distal_interphalangeal_2" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_carpometacarpal_3" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_metacarpophalangeal_3" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_carpal_proximal_interphalangeal_3" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_carpal_distal_interphalangeal_3" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_carpometacarpal_4" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_metacarpophalangeal_4" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_carpal_proximal_interphalangeal_4" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_carpal_distal_interphalangeal_4" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_carpometacarpal_5" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_metacarpophalangeal_5" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_carpal_proximal_interphalangeal_5" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_l_carpal_distal_interphalangeal_5" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_sternoclavicular" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_acromioclavicular" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_r_shoulder" not
found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_r_elbow" not found

tovrmlx3d: Warning: X3D: Route destination node name "Joe_r_radiocarpal" not
found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_carpometacarpal_1" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_metacarpophalangeal_1" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_carpal_interphalangeal_1" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_carpometacarpal_2" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_metacarpophalangeal_2" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_carpal_proximal_interphalangeal_2" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_carpal_distal_interphalangeal_2" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_carpometacarpal_3" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_metacarpophalangeal_3" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_carpal_proximal_interphalangeal_3" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_carpal_distal_interphalangeal_3" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_carpometacarpal_4" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_metacarpophalangeal_4" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_carpal_proximal_interphalangeal_4" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_carpal_distal_interphalangeal_4" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_carpometacarpal_5" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_metacarpophalangeal_5" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_carpal_proximal_interphalangeal_5" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_r_carpal_distal_interphalangeal_5" not found

tovrmlx3d: Warning: X3D: Route destination node name
"Joe_skull_tip_raiser_action" not found

tovrmlx3d: Warning: X3D: Route destination node name "KickTextureTransform"
not found

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name
"JoeSkinImageTexture" undefined

tovrmlx3d: Warning: X3D: Incorrect USE clause: node name "AxisLinesShape"
undefined

Exception "Exception":

Validation failed (consult the warnings above), exiting with non-zero status



I know that Don loves tovrmlx3d.  Why not try it on X3D XML HAnim output
from x3d.py? Oh wait, he loves X3D-Edit.  Let me try that too:



--------- X3D Validator checks commenced for JoeKick.x3d ---------



Performing well-formed XML check...

Checking file:/C:/Users/john/X3DJSONLD/blend/JoeKick.x3d...

Well-formed XML check: pass



Performing DOCTYPE check...

[X3dDoctypeChecker] success: valid XML declaration found.[X3dDoctypeChecker]
success: final X3D 4.0 DOCTYPE found.



Performing DTD validation...

Checking file:/C:/Users/john/X3DJSONLD/blend/JoeKick.x3d...

Attribute "level" is required and must be specified for element type
"component".

The content of element type "HAnimHumanoid" must match
"(IS?,(MetadataBoolean|MetadataDouble|MetadataFloat|MetadataInteger|Metadata
Set|MetadataString|ProtoInstance)?,(HAnimJoint*,HAnimSegment*,HAnimSite*,HAn
imMotion*,(Shape|Group|LOD|Switch|Transform|IndexedFaceSet|IndexedLineSet|In
dexedQuadSet|IndexedTriangleFanSet|IndexedTriangleSet|IndexedTriangleStripSe
t)?,HAnimMotion*,(Coordinate|CoordinateDouble)*,Normal*,ProtoInstance*)*)".

XML DTD validation: fail!



Performing X3D schema validation...

Checking file:/C:/Users/john/X3DJSONLD/blend/JoeKick.x3d...

Referenced entity at
"http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/xmldsig-core-schema.xsd
<https://nam10.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.w3.org
%2FTR%2F2002%2FREC-xmldsig-core-20020212%2Fxmldsig-core-schema.xsd&data=05%7
C01%7Cbrutzman%40nps.edu%7C0d81df4029db4f2feb5d08dbced54052%7C6d936231a51740
ea9199f7578963378e%7C0%7C0%7C638331187540927780%7CUnknown%7CTWFpbGZsb3d8eyJW
IjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%
7C&sdata=MkWQzrOORFRKS8sLpOsevT%2Fsuxis6PWYThdrXTBQ9Xg%3D&reserved=0> ".

Referenced entity at "http://www.w3.org/2001/XMLSchema.dtd
<https://nam10.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.w3.org
%2F2001%2FXMLSchema.dtd&data=05%7C01%7Cbrutzman%40nps.edu%7C0d81df4029db4f2f
eb5d08dbced54052%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C63833118754092
7780%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1
haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=q%2FFDydThIhITMop%2BcDGyw5mJ%2FFsz
LUodDopECGk6I9w%3D&reserved=0> ".

Referenced entity at "http://www.w3.org/2001/datatypes.dtd
<https://nam10.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.w3.org
%2F2001%2Fdatatypes.dtd&data=05%7C01%7Cbrutzman%40nps.edu%7C0d81df4029db4f2f
eb5d08dbced54052%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C63833118754092
7780%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1
haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=uku73wUYKloQfbt0UiUXWpwK9bfBadttia
rI%2FrOSX1M%3D&reserved=0> ".

Attribute "level" is required and must be specified for element type
"component".

cvc-complex-type.4: Attribute 'level' must appear on element 'component'.

cvc-complex-type.4: Attribute 'level' must appear on element 'component'.

cvc-complex-type.2.4.a: Invalid content was found starting with element
'MetadataSet'. One of '{HAnimJoint, HAnimSegment, HAnimSite, HAnimMotion,
Shape, Group, LOD, Switch, Transform, IndexedFaceSet, IndexedLineSet,
IndexedQuadSet, IndexedTriangleFanSet, IndexedTriangleSet,
IndexedTriangleStripSet, Coordinate, CoordinateDouble, Normal,
ProtoInstance}' is expected.

The content of element type "HAnimHumanoid" must match
"(IS?,(MetadataBoolean|MetadataDouble|MetadataFloat|MetadataInteger|Metadata
Set|MetadataString|ProtoInstance)?,(HAnimJoint*,HAnimSegment*,HAnimSite*,HAn
imMotion*,(Shape|Group|LOD|Switch|Transform|IndexedFaceSet|IndexedLineSet|In
dexedQuadSet|IndexedTriangleFanSet|IndexedTriangleSet|IndexedTriangleStripSe
t)?,HAnimMotion*,(Coordinate|CoordinateDouble)*,Normal*,ProtoInstance*)*)".

XML schema validation: fail!



Performing X3D regular expression (regex) values check...

X3D regex check: complete



Performing X3dToX3dvClassicVrmlEncoding.xslt conversion check...

[hint] Complete functionality for HAnimHumanoid node may require support by
<X3D profile='Full'> or else <component name='HAnim' level='1'/> (instead of
declared level='') [HAnimHumanoid node DEF='Joe_Kick']

[hint] Complete functionality for HAnimJoint node may require support by
<X3D profile='Full'> or else <component name='HAnim' level='1'/> (instead of
declared level='') [HAnimJoint node DEF='Joe_humanoid_root']

[hint] Complete functionality for HAnimSegment node may require support by
<X3D profile='Full'> or else <component name='HAnim' level='1'/> (instead of
declared level='') [HAnimSegment node DEF='Joe_sacrum']

[hint] Complete functionality for HAnimSite node may require support by <X3D
profile='Full'> or else <component name='HAnim' level='1'/> (instead of
declared level='') [HAnimSite node DEF='Joe_RootFront_view']

[hint] Complete functionality for HAnimJoint node may require support by
<X3D profile='Full'> or else <component name='HAnim' level='1'/> (instead of
declared level='') [HAnimJoint node DEF='Joe_sacroiliac']

[hint] Complete functionality for HAnimJoint node may require support by
<X3D profile='Full'> or else <component name='HAnim' level='1'/> (instead of
declared level='') [HAnimJoint node DEF='Joe_l_hip']

[hint] Complete functionality for HAnimJoint node may require support by
<X3D profile='Full'> or else <component name='HAnim' level='1'/> (instead of
declared level='') [HAnimJoint node DEF='Joe_l_knee']

[hint] Complete functionality for HAnimJoint node may require support by
<X3D profile='Full'> or else <component name='HAnim' level='1'/> (instead of
declared level='') [HAnimJoint node DEF='Joe_l_talocrural']

[hint] Complete functionality for HAnimJoint node may require support by
<X3D profile='Full'> or else <component name='HAnim' level='1'/> (instead of
declared level='') [HAnimJoint node DEF='Joe_l_tarsometatarsal_2']

[hint] Complete functionality for HAnimJoint node may require support by
<X3D profile='Full'> or else <component name='HAnim' level='1'/> (instead of
declared level='') [HAnimJoint node DEF='Joe_l_metatarsophalangeal_2']

[hint] Complete functionality for HAnimJoint node may require support by
<X3D profile='Full'> or else <component name='HAnim' level='1'/> (instead of
declared level='') [HAnimJoint node
DEF='Joe_l_tarsal_distal_interphalangeal_2']

[hint] Complete functionality for HAnimDisplacer node may require support by
<X3D profile='Full'> or else <component name='HAnim' level='1'/> (instead of
declared level='') [HAnimDisplacer node DEF='Joe_skull_tip_raiser_action']

[error] illegal level value:  <component name='HAnim' level=''/> (allowed
range of values: 1..5)

[error] node Shape has illegal containerField='children' (allowed value:
skin) [node Shape, parent HAnimHumanoid DEF='Joe_Kick' DEF='Joe_Shape']



Performing X3D Schematron check...

X3D version 4.0 is approved by Web3D Consortium and focused on
interoperability with HTML5, glTF2.0 Physically Based Rendering (PBR) and
Web Audio API, undergoing final administrative review by ISO in 2023. [/X3D,
diagnostic]

<component name='HAnim' level=''/> is required to have a value for level
field [/X3D/head/component, error]

<meta name='TODO' content='Record information about skin coordinates (found
in comment at end of scene) as a structured MetadataSet containing
MetadataString nodes'/> [/X3D/head/meta[7], diagnostic]

<HAnimHumanoid DEF='Joe_Kick'/> requires at least <X3D profile='Immersive'/>
<component name='HAnim' level='1'/> or <X3D profile='Full'/>
[/X3D/Scene/Group[1]/HAnimHumanoid, error]

<HAnimHumanoid DEF='Joe_Kick' name='Kick'/> version='2.0' with X3D
version='4.0' [/X3D/Scene/Group[1]/HAnimHumanoid, diagnostic]

<

          HAnimHumanoid DEF='Joe_Kick' name='Kick'/> contains <HAnimJoint
DEF="Joe_humanoid_root" name="humanoid_root" containerField="children"/>
should be containerField='skeleton' [/X3D/Scene/Group[1]/HAnimHumanoid,
error]

<HAnimHumanoid DEF='Joe_Kick' name='Kick'/> cannot contain any
containerField='children' nodes:  <HAnimJoint DEF="Joe_humanoid_root"
name="humanoid_root" containerField="children"/>
[/X3D/Scene/Group[1]/HAnimHumanoid, error]

<HAnimHumanoid DEF='Joe_Kick' name='Kick'/> contains <Coordinate DEF=''
containerField='coord'/> node with incorrect containerField value, must be
containerField='skinCoord' [/X3D/Scene/Group[1]/HAnimHumanoid, error]

============================================================================
======================================== [/X3D/Scene/Group[1]/HAnimHumanoid,
diagnostic]

<HAnimHumanoid DEF='Joe_Kick' name='Kick'/> node count(HAnimJoint)
within skeleton hierarchy        = 0[/X3D/Scene/Group[1]/HAnimHumanoid,
diagnostic]

<HAnimHumanoid DEF='Joe_Kick' name='Kick'/> node count(HAnimSegment)
within skeleton hierarchy        = 0[/X3D/Scene/Group[1]/HAnimHumanoid,
diagnostic]

<HAnimHumanoid DEF='Joe_Kick' name='Kick'/> node count(HAnimSite)
within HAnimHumanoid             = 1[/X3D/Scene/Group[1]/HAnimHumanoid,
diagnostic]

<HAnimHumanoid DEF='Joe_Kick' name='Kick'/> node count(HAnimSite//Viewpoint)
within skeleton hierarchy        = 0[/X3D/Scene/Group[1]/HAnimHumanoid,
diagnostic]

<HAnimHumanoid DEF='Joe_Kick' name='Kick'/> node count(HAnimDisplacer)
within skeleton hierarchy        = 0[/X3D/Scene/Group[1]/HAnimHumanoid,
diagnostic]

<HAnimHumanoid DEF='Joe_Kick' name='Kick'/> node count(<HAnimJoint   USE='*'
containerField = 'joints'/>)     = 0[/X3D/Scene/Group[1]/HAnimHumanoid,
diagnostic]

<HAnimHumanoid DEF='Joe_Kick' name='Kick'/> node count(<HAnimSegment USE='*'
containerField = 'segments'/>)   = 0[/X3D/Scene/Group[1]/HAnimHumanoid,
diagnostic]

<HAnimHumanoid DEF='Joe_Kick' name='Kick'/> node count(<HAnimSite    USE='*'
containerField = 'sites'/>)      = 0[/X3D/Scene/Group[1]/HAnimHumanoid,
diagnostic]

<HAnimHumanoid DEF='Joe_Kick' name='Kick'/> node count(<HAnimSite    DEF='*'
name ends with '_view'/>)        = 0[/X3D/Scene/Group[1]/HAnimHumanoid,
diagnostic]

<HAnimHumanoid DEF='Joe_Kick' name='Kick'/> has mismatched HAnimSite
node counts, 1 within skeleton hierarchy and 0 USE nodes in sites field
[/X3D/Scene/Group[1]/HAnimHumanoid, diagnostic]

============================================================================
======================================== [/X3D/Scene/Group[1]/HAnimHumanoid,
diagnostic]

<HAnimJoint DEF='Joe_humanoid_root'/> requires at least <X3D
profile='Immersive'/> <component name='HAnim' level='1'/> or <X3D
profile='Full'/> [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1], error]

<HAnimJoint DEF='Joe_humanoid_root' name='humanoid_root'/> with parent
HAnimHumanoid needs containerField='skeleton'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1], error]

<HAnimJoint DEF='Joe_humanoid_root' name='humanoid_root'/> has incoming
<ROUTE toNode='Joe_humanoid_root' toField='translation'/> to modify the
translation field, which ordinarily is not modified (instead the center
field controls HAnimJoint position)
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1], warning]

<HAnimSegment DEF='Joe_sacrum'/> requires at least <X3D
profile='Immersive'/> <component name='HAnim' level='1'/> or <X3D
profile='Full'/>
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimSegment, error]

<HAnimSite DEF='Joe_RootFront_view'/> requires at least <X3D
profile='Immersive'/> <component name='HAnim' level='1'/> or <X3D
profile='Full'/>
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimSegment/HAnimSite,
error]

<HAnimSite DEF='Joe_RootFront_view' name='RootFront_view'/> is not a
recognized name for HAnim2 HAnimSite
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimSegment/HAnimSite,
info]

<HAnimJoint DEF='Joe_sacroiliac'/> requires at least <X3D
profile='Immersive'/> <component name='HAnim' level='1'/> or <X3D
profile='Full'/>
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[1], error]

<HAnimJoint DEF='Joe_l_hip'/> requires at least <X3D profile='Immersive'/>
<component name='HAnim' level='1'/> or <X3D profile='Full'/>
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[1]/HAnimJoint[1]
, error]

<HAnimJoint DEF='Joe_l_knee'/> requires at least <X3D profile='Immersive'/>
<component name='HAnim' level='1'/> or <X3D profile='Full'/>
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[1]/HAnimJoint[1]
/HAnimJoint, error]

<HAnimJoint DEF='Joe_l_talocrural'/> requires at least <X3D
profile='Immersive'/> <component name='HAnim' level='1'/> or <X3D
profile='Full'/>
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[1]/HAnimJoint[1]
/HAnimJoint/HAnimJoint, error]

<HAnimJoint DEF='Joe_l_tarsometatarsal_2'/> requires at least <X3D
profile='Immersive'/> <component name='HAnim' level='1'/> or <X3D
profile='Full'/>
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[1]/HAnimJoint[1]
/HAnimJoint/HAnimJoint/HAnimJoint, error]

<HAnimJoint DEF='Joe_l_tarsometatarsal_2' name='l_tarsometatarsal_2'/> has
parent HAnimJoint name='l_talocrural' rather than expected parent
name='l_cuneonavicular_2', recommend checking model
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[1]/HAnimJoint[1]
/HAnimJoint/HAnimJoint/HAnimJoint, warning]

<HAnimJoint DEF='Joe_l_metatarsophalangeal_2'/> requires at least <X3D
profile='Immersive'/> <component name='HAnim' level='1'/> or <X3D
profile='Full'/>
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[1]/HAnimJoint[1]
/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint, error]

<HAnimJoint DEF='Joe_l_tarsal_distal_interphalangeal_2'/> requires at least
<X3D profile='Immersive'/> <component name='HAnim' level='1'/> or <X3D
profile='Full'/>
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[1]/HAnimJoint[1]
/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint, error]

<HAnimJoint DEF='Joe_l_tarsal_distal_interphalangeal_2'
name='l_tarsal_distal_interphalangeal_2'/> has parent HAnimJoint
name='l_metatarsophalangeal_2' rather than expected parent
name='l_tarsal_proximal_interphalangeal_2', recommend checking model
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[1]/HAnimJoint[1]
/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint, warning]

<HAnimJoint DEF='Joe_r_tarsometatarsal_2' name='r_tarsometatarsal_2'/> has
parent HAnimJoint name='r_talocrural' rather than expected parent
name='r_cuneonavicular_2', recommend checking model
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[1]/HAnimJoint[2]
/HAnimJoint/HAnimJoint/HAnimJoint, warning]

<HAnimJoint DEF='Joe_r_tarsal_distal_interphalangeal_2'
name='r_tarsal_distal_interphalangeal_2'/> has parent HAnimJoint
name='r_metatarsophalangeal_2' rather than expected parent
name='r_tarsal_proximal_interphalangeal_2', recommend checking model
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[1]/HAnimJoint[2]
/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint, warning]

<HAnimDisplacer DEF='Joe_skull_tip_raiser_action'/> requires at least <X3D
profile='Immersive'/> <component name='HAnim' level='1'/> or <X3D
profile='Full'/>
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[2]/HAnimJoint/HA
nimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/H
AnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/
HAnimJoint/HAnimJoint[1]/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJo
int/HAnimJoint/HAnimJoint/HAnimDisplacer, error]

<HAnimJoint DEF='Joe_l_acromioclavicular'/> name field is required
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[2]/HAnimJoint/HA
nimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/H
AnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/
HAnimJoint/HAnimJoint[2], error]

<HAnimJoint DEF='Joe_l_acromioclavicular' name=''/> is not a recognized name
for HAnim2 HAnimJoint
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[2]/HAnimJoint/HA
nimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/H
AnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/
HAnimJoint/HAnimJoint[2], warning]

<HAnimJoint DEF='Joe_l_sternoclavicular' name='l_acromioclavicular'/> DEF
value does not contain correctly modified version of name value (for
example, DEF='myPrefix_nameValue' e.g. DEF='myPrefix_l_acromioclavicular') -
see HAnim section C.2 Humanoid, VRML Binding
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[2]/HAnimJoint/HA
nimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/H
AnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/
HAnimJoint/HAnimJoint[2]/HAnimJoint, error]

<HAnimJoint DEF='Joe_l_sternoclavicular' name='l_acromioclavicular'/> has
parent HAnimJoint name='' rather than expected parent
name='l_sternoclavicular', recommend checking model
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[2]/HAnimJoint/HA
nimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/H
AnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/
HAnimJoint/HAnimJoint[2]/HAnimJoint, warning]

<HAnimJoint DEF='Joe_l_carpometacarpal_1' name='l_carpometacarpal_1'/> has
parent HAnimJoint name='l_radiocarpal' rather than expected parent
name='l_midcarpal_1', recommend checking model
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[2]/HAnimJoint/HA
nimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/H
AnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/
HAnimJoint/HAnimJoint[2]/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJo
int[1], warning]

<HAnimJoint DEF='Joe_l_carpometacarpal_2' name='l_carpometacarpal_2'/> has
parent HAnimJoint name='l_radiocarpal' rather than expected parent
name='l_midcarpal_2', recommend checking model
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[2]/HAnimJoint/HA
nimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/H
AnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/
HAnimJoint/HAnimJoint[2]/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJo
int[2], warning]

<HAnimJoint DEF='Joe_l_carpometacarpal_3' name='l_carpometacarpal_3'/> has
parent HAnimJoint name='l_radiocarpal' rather than expected parent
name='l_midcarpal_3', recommend checking model
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[2]/HAnimJoint/HA
nimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/H
AnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/
HAnimJoint/HAnimJoint[2]/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJo
int[3], warning]

<HAnimJoint DEF='Joe_l_carpometacarpal_4' name='l_carpometacarpal_4'/> has
parent HAnimJoint name='l_radiocarpal' rather than expected parent
name='l_midcarpal_4_5', recommend checking model
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[2]/HAnimJoint/HA
nimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/H
AnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/
HAnimJoint/HAnimJoint[2]/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJo
int[4], warning]

<HAnimJoint DEF='Joe_l_carpometacarpal_5' name='l_carpometacarpal_5'/> has
parent HAnimJoint name='l_radiocarpal' rather than expected parent
name='l_midcarpal_4_5', recommend checking model
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[2]/HAnimJoint/HA
nimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/H
AnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/
HAnimJoint/HAnimJoint[2]/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJo
int[5], warning]

<HAnimJoint DEF='Joe_r_carpometacarpal_1' name='r_carpometacarpal_1'/> has
parent HAnimJoint name='r_radiocarpal' rather than expected parent
name='r_midcarpal_1', recommend checking model
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[2]/HAnimJoint/HA
nimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/H
AnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/
HAnimJoint/HAnimJoint[3]/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJo
int[1], warning]

<HAnimJoint DEF='Joe_r_carpometacarpal_2' name='r_carpometacarpal_2'/> has
parent HAnimJoint name='r_radiocarpal' rather than expected parent
name='r_midcarpal_2', recommend checking model
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[2]/HAnimJoint/HA
nimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/H
AnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/
HAnimJoint/HAnimJoint[3]/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJo
int[2], warning]

<HAnimJoint DEF='Joe_r_carpometacarpal_3' name='r_carpometacarpal_3'/> has
parent HAnimJoint name='r_radiocarpal' rather than expected parent
name='r_midcarpal_3', recommend checking model
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[2]/HAnimJoint/HA
nimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/H
AnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/
HAnimJoint/HAnimJoint[3]/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJo
int[3], warning]

<HAnimJoint DEF='Joe_r_carpometacarpal_4' name='r_carpometacarpal_4'/> has
parent HAnimJoint name='r_radiocarpal' rather than expected parent
name='r_midcarpal_4_5', recommend checking model
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[2]/HAnimJoint/HA
nimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/H
AnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/
HAnimJoint/HAnimJoint[3]/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJo
int[4], warning]

<HAnimJoint DEF='Joe_r_carpometacarpal_5' name='r_carpometacarpal_5'/> has
parent HAnimJoint name='r_radiocarpal' rather than expected parent
name='r_midcarpal_4_5', recommend checking model
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[1]/HAnimJoint[2]/HAnimJoint/HA
nimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/H
AnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/
HAnimJoint/HAnimJoint[3]/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJoint/HAnimJo
int[5], warning]

<MetadataSet DEF='' USE='' name='warnings'/> default containerField='value'
is only allowed when parent node is MetadataSet, need to explicitly define
containerField='metadata' in X3D4 models
[/X3D/Scene/Group[1]/HAnimHumanoid/MetadataSet, error]

HAnimHumanoid/<MetadataSet DEF='' USE='' name='warnings'/> contains
containerField='value' which instead needs to be containerField='metadata'
[/X3D/Scene/Group[1]/HAnimHumanoid/MetadataSet, warning]

<Coordinate USE='Joe_SkinCoord'/> found USE node that precedes matching DEF
node,
count(following::*[@DEF=$USE])=1[/X3D/Scene/Group[1]/HAnimHumanoid/Coordinat
e, error]

<Coordinate DEF=''/> with parent HAnimHumanoid must have
@containerField='skinCoord' or @containerField='skinBindingCoords'
[/X3D/Scene/Group[1]/HAnimHumanoid/Coordinate, warning]

<HAnimJoint USE='Joe_humanoid_root'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[2],
error]

<HAnimJoint USE='Joe_sacroiliac'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[3],
error]

<HAnimJoint USE='Joe_skullbase'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[4],
error]

<HAnimJoint USE='Joe_temporomandibular'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[5],
error]

<HAnimJoint USE='Joe_vc1'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[6],
error]

<HAnimJoint USE='Joe_vc2'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[7],
error]

<HAnimJoint USE='Joe_vc3'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[8],
error]

<HAnimJoint USE='Joe_vc4'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[9],
error]

<HAnimJoint USE='Joe_vc5'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[10],
error]

<HAnimJoint USE='Joe_vc6'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[11],
error]

<HAnimJoint USE='Joe_vc7'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[12],
error]

<HAnimJoint USE='Joe_vl1'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[13],
error]

<HAnimJoint USE='Joe_vl2'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[14],
error]

<HAnimJoint USE='Joe_vl3'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[15],
error]

<HAnimJoint USE='Joe_vl4'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[16],
error]

<HAnimJoint USE='Joe_vl5'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[17],
error]

<HAnimJoint USE='Joe_vt1'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[18],
error]

<HAnimJoint USE='Joe_vt10'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[19],
error]

<HAnimJoint USE='Joe_vt11'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[20],
error]

<HAnimJoint USE='Joe_vt12'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[21],
error]

<HAnimJoint USE='Joe_vt2'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[22],
error]

<HAnimJoint USE='Joe_vt3'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[23],
error]

<HAnimJoint USE='Joe_vt4'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[24],
error]

<HAnimJoint USE='Joe_vt5'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[25],
error]

<HAnimJoint USE='Joe_vt6'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[26],
error]

<HAnimJoint USE='Joe_vt7'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[27],
error]

<HAnimJoint USE='Joe_vt8'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[28],
error]

<HAnimJoint USE='Joe_vt9'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[29],
error]

<HAnimJoint USE='Joe_l_acromioclavicular'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[30],
error]

<HAnimJoint USE='Joe_r_acromioclavicular'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[31],
error]

<HAnimJoint USE='Joe_l_carpal_distal_interphalangeal_2'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[32], error]

<HAnimJoint USE='Joe_r_carpal_distal_interphalangeal_2'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[33], error]

<HAnimJoint USE='Joe_l_carpal_distal_interphalangeal_3'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[34], error]

<HAnimJoint USE='Joe_r_carpal_distal_interphalangeal_3'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[35], error]

<HAnimJoint USE='Joe_l_carpal_distal_interphalangeal_4'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[36], error]

<HAnimJoint USE='Joe_r_carpal_distal_interphalangeal_4'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[37], error]

<HAnimJoint USE='Joe_l_carpal_distal_interphalangeal_5'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[38], error]

<HAnimJoint USE='Joe_r_carpal_distal_interphalangeal_5'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[39], error]

<HAnimJoint USE='Joe_l_carpal_interphalangeal_1'/> with parent HAnimHumanoid
needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[40], error]

<HAnimJoint USE='Joe_r_carpal_interphalangeal_1'/> with parent HAnimHumanoid
needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[41], error]

<HAnimJoint USE='Joe_l_carpal_proximal_interphalangeal_2'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[42], error]

<HAnimJoint USE='Joe_r_carpal_proximal_interphalangeal_2'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[43], error]

<HAnimJoint USE='Joe_l_carpal_proximal_interphalangeal_3'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[44], error]

<HAnimJoint USE='Joe_r_carpal_proximal_interphalangeal_3'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[45], error]

<HAnimJoint USE='Joe_l_carpal_proximal_interphalangeal_4'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[46], error]

<HAnimJoint USE='Joe_r_carpal_proximal_interphalangeal_4'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[47], error]

<HAnimJoint USE='Joe_l_carpal_proximal_interphalangeal_5'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[48], error]

<HAnimJoint USE='Joe_r_carpal_proximal_interphalangeal_5'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[49], error]

<HAnimJoint USE='Joe_l_carpometacarpal_1'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[50],
error]

<HAnimJoint USE='Joe_r_carpometacarpal_1'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[51],
error]

<HAnimJoint USE='Joe_l_carpometacarpal_2'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[52],
error]

<HAnimJoint USE='Joe_r_carpometacarpal_2'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[53],
error]

<HAnimJoint USE='Joe_l_carpometacarpal_3'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[54],
error]

<HAnimJoint USE='Joe_r_carpometacarpal_3'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[55],
error]

<HAnimJoint USE='Joe_l_carpometacarpal_4'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[56],
error]

<HAnimJoint USE='Joe_r_carpometacarpal_4'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[57],
error]

<HAnimJoint USE='Joe_l_carpometacarpal_5'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[58],
error]

<HAnimJoint USE='Joe_r_carpometacarpal_5'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[59],
error]

<HAnimJoint USE='Joe_l_elbow'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[60],
error]

<HAnimJoint USE='Joe_r_elbow'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[61],
error]

<HAnimJoint USE='Joe_l_eyeball_joint'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[62],
error]

<HAnimJoint USE='Joe_r_eyeball_joint'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[63],
error]

<HAnimJoint USE='Joe_l_eyebrow_joint'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[64],
error]

<HAnimJoint USE='Joe_r_eyebrow_joint'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[65],
error]

<HAnimJoint USE='Joe_l_eyelid_joint'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[66],
error]

<HAnimJoint USE='Joe_r_eyelid_joint'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[67],
error]

<HAnimJoint USE='Joe_l_hip'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[68],
error]

<HAnimJoint USE='Joe_r_hip'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[69],
error]

<HAnimJoint USE='Joe_l_knee'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[70],
error]

<HAnimJoint USE='Joe_r_knee'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[71],
error]

<HAnimJoint USE='Joe_l_metacarpophalangeal_1'/> with parent HAnimHumanoid
needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[72], error]

<HAnimJoint USE='Joe_r_metacarpophalangeal_1'/> with parent HAnimHumanoid
needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[73], error]

<HAnimJoint USE='Joe_l_metacarpophalangeal_2'/> with parent HAnimHumanoid
needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[74], error]

<HAnimJoint USE='Joe_r_metacarpophalangeal_2'/> with parent HAnimHumanoid
needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[75], error]

<HAnimJoint USE='Joe_l_metacarpophalangeal_3'/> with parent HAnimHumanoid
needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[76], error]

<HAnimJoint USE='Joe_r_metacarpophalangeal_3'/> with parent HAnimHumanoid
needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[77], error]

<HAnimJoint USE='Joe_l_metacarpophalangeal_4'/> with parent HAnimHumanoid
needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[78], error]

<HAnimJoint USE='Joe_r_metacarpophalangeal_4'/> with parent HAnimHumanoid
needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[79], error]

<HAnimJoint USE='Joe_l_metacarpophalangeal_5'/> with parent HAnimHumanoid
needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[80], error]

<HAnimJoint USE='Joe_r_metacarpophalangeal_5'/> with parent HAnimHumanoid
needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[81], error]

<HAnimJoint USE='Joe_l_metatarsophalangeal_2'/> with parent HAnimHumanoid
needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[82], error]

<HAnimJoint USE='Joe_r_metatarsophalangeal_2'/> with parent HAnimHumanoid
needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[83], error]

<HAnimJoint USE='Joe_l_radiocarpal'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[84],
error]

<HAnimJoint USE='Joe_r_radiocarpal'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[85],
error]

<HAnimJoint USE='Joe_l_shoulder'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[86],
error]

<HAnimJoint USE='Joe_r_shoulder'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[87],
error]

<HAnimJoint USE='Joe_l_sternoclavicular'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[88],
error]

<HAnimJoint USE='Joe_r_sternoclavicular'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[89],
error]

<HAnimJoint USE='Joe_l_talocrural'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[90],
error]

<HAnimJoint USE='Joe_r_talocrural'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[91],
error]

<HAnimJoint USE='Joe_l_tarsal_distal_interphalangeal_2'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[92], error]

<HAnimJoint USE='Joe_r_tarsal_distal_interphalangeal_2'/> with parent
HAnimHumanoid needs containerField='joints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[93], error]

<HAnimJoint USE='Joe_l_tarsometatarsal_2'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[94],
error]

<HAnimJoint USE='Joe_r_tarsometatarsal_2'/> with parent HAnimHumanoid needs
containerField='joints' [/X3D/Scene/Group[1]/HAnimHumanoid/HAnimJoint[95],
error]

<HAnimSegment USE='Joe_sacrum' containerField=''/> with parent HAnimHumanoid
needs containerField='segments'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimSegment, error]

<HAnimSite USE='Joe_RootFront_view'/> with parent HAnimHumanoid needs
containerField='sites' or containerField='viewpoints'
[/X3D/Scene/Group[1]/HAnimHumanoid/HAnimSite, error]



--------- X3D Validator checks complete for JoeKick.x3d ---------

--------- X3D Validator online at https://savage.nps.edu/X3dValidator
---------



Time for validation of the archive?



John

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20231017/47aa9a99/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5464 bytes
Desc: not available
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20231017/47aa9a99/attachment-0001.p7s>


More information about the x3d-public mailing list