<div dir="auto">The files been fixed in X3DOM,   get your copy at <a href="https://GitHub.com/coderextreme/X3DJSONLDunder">https://GitHub.com/coderextreme/X3DJSONLDunder</a> src/main/node</div><div dir="auto"><br></div><div dir="auto">I think andreas is pushing the changes to the real X3DOM as we speak.</div><div dir="auto"><br></div><div dir="auto">The main changes apply to X3DJSONLD.js in X3DJSONLD and JSONParser.js elsewhere.</div><div dir="auto"><br></div><div dir="auto">I’m waiting on a buildable version of x_ite, but so far it works for HAnim 1</div><div dir="auto"><br></div><div dir="auto">Go HAnim!</div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Nov 22, 2020 at 2:42 PM Joseph D Williams <<a href="mailto:joedwil@earthlink.net">joedwil@earthlink.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)"><div lang="EN-US" link="blue" vlink="#954F72"><div class="m_2004662821412915020WordSection1"><p class="MsoNormal">I think the containerfield for skin must be humanoid. whatever, it should be the same as for skeleton.</p></div></div><div lang="EN-US" link="blue" vlink="#954F72"><div class="m_2004662821412915020WordSection1"><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"><u></u> <u></u></p><div style="border-style:solid none none;border-top-width:1pt;padding:3pt 0in 0in;border-top-color:rgb(225,225,225)"><p class="MsoNormal" style="border:none;padding:0in"><b>From: </b><a href="mailto:yottzumm@gmail.com" target="_blank">John Carlson</a><br><b>Sent: </b>Saturday, November 21, 2020 2:30 PM<br><b>To: </b><a href="mailto:x3d-public@web3d.org" target="_blank">X3D Graphics public mailing list</a>; <a href="mailto:joedwil@earthlink.net" target="_blank">Joe D Williams</a><br><b>Subject: </b>Re: Comparing Joe*.* XML files</p></div><p class="MsoNormal"><u></u> <u></u></p><div><p class="MsoNormal">Here's some differences in the JSON, again mostly container fields.</p><div><p class="MsoNormal">Indeed, the processed XML does not contain a skin containerField, even though the input JSON does.   So perhaps we're not seeing the skin because the DOM document does not contain a skin containerField?  Indeed, looking at the intermediate XML produced by X3DJSONLD.js, it appears that the skin containerField is not created! So indeed, Joe's comment about "no skin" is very telling!</p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">So the question is, how do I convert the JSON -skin "containerField"/key into the XML/DOM document?   What bug is there in X3DJSONLD.js for HAnim?   Where should I put the "shim" which adds the skin?</p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">This is not the solution so far, I will work on fidelity of converted JSON to XML more.</p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">John</p></div><div><p class="MsoNormal">$ diff -w JoeKick.json JoeProcessedKick.json    </p></div><div><p class="MsoNormal">5c5<br><     "@xsd:noNamespaceSchemaLocation":"<a href="https://www.web3d.org/specifications/x3d-4.0.xsd" target="_blank">https://www.web3d.org/specifications/x3d-4.0.xsd</a>",<br>---<br>>     "@xsd:noNamespaceSchemaLocation":"<a href="http://www.web3d.org/specifications/x3d-4.0.xsd" target="_blank">http://www.web3d.org/specifications/x3d-4.0.xsd</a>",<br>183c183<br><                           "-value":[<br>---<br>>                           "-metadata":<br>191d190<br><                           ]<br>194c193<br><                     "-skeleton":[<br>---<br>>                     "-children":[<br>239c238<br><                                                               "@point":[0,0,0,1.0,0,0,0,1.0,0,0,0,1.0]<br>---<br>>                                                               "@point":[0,0,0,1,0,0,0,1,0,0,0,1]<br>1210,1212c1209<br><                       }<br><                     ],<br><                     "-skin":[<br>---<br>>                       },<br>1253c1250<br><                                       "@point":[0.0,1.77,0.0,0.0,1.665,0.09,-0.033,1.62,0.087,0.033,1.62,0.087,0.0,1.55,0.097,-0.077,1.64,-0.01,-0.0527,1.58,0.015,0.077,1.64,-0.01,0.0527,1.58,0.015,0.0,1.625,-0.0925,-0.03,1.46,0.035,0.0,1.44,0.03,0.03,1.46,0.035,-0.1135,1.318,0.095,0.1135,1.318,0.095,0.0,1.25,0.113,-0.087,1.19,0.09,-0.093</p></div></div><p class="MsoNormal"><u></u> <u></u></p><div><div><p class="MsoNormal">On Sat, Nov 21, 2020 at 3:50 PM John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>> wrote:</p></div><blockquote style="border-style:none none none solid;border-left-width:1pt;padding:0in 0in 0in 6pt;margin-left:4.8pt;margin-right:0in;border-left-color:rgb(204,204,204)"><div><p class="MsoNormal">I get an XML file from the archives, for example JoeKick.x3d, convert to JSON using X3dToJson.xslt and then convert back to XML using X3DJSONLD.  The I used xmldiff.js on the two XML files.  I get:</p><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">$ node ../node/xmldiff.js JoeKick.x3d JoeProcessedKick.x3d<br>================================================================================<br>C:\Users\coderextreme\X3DJSONLD\src\main\node\xmldiff.js JoeKick.x3d JoeProcessedKick.x3d<br>@5 /X3D/$/xsd:noNamespaceSchemaLocation<br>< "<a href="https://www.web3d.org/specifications/x3d-4.0.xsd" target="_blank">https://www.web3d.org/specifications/x3d-4.0.xsd</a>"<br>@6/X3D/Scene/0/Group/0/HAnimHumanoid/0/MetadataSet/0/$/containerField<br>>"metadata"<br>@4 /X3D/Scene/0/Group/0/HAnimHumanoid/0/MetadataSet/0/MetadataString/0/$/containerField<br>< "value"<br>@4 /X3D/Scene/0/Group/0/HAnimHumanoid/0/HAnimJoint/0/$/containerField<br>< "skeleton"<br>@6/X3D/Scene/0/Group/0/HAnimHumanoid/0/HAnimJoint/0/HAnimSegment/0/HAnimSite/0/Transform/0/S<br>hape/0/IndexedLineSet/0/$/containerField<br>>"geometry"<br>@6/X3D/Scene/0/Group/0/HAnimHumanoid/0/HAnimJoint/0/HAnimSegment/0/HAnimSite/0/Transform/0/S<br>hape/0/IndexedLineSet/0/Coordinate/0/$/containerField<br>>"coord"<br>@4 /X3D/Scene/0/Group/0/HAnimHumanoid/0/Shape/0/$/containerField<br>< "skin"<br>@6/X3D/Scene/0/Group/0/HAnimHumanoid/0/Shape/0/Appearance/0/ImageTexture/0/$/containerField<br>>"texture"<br>@6/X3D/Scene/0/Group/0/HAnimHumanoid/0/Shape/0/IndexedFaceSet/0/$/containerField<br>>"geometry"<br>@6/X3D/Scene/0/Group/0/HAnimHumanoid/0/Shape/0/IndexedFaceSet/0/Coordinate/0/$/containerFiel<br>d<br>>"coord"<br>@6/X3D/Scene/0/Group/0/HAnimHumanoid/0/Shape/0/IndexedFaceSet/0/TextureCoordinate/0/$/contai<br>nerField<br>>"texCoord"<br>@6/X3D/Scene/0/Group/4/Transform/0/Shape/0/Appearance/0/ImageTexture/0/$/containerField<br>>"texture"<br>@6/X3D/Scene/0/Group/4/Transform/0/Shape/0/IndexedFaceSet/0/$/containerField<br>>"geometry"<br>@6/X3D/Scene/0/Group/4/Transform/0/Shape/0/IndexedFaceSet/0/Coordinate/0/$/containerField<br>>"coord"<br>@6/X3D/Scene/0/Group/5/Transform/1/Shape/0/IndexedLineSet/0/$/containerField<br>>"geometry"<br>@6/X3D/Scene/0/Group/5/Transform/1/Shape/0/IndexedLineSet/0/Coordinate/0/$/containerField<br>>"coord"<br>@6/X3D/Scene/0/Group/5/Transform/2/Shape/0/IndexedLineSet/0/$/containerField<br>>"geometry"<br>@6/X3D/Scene/0/Group/5/Transform/3/Shape/0/IndexedLineSet/0/$/containerField<br>>"geometry"</p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Note that most of these are new containerFields, but there are perhaps important differences earlier in the files.</p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">The only approach that I see might work would be to include mapToMethod.js in the JSON -> XML conversion. One might argue that containerFields may not be required to render XML. One needs to examine how well mapToMethod.js works in general.</p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">Indeed, how are the JSON files themselves different?</p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div></div></blockquote></div><p class="MsoNormal" style="margin-left:4.8pt"><u></u> <u></u></p><p class="MsoNormal"><u></u> <u></u></p></div></div></blockquote></div></div>