[x3d-public] Prelude plus a bit of X3DTidy and X3dToJson stylesheet complaints
John Carlson
yottzumm at gmail.com
Thu Oct 26 07:21:04 PDT 2023
So I've been working on X3DJSONLD.java JSON to XML conversion. Since there
are many additions through the use of X3dToJson.xslt, namely @ulimit and
and @llimit properties which have default values, I cannot properly diff my
XML HAnim output against the original XML X3D. I can delete these defaults
X3DJSONLD.java and X3DJSONLD.js, but that seems like it's adding some
complexity, which perhaps is unnecessary.
So I thought, maybe I can use the X3d Tidy spreadsheet to remove these
defaults. Maybe not..
Here is the X3d Tidy spreadsheet running against the original
KoreanCharacterMotionAnnexD01Jin.x3d, which I believe is here:
https://www.web3d.org/x3d-resources/content/examples/HumanoidAnimation/Specifications/KoreanCharacterMotionAnnexD01JinIndex.html
I discovered all these ulimit and llimit fields being added to my tidied
output! See attached original and tidied XML output. See below for false
flags announcing that ulimit and llimit are omitted, when they are not.
See:
https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-DIS/Part01/components/hanim.html#HAnimJoint
For ulimit and llimit defaults.
I am using Saxon as packaged with X3DJSAIL. I am not testing with the
latest X3DJSAIL jar, but I'll download that now.
Thanks!
John
batchtidy:
[echo] Run tidy:
[apply] outdir
[apply] BEGIN
C:\Users\john\x3dschema\examples\KoreanCharacterMotionAnnexD01Jin.x3d
[apply] out
C:\Users\john\x3dschema\examples\KoreanCharacterMotionAnnexD01Jin.tidy.new.xml
[apply] *** HAnimJoint USE='hanim_humanoid_root'
containerField='joints' has disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_humanoid_root'
containerField='joints' has disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_sacroiliac' containerField='joints'
has disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_sacroiliac' containerField='joints'
has disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_vl5' containerField='joints' has
disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_vl5' containerField='joints' has
disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_skullbase' containerField='joints'
has disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_skullbase' containerField='joints'
has disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_l_elbow' containerField='joints' has
disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_l_elbow' containerField='joints' has
disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_r_elbow' containerField='joints' has
disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_r_elbow' containerField='joints' has
disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_l_hip' containerField='joints' has
disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_l_hip' containerField='joints' has
disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_r_hip' containerField='joints' has
disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_r_hip' containerField='joints' has
disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_l_knee' containerField='joints' has
disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_l_knee' containerField='joints' has
disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_r_knee' containerField='joints' has
disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_r_knee' containerField='joints' has
disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_l_metatarsophalangeal_2'
containerField='joints' has disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_l_metatarsophalangeal_2'
containerField='joints' has disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_r_metatarsophalangeal_2'
containerField='joints' has disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_r_metatarsophalangeal_2'
containerField='joints' has disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_l_radiocarpal'
containerField='joints' has disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_l_radiocarpal'
containerField='joints' has disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_r_radiocarpal'
containerField='joints' has disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_r_radiocarpal'
containerField='joints' has disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_l_shoulder' containerField='joints'
has disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_l_shoulder' containerField='joints'
has disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_r_shoulder' containerField='joints'
has disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_r_shoulder' containerField='joints'
has disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_l_talocrural' containerField='joints'
has disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_l_talocrural' containerField='joints'
has disallowed attribute ulimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_r_talocrural' containerField='joints'
has disallowed attribute llimit='0 0 0', now omitted
[apply] *** HAnimJoint USE='hanim_r_talocrural' containerField='joints'
has disallowed attribute ulimit='0 0 0', now omitted
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply]
C:\Users\john\x3dschema\examples\KoreanCharacterMotionAnnexD01Jin.tidy.new.xml
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply] *** containerField mismatch - found it #3 containerField DEF=''
containerField='segments' expectedContainerField='segments'
[apply]
=======================================================================================================
[apply] HAnimHumanoid skeleton holds X3D4 HAnim2 triplets, HAnimJoint
(18) : HAnimSegment (18) : HAnimSite (0)
[apply]
=======================================================================================================
[apply] HAnimHumanoid DEF='hanim_AnnexD01Jin name='AnnexD01Jin' loa='-1'
[apply] humanoid_root : sacrum
[apply] sacroiliac : pelvis
[apply] l_hip : l_thigh
[apply] | l_knee : l_calf
[apply] | l_talocrural : l_talus
[apply] | l_metatarsophalangeal_2 :
l_tarsal_proximal_phalanx_2
[apply] r_hip : r_thigh
[apply] | r_knee : r_calf
[apply] | r_talocrural : r_talus
[apply] | r_metatarsophalangeal_2 :
r_tarsal_proximal_phalanx_2
[apply] vl5 : l5
[apply] skullbase : skull
[apply] l_shoulder : l_upperarm
[apply] | l_elbow : l_forearm
[apply] | l_radiocarpal : l_carpal
[apply] r_shoulder : r_upperarm
[apply] r_elbow : r_forearm
[apply] r_radiocarpal : r_carpal
[apply]
=======================================================================================================
[apply] END
C:\Users\john\x3dschema\examples\KoreanCharacterMotionAnnexD01Jin.x3d
BUILD SUCCESSFUL
Total time: 3 seconds
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20231026/284eb95c/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TidyIssues.zip
Type: application/zip
Size: 154984 bytes
Desc: not available
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20231026/284eb95c/attachment-0001.zip>
More information about the x3d-public
mailing list