<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Generated 10 mintues ago:</p>
    <p>          
HAnimJoint(DEF='hanim_l_knee',center=(4.116,18.170,-0.863900),name='l_knee',stiffness=[0,0,0],</p>
    <p>Not seeing MFFloat in:</p>
    <p>$ python3 net/x3djsonld/data/JinLOA4.py <br>
      x3d.py package loaded, have fun with X3D Graphics!<br>
      Traceback (most recent call last):<br>
        File
"/home/coderextreme/X3DJSONLD/src/main/python/net/x3djsonld/data/JinLOA4.py",
      line 177, in <module><br>
         
HAnimJoint(DEF='hanim_l_tarsal_distal_interphalangeal_1',center=(2.761,0.539400,5.125),name='l_tarsal_distal_interphalangeal_1',stiffness=[0,0,0],<br>
        File
"/home/coderextreme/X3DJSONLD/src/main/python/net/x3djsonld/data/x3d.py",
      line 43724, in __init__<br>
          self.stiffness = stiffness<br>
        File
"/home/coderextreme/X3DJSONLD/src/main/python/net/x3djsonld/data/x3d.py",
      line 43873, in stiffness<br>
          assertValidSFVec3f(stiffness)<br>
        File
"/home/coderextreme/X3DJSONLD/src/main/python/net/x3djsonld/data/x3d.py",
      line 3953, in assertValidSFVec3f<br>
          raise X3DTypeError(str(value)[:100] + ', type=' +
      str(type(value)) + ' is not a valid Python tuple for SFVec3f')<br>
      x3d.X3DTypeError: [0, 0, 0], type=<class 'list'> is not a
      valid Python tuple for SFVec3f</p>
    <p><br>
    </p>
    <p>Spotted stiffness as MFFloat in X3DUOM.</p>
    <p><br>
    </p>
    <p>Will rebuild once there's a new python x3d.py package available.</p>
    <p>John<br>
    </p>
    <p><br>
    </p>
    <blockquote type="cite"
cite="mid:BY3PR13MB48843FB268CC46BEC41D623BC47E9@BY3PR13MB4884.namprd13.prod.outlook.com">
      <div class="WordSection1">
        <div>
          <p class="MsoNormal">but then got a self-validation error by
            the JinLOA4.py python program,
            <o:p></o:p></p>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">create python:<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">C:\x3d-code\<a class="moz-txt-link-abbreviated" href="http://www.web3d.org\x3d\content\examples\HumanoidAnimation/Characters//JinLOA4.x3d">www.web3d.org\x3d\content\examples\HumanoidAnimation/Characters//JinLOA4.x3d</a>
              processing with X3dToPython stylesheet...<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">C:\x3d-code\<a class="moz-txt-link-abbreviated" href="http://www.web3d.org\x3d\content\examples\HumanoidAnimation/Characters//JinLOA4.py">www.web3d.org\x3d\content\examples\HumanoidAnimation/Characters//JinLOA4.py</a>
              self-validation tests...<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">validate python:<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">x3d.py package loaded, have fun with X3D
              Graphics!<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">Traceback (most recent call last):<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">  File
"C:\x3d-code\<a class="moz-txt-link-abbreviated" href="http://www.web3d.org\x3d\content\examples\HumanoidAnimation\Characters\JinLOA4.py">www.web3d.org\x3d\content\examples\HumanoidAnimation\Characters\JinLOA4.py</a>",
              line 169, in <module><o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">   
HAnimJoint(DEF='hanim_l_tarsal_distal_interphalangeal_1',center=(2.761,0.539400,5.125),name='l_tarsal_distal_interphalangeal_1',stiffness=[0,0,0],<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">  File
              "C:\x3d-code\<a class="moz-txt-link-abbreviated" href="http://www.web3d.org\x3d\stylesheets\python\x3d\x3d.py">www.web3d.org\x3d\stylesheets\python\x3d\x3d.py</a>",
              line 43724, in __init__<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">    self.stiffness = stiffness<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">  File
              "C:\x3d-code\<a class="moz-txt-link-abbreviated" href="http://www.web3d.org\x3d\stylesheets\python\x3d\x3d.py">www.web3d.org\x3d\stylesheets\python\x3d\x3d.py</a>",
              line 43873, in stiffness<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">    assertValidSFVec3f(stiffness)<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">  File
              "C:\x3d-code\<a class="moz-txt-link-abbreviated" href="http://www.web3d.org\x3d\stylesheets\python\x3d\x3d.py">www.web3d.org\x3d\stylesheets\python\x3d\x3d.py</a>",
              line 3953, in assertValidSFVec3f<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">    raise X3DTypeError(str(value)[:100] + ',
              type=' + str(type(value)) + ' is not a valid Python tuple
              for SFVec3f')<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">x3d.X3DTypeError: [0, 0, 0], type=<class
              'list'> is not a valid Python tuple for SFVec3f<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">Result: 1<o:p></o:p></span></p>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal">Note how <span
              style="font-size:10.0pt;font-family:"Courier
              New"">
              stiffness=[0,0,0]</span>was given as a list in brackets,
            rather than a tuple value in parentheses
            <span style="font-size:10.0pt;font-family:"Courier
              New"">stiffness=(0,0,0)</span> as might be expected
            for SFVec3f, and so this is a useful diagnostic.<o:p></o:p></p>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal">However the actual specification type for
            stiffness is MFFloat.  (This was a mantis issue, might we
            tighten it to SFVec3f, but decided to keep it MFFloat in
            case more-advanced kinematics engines were someday of
            interest.<o:p></o:p></p>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal">*
<a class="moz-txt-link-freetext" href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/hanim.html#HAnimJoint">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/hanim.html#HAnimJoint</a><o:p></o:p></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New""><o:p> </o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">26.3.3 HAnimJoint<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">HAnimJoint : X3DGroupingNode {<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">[…]<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">  MFFloat    [in,out] stiffness        [0 0 0] 
              [0,1]<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New""><o:p> </o:p></span></p>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal">Applied change to X3D DTD, X3D XML Schema
            and again autogenerated X3DUOM and x3d.py and X3D Ontology
            to match.<o:p></o:p></p>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">23 DEC 2021, carlson brutzman<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">- restore type of HAnimJoint stiffness field as
              MFFloat (vice SFVec3f) to match<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">  specification, since more-advanced kinematics
              engines might someday hold interest.<o:p></o:p></span></p>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal">This fixed the stiffness error.<o:p></o:p></p>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal">However, next got a surprising conversion
            error (which might have been what you experienced
            originally):<o:p></o:p></p>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">=====================<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">create python:<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">C:\x3d-code\<a class="moz-txt-link-abbreviated" href="http://www.web3d.org\x3d\content\examples\HumanoidAnimation/Characters//JinLOA4.x3d">www.web3d.org\x3d\content\examples\HumanoidAnimation/Characters//JinLOA4.x3d</a>
              processing with X3dToPython stylesheet...<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">C:\x3d-code\<a class="moz-txt-link-abbreviated" href="http://www.web3d.org\x3d\content\examples\HumanoidAnimation/Characters//JinLOA4.py">www.web3d.org\x3d\content\examples\HumanoidAnimation/Characters//JinLOA4.py</a>
              self-validation tests...<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">validate python:<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">x3d.py package loaded, have fun with X3D
              Graphics!Traceback (most recent call last):<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New""><o:p> </o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">  File
"C:\x3d-code\<a class="moz-txt-link-abbreviated" href="http://www.web3d.org\x3d\content\examples\HumanoidAnimation\Characters\JinLOA4.py">www.web3d.org\x3d\content\examples\HumanoidAnimation\Characters\JinLOA4.py</a>",
              line 50, in <module><o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">   
HAnimHumanoid(DEF='hanim_JinLOA4',loa=4,name='JinLOA4',scale=(0.0225,0.0225,0.0225),version='2.0',<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">TypeError: HAnimHumanoid.__init__() got an
              unexpected keyword argument 'value'<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">Result: 1<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">=====================<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New""><o:p> </o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New""><o:p> </o:p></span></p>
          <p class="MsoNormal">Which apparently was on line 1950,<o:p></o:p></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New""><o:p> </o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">  
value=MetadataSet(name='HAnimHumanoid.info',reference='<a class="moz-txt-link-freetext" href="https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/ObjectInterfaces.html#Humanoid">https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/ObjectInterfaces.html#Humanoid</a>',</span>etc.<o:p></o:p></p>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal">This conversion should have been <span
              style="font-size:10.0pt;font-family:"Courier
              New"">
              metadata=MetadataSet</span> etc. Looks like the field name
            for the HAnimHumanoid MetadataSet was not specified
            incorrectly, the automatic conversion by X3dTidy did not
            apply correct containerField value.<o:p></o:p></p>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal">I have added a rule to X3dTidy.xslt that
            looks for this case (for either representation, X3D3 or
            X3D4) and corrects it.  I have added a similar diagnostic
            rule to X3dSchematron checks.<o:p></o:p></p>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal">All affected HAnimHumanoid scenes have
            been updated and are now getting compiled correctly by
            Python.<o:p></o:p></p>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal">All changes checked into subversion. 
            Further regression testing continuing, website uploads to
            follow.<o:p></o:p></p>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal">So again thanks for exposing this issue. 
            Pretty complex but resolvable.  Once again the strict nature
            of Python aided us in achieving high Quality Assurance (QA)
            for X3D.<o:p></o:p></p>
          <p class="MsoNormal"><o:p> </o:p></p>
          <p class="MsoNormal">Happy holidays with X3D!   8)<span
              style="font-size:10.0pt;font-family:"Courier
              New""><o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New""><o:p> </o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">all the best, Don<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">-- <o:p>
              </o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">Don Brutzman  Naval Postgraduate School, Code
              USW/Br        <a class="moz-txt-link-abbreviated" href="mailto:brutzman@nps.edu">brutzman@nps.edu</a><o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">Watkins 270,  MOVES Institute, Monterey CA
              93943-5000 USA    +1.831.656.2149<o:p></o:p></span></p>
          <p class="MsoNormal"><span
              style="font-size:10.0pt;font-family:"Courier
              New"">X3D graphics, virtual worlds, navy robotics
              https://</span>
            <span style="font-size:10.0pt;font-family:"Courier
              New"">faculty.nps.edu/brutzman<o:p></o:p></span></p>
        </div>
        <p class="MsoNormal"><o:p> </o:p></p>
        <div>
          <div style="border:none;border-top:solid #E1E1E1
            1.0pt;padding:3.0pt 0in 0in 0in">
            <p class="MsoNormal"><b>From:</b> John Carlson
              <a class="moz-txt-link-rfc2396E" href="mailto:yottzumm@gmail.com"><yottzumm@gmail.com></a> <br>
              <b>Sent:</b> Wednesday, December 22, 2021 12:44 PM<br>
              <b>To:</b> Brutzman, Donald (Don) (CIV)
              <a class="moz-txt-link-rfc2396E" href="mailto:brutzman@nps.edu"><brutzman@nps.edu></a>; X3D Graphics public mailing list
              <a class="moz-txt-link-rfc2396E" href="mailto:x3d-public@web3d.org"><x3d-public@web3d.org></a><br>
              <b>Subject:</b> Re: HAnim, X3dToPython.xslt X3dToJson.xslt
              Upgrade X3DUOM?<o:p></o:p></p>
          </div>
        </div>
        <p class="MsoNormal"><o:p> </o:p></p>
        <div>
          <div>
            <p class="MsoNormal">I believe I checked the right standard,
              here:<o:p></o:p></p>
          </div>
          <div>
            <p class="MsoNormal"><o:p> </o:p></p>
            <div>
              <p class="MsoNormal"><a
href="https://www.web3d.org/documents/specifications/19774-1/V2.0/index.html"
                  moz-do-not-send="true" class="moz-txt-link-freetext">https://www.web3d.org/documents/specifications/19774-1/V2.0/index.html</a><o:p></o:p></p>
            </div>
            <div>
              <p class="MsoNormal"><o:p> </o:p></p>
            </div>
            <p class="MsoNormal"> And neither value or metadata is a
              field????<o:p></o:p></p>
          </div>
          <div>
            <p class="MsoNormal"><o:p> </o:p></p>
          </div>
          <div>
            <p class="MsoNormal">Seems a bit strange.<o:p></o:p></p>
          </div>
          <div>
            <p class="MsoNormal"><o:p> </o:p></p>
            <div>
              <div>
                <p class="MsoNormal">On Wed, Dec 22, 2021 at 2:20 PM
                  John Carlson <<a href="mailto:yottzumm@gmail.com"
                    moz-do-not-send="true" class="moz-txt-link-freetext">yottzumm@gmail.com</a>>
                  wrote:<o:p></o:p></p>
              </div>
              <blockquote style="border:none;border-left:solid #CCCCCC
                1.0pt;padding:0in 0in 0in
                6.0pt;margin-left:4.8pt;margin-right:0in">
                <div>
                  <p class="MsoNormal">hoping to see value field added
                    to HAnimHumanoid in X3DUOM, or some notice that the
                    package generating stylesheets are not up-to-date.<o:p></o:p></p>
                </div>
                <div>
                  <p class="MsoNormal"><o:p> </o:p></p>
                </div>
                <div>
                  <p class="MsoNormal">Also, check to make sure
                    stiffness is assigned the right data structure
                    (between list and tuple).   And no, iOS, I do not
                    want “Tupperware” for the second time.   We need
                    more women mathematicians (sorry for any
                    stereotyping).  On that subject, I wonder what
                    coordinate system crocheted hats use?<o:p></o:p></p>
                </div>
                <div>
                  <p class="MsoNormal"><o:p> </o:p></p>
                  <div>
                    <div>
                      <p class="MsoNormal">On Mon, Dec 20, 2021 at 3:17
                        AM John Carlson <<a
                          href="mailto:yottzumm@gmail.com"
                          target="_blank" moz-do-not-send="true"
                          class="moz-txt-link-freetext">yottzumm@gmail.com</a>>
                        wrote:<o:p></o:p></p>
                    </div>
                    <blockquote style="border:none;border-left:solid
                      #CCCCCC 1.0pt;padding:0in 0in 0in
                      6.0pt;margin-left:4.8pt;margin-right:0in">
                      <div>
                        <p>Okay, now I seem to be having a similar
                          problem between my python serializer,
                          X3dToPython.xslt, and probably other
                          serialized stuff.  I couldn't figure out how
                          to fix the stiffness issue in
                          X3dToPython.xslt, but hand-editing saved that
                          on this particular python file
                          (python/net/x3djsonld/data/JinLOA4.py). Other
                          JinLOA's still have lists with Don's
                          generator.<o:p></o:p></p>
                        <p>I believe the main change I am dealing with
                          is metadata vs value containerFields.   See
                          JSON diff below.  I'm not seeing relevant
                          changes to X3D JSON schema 4.0.  Does
                          something need to be upgraded in X3DUOM or X3D
                          JSON schema?  I'm not seeing a value field in
                          HAnimHumanoid.<o:p></o:p></p>
                        <p><b><span style="font-family:"Courier
                              New";color:#5454FF;background:white">~/X3DJSONLD/src/main/python/net/coderextreme/data</span></b><span
                            style="font-family:"Courier
                            New";color:black;background:white">$
                            python JinLOA4.py  </span><span
                            style="font-family:"Courier New""><br>
                            Traceback (most recent call last): <br>
                             File
"/home/coderextreme/X3DJSONLD/src/main/python/net/coderextreme/data/JinLOA4.py",
                            line 148, in <module>
                            <br>
                               HAnimHumanoid23.setValue(MetadataSet24) <br>
                            AttributeError:
                            'org.web3d.x3d.jsail.HAnim.HAnimHumanoid'
                            object has no attribute 'setValue'. Did you
                            mean: 'setName'?
                            <br>
                            <b><span
                                style="color:#5454FF;background:white">~/X3DJSONLD/src/main/python/net/x3djsonld/data</span></b><span
                              style="color:black;background:white">$
                              python JinLOA4.py        </span><br>
                            x3d.py package loaded, have fun with X3D
                            Graphics! <br>
                            Traceback (most recent call last): <br>
                             File
"/home/coderextreme/X3DJSONLD/src/main/python/net/x3djsonld/data/JinLOA4.py",
                            line 50, in <module>
                            <br>
   HAnimHumanoid(DEF='hanim_JinLOA4',loa=4,name='JinLOA4',scale=(0.0225,0.0225,0.0225),version='2.0',
                            <br>
                            TypeError: HAnimHumanoid.__init__() got an
                            unexpected keyword argument 'value'</span><o:p></o:p></p>
                        <p><o:p> </o:p></p>
                        <p><o:p> </o:p></p>
                        <p><br>
                          <b><span style="font-family:"Courier
                              New";color:#5454FF;background:white">~/X3DJSONLD/src/main/data</span></b><span
                            style="font-family:"Courier
                            New";color:black;background:white">$
                            git diff JinLOA4.json
                          </span><span style="font-family:"Courier
                            New""><br>
                            <b><span
                                style="color:black;background:white">diff
                                --git a/src/main/data/JinLOA4.json
                                b/src/main/data/JinLOA4.json</span></b><span
                              style="color:black;background:white">
                            </span><br>
                            <b><span
                                style="color:black;background:white">index
                                c970a652a..e1930f4cf 100644</span></b><span
                              style="color:black;background:white">
                            </span><br>
                            <b><span
                                style="color:black;background:white">---
                                a/src/main/data/JinLOA4.json</span></b><span
                              style="color:black;background:white">
                            </span><br>
                            <b><span
                                style="color:black;background:white">+++
                                b/src/main/data/JinLOA4.json</span></b><span
                              style="color:black;background:white">
                            </span><br>
                            <span style="color:#18B2B2;background:white">@@
                              -78,7 +78,7 @@</span><span
                              style="color:black;background:white">
                            </span><br>
                                      }, <br>
                                      { <br>
                                        "@name":"translated", <br>
                            <span style="color:#B21818;background:white">-
                                         "@content":"14 October 2021"</span><span
                              style="color:black;background:white">
                            </span><br>
                            <span style="color:#18B218;background:white">+
                                         "@content":"20 December 2021"</span><span
                              style="color:black;background:white">
                            </span><br>
                                      }, <br>
                                      { <br>
                                        "@name":"generator", <br>
                            <span style="color:#18B2B2;background:white">@@
                              -116,7 +116,7 @@</span><span
                              style="color:black;background:white">
                            </span><br>
                                          "@loa":4, <br>
              "@scale":[0.0225,0.0225,0.0225], <br>
                                          "@version":"2.0", <br>
                            <span style="color:#B21818;background:white">-
                                           "-metadata":</span><span
                              style="color:black;background:white">
                            </span><br>
                            <span style="color:#18B218;background:white">+
                                           "-value":[</span><span
                              style="color:black;background:white">
                            </span><br>
                                            { "MetadataSet": <br>
                                              { <br>
                    "@name":"HAnimHumanoid.info", <br>
                            <span style="color:#18B2B2;background:white">@@
                              -160,7 +160,8 @@</span><span
                              style="color:black;background:white">
                            </span><br>
                                                  } <br>
                                                ] <br>
                                              } <br>
                            <span style="color:#B21818;background:white">-
                                             },</span><span
                              style="color:black;background:white">
                            </span><br>
                            <span style="color:#18B218;background:white">+
                                             }</span><span
                              style="color:black;background:white">
                            </span><br>
                            <span style="color:#18B218;background:white">+
                                           ],</span><span
                              style="color:black;background:white">
                            </span><br>
                                          "-skeleton":[ <br>
                                            { "HAnimJoint": <br>
                                              {<br>
                            <br>
                            ===================</span><o:p></o:p></p>
                        <p><span style="font-family:"Courier
                            New"">Validating JSON against schema:</span><o:p></o:p></p>
                        <p><b><span style="font-family:"Courier
                              New";color:#5454FF;background:white">~/X3DJSONLD/src/main/schema</span></b><span
                            style="font-family:"Courier
                            New";color:black;background:white">$
                            node ~/x3dvalidate/x3dvalidate.js
                            ../data/JinLOA4.json  </span><span
                            style="font-family:"Courier New""><br>
                            Loading schema <br>
                            Parsing schema <br>
                            Adding schema <br>
                            Schema 4.0 added <br>
                            Schema 4.0 compiled <br>
================================================================================
                            <br>
                            File: ../data/JinLOA4.json <br>
                            Error reading ../data/JinLOA4.json  <br>
                            keyword: required <br>
                            instancePath:
                            /X3D/Scene/-children/3/HAnimHumanoid <br>
                            message: must have required property @USE <br>
                            params: {"missingProperty":"@USE"} <br>
                            file: ../data/JinLOA4.json <br>
                            version: 4.0 <br>
                            <br>
                            keyword: additionalProperties <br>
                            instancePath:
                            /X3D/Scene/-children/3/HAnimHumanoid <br>
                            message: must NOT have additional properties
                            <br>
                            params: {"additionalProperty":"-value"} <br>
                            file: ../data/JinLOA4.json <br>
                            version: 4.0 <br>
                            <br>
                            keyword: oneOf <br>
                            instancePath:
                            /X3D/Scene/-children/3/HAnimHumanoid <br>
                            message: must match exactly one schema in
                            "oneOf" <br>
                            params: {"passingSchemas":null} <br>
                            file: ../data/JinLOA4.json <br>
                            version: 4.0</span><o:p></o:p></p>
                      </div>
                    </blockquote>
                  </div>
                </div>
              </blockquote>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
  </body>
</html>