<div dir="ltr">Fixed the skeleton issue in DOM2JSONSerializer.js<div><br></div><div>Remaining skeleton issue (problem with original .x3d).</div><div>File: KoreanCharacterAnnexD01Jin.json<br>Error reading KoreanCharacterAnnexD01Jin.json<br> keyword: additionalProperties<br> dataPath: X3D > Scene<br> value: {"-children":"|omitted|","-skeleton":"|omitted|"}<br> message: should not have additional properties<br> params: {"additionalProperty":"-skeleton"}<br> file: KoreanCharacterAnnexD01Jin.json<br> version: 4.0<br></div><div>=====================================================</div><div>This one appears to not translate properly.  Hmm.</div><div><br></div><div> keyword: type<br> dataPath: X3D > Scene > -children > 2 > HAnimHumanoid > -skeleton > 0 > HAnimJoint > -children > 0 > HAnimSegment > -children > 0 > Transform > -children > 0 > Shape > -geometry > IndexedFaceSet > -coord > Coordinate > @point > 0<br> value: null<br> message: should be number<br> params: {"type":"number"}<br> file: KoreanCharacterAnnexC01Jin.json<br> version: 4.0<br></div><div><br></div><div>Fixed, by doing a trim() around attribute values.</div><div><br></div><div>So it seems like I have conquered most of the issues my code.  The remaining one is the -skeleton right under Scene.  I believe this is an issue with the standard x3d example, and should be reported as an issue (even in X3dToJson.xslt, if not already).</div><div><br></div><div>John</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, May 5, 2020 at 12:50 AM John Carlson <<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">DOM2JSONSerializer.js has the following issues:<div><br></div><div>-skeleton is treated as an object instead of an array.</div><div><br></div><div>John</div><div><br></div><div>Loading schema<br>Parsing schema<br>Adding schema<br>Schema 4.0 added<br>Schema 4.0 compiled<br>================================================================================<br>File: HAnimModelFootLeft.json<br>Error reading HAnimModelFootLeft.json <br> keyword: additionalProperties<br> dataPath: X3D > Scene > -children > 1 > HAnimHumanoid<br> value: {"@DEF":"Humanoid_Left_Foot","@info":"|omitted|","@jointBindingPositions":"|omitted|","@jointBindingRotations":"|omitted|","@jointBindingScales":"|omitted|","@loa":-1,"@name":"Humanoid_Left_Foot","@skeletalConfiguration":"BASIC","@version":"2.0","-skeleton":"|omitted|","-joints":"|omitted|","-segments":"|omitted|"}<br> message: should not have additional properties<br> params: {"additionalProperty":"@DEF"}<br> file: HAnimModelFootLeft.json<br> version: 4.0<br><br> keyword: type<br> dataPath: X3D > Scene > -children > 1 > HAnimHumanoid > -skeleton<br> value: {"HAnimJoint":"|omitted|"}<br> message: should be array<br> params: {"type":"array"}<br> file: HAnimModelFootLeft.json<br> version: 4.0<br><br> keyword: oneOf<br> dataPath: X3D > Scene > -children > 1 > HAnimHumanoid<br> value: {"@DEF":"Humanoid_Left_Foot","@info":"|omitted|","@jointBindingPositions":"|omitted|","@jointBindingRotations":"|omitted|","@jointBindingScales":"|omitted|","@loa":-1,"@name":"Humanoid_Left_Foot","@skeletalConfiguration":"BASIC","@version":"2.0","-skeleton":"|omitted|","-joints":"|omitted|","-segments":"|omitted|"}<br> message: should match exactly one schema in "oneOf"<br> params: {"passingSchemas":null}<br> file: HAnimModelFootLeft.json<br> version: 4.0<br><br>================================================================================<br>File: HAnimModelFootRight.json<br>Error reading HAnimModelFootRight.json <br> keyword: additionalProperties<br> dataPath: X3D > Scene > -children > 1 > HAnimHumanoid<br> value: {"@DEF":"Humanoid_Right_Foot","@jointBindingPositions":"|omitted|","@jointBindingRotations":"|omitted|","@jointBindingScales":"|omitted|","@loa":-1,"@name":"Humanoid_Right_Foot","@skeletalConfiguration":"BASIC","@version":"2.0","-skeleton":"|omitted|","-joints":"|omitted|","-segments":"|omitted|"}<br> message: should not have additional properties<br> params: {"additionalProperty":"@DEF"}<br> file: HAnimModelFootRight.json<br> version: 4.0<br><br> keyword: type<br> dataPath: X3D > Scene > -children > 1 > HAnimHumanoid > -skeleton<br> value: {"HAnimJoint":"|omitted|"}<br> message: should be array<br> params: {"type":"array"}<br> file: HAnimModelFootRight.json<br> version: 4.0<br><br> keyword: oneOf<br> dataPath: X3D > Scene > -children > 1 > HAnimHumanoid<br> value: {"@DEF":"Humanoid_Right_Foot","@jointBindingPositions":"|omitted|","@jointBindingRotations":"|omitted|","@jointBindingScales":"|omitted|","@loa":-1,"@name":"Humanoid_Right_Foot","@skeletalConfiguration":"BASIC","@version":"2.0","-skeleton":"|omitted|","-joints":"|omitted|","-segments":"|omitted|"}<br> message: should match exactly one schema in "oneOf"<br> params: {"passingSchemas":null}<br> file: HAnimModelFootRight.json<br> version: 4.0<br><br>================================================================================<br>File: HAnimModelHandLeft.json<br>Error reading HAnimModelHandLeft.json <br> keyword: additionalProperties<br> dataPath: X3D > Scene > -children > 1 > HAnimHumanoid<br> value: {"@DEF":"Humanoid_Left_hand","@jointBindingPositions":"|omitted|","@jointBindingRotations":"|omitted|","@jointBindingScales":"|omitted|","@loa":-1,"@name":"Humanoid_Left_hand","@skeletalConfiguration":"BASIC","@version":"2.0","-skeleton":"|omitted|","-joints":"|omitted|","-segments":"|omitted|"}<br> message: should not have additional properties<br> params: {"additionalProperty":"@DEF"}<br> file: HAnimModelHandLeft.json<br> version: 4.0<br><br> keyword: type<br> dataPath: X3D > Scene > -children > 1 > HAnimHumanoid > -skeleton<br> value: {"HAnimJoint":"|omitted|"}<br> message: should be array<br> params: {"type":"array"}<br> file: HAnimModelHandLeft.json<br> version: 4.0<br><br> keyword: oneOf<br> dataPath: X3D > Scene > -children > 1 > HAnimHumanoid<br> value: {"@DEF":"Humanoid_Left_hand","@jointBindingPositions":"|omitted|","@jointBindingRotations":"|omitted|","@jointBindingScales":"|omitted|","@loa":-1,"@name":"Humanoid_Left_hand","@skeletalConfiguration":"BASIC","@version":"2.0","-skeleton":"|omitted|","-joints":"|omitted|","-segments":"|omitted|"}<br> message: should match exactly one schema in "oneOf"<br> params: {"passingSchemas":null}<br> file: HAnimModelHandLeft.json<br> version: 4.0<br><br>================================================================================<br>File: HAnimModelHandRight.json<br>Error reading HAnimModelHandRight.json <br> keyword: additionalProperties<br> dataPath: X3D > Scene > -children > 1 > HAnimHumanoid<br> value: {"@DEF":"Humanoid_Right_hand","@jointBindingPositions":"|omitted|","@jointBindingRotations":"|omitted|","@jointBindingScales":"|omitted|","@loa":-1,"@name":"Humanoid_Right_hand","@skeletalConfiguration":"BASIC","@version":"2.0","-skeleton":"|omitted|","-joints":"|omitted|","-segments":"|omitted|"}<br> message: should not have additional properties<br> params: {"additionalProperty":"@DEF"}<br> file: HAnimModelHandRight.json<br> version: 4.0<br><br> keyword: type<br> dataPath: X3D > Scene > -children > 1 > HAnimHumanoid > -skeleton<br> value: {"HAnimJoint":"|omitted|"}<br> message: should be array<br> params: {"type":"array"}<br> file: HAnimModelHandRight.json<br> version: 4.0<br><br> keyword: oneOf<br> dataPath: X3D > Scene > -children > 1 > HAnimHumanoid<br> value: {"@DEF":"Humanoid_Right_hand","@jointBindingPositions":"|omitted|","@jointBindingRotations":"|omitted|","@jointBindingScales":"|omitted|","@loa":-1,"@name":"Humanoid_Right_hand","@skeletalConfiguration":"BASIC","@version":"2.0","-skeleton":"|omitted|","-joints":"|omitted|","-segments":"|omitted|"}<br> message: should match exactly one schema in "oneOf"<br> params: {"passingSchemas":null}<br> file: HAnimModelHandRight.json<br> version: 4.0<br><br>Success reading HAnimModelsHandsFeet.json<br>================================================================================<br>File: KoreanCharacterAnnexC01Jin.json<br>Error reading KoreanCharacterAnnexC01Jin.json <br> keyword: additionalProperties<br> dataPath: X3D > Scene > -children > 2 > HAnimHumanoid<br> value: {"@DEF":"hanim_AnnexC01Jin","@info":"|omitted|","@name":"AnnexC01Jin","@scale":"|omitted|","@version":"2.0","-skeleton":"|omitted|"}<br> message: should not have additional properties<br> params: {"additionalProperty":"@DEF"}<br> file: KoreanCharacterAnnexC01Jin.json<br> version: 4.0<br><br> keyword: type<br> dataPath: X3D > Scene > -children > 2 > HAnimHumanoid > -skeleton<br> value: {"HAnimJoint":"|omitted|"}<br> message: should be array<br> params: {"type":"array"}<br> file: KoreanCharacterAnnexC01Jin.json<br> version: 4.0<br><br> keyword: oneOf<br> dataPath: X3D > Scene > -children > 2 > HAnimHumanoid<br> value: {"@DEF":"hanim_AnnexC01Jin","@info":"|omitted|","@name":"AnnexC01Jin","@scale":"|omitted|","@version":"2.0","-skeleton":"|omitted|"}<br> message: should match exactly one schema in "oneOf"<br> params: {"passingSchemas":null}<br> file: KoreanCharacterAnnexC01Jin.json<br> version: 4.0<br><br>================================================================================<br>File: KoreanCharacterAnnexD01Jin.json<br>Error reading KoreanCharacterAnnexD01Jin.json <br> keyword: additionalProperties<br> dataPath: X3D > Scene<br> value: {"-children":"|omitted|","-skeleton":"|omitted|"}<br> message: should not have additional properties<br> params: {"additionalProperty":"-skeleton"}<br> file: KoreanCharacterAnnexD01Jin.json<br> version: 4.0<br><br></div></div>
</blockquote></div>