<div dir="auto">I’m not prepared to handle USE before DEF. I’m going to have to take an inventory. This may seem slightly capricious, and I apologize for that. I am glad that people are taking a stance. I take stances too. The primary cause of the current problem is Holger’s x3d-tidy, from an engineering perspective. Will x3d-tidy produce USE before DEF for HAnimSegment MFNode and SFNode fields, please, then Java output from my serializers should work with X3DJSAIL XML output? Thanks! Author intent, please! Once this is fixed, the rest of the message re: x3d-tidy can be ignored.</div><div dir="auto"><br></div><div dir="auto">Blender doesn’t really handle HAnimDisplacer. Problem solved? I’ll make the move towards converting to glb prior to import. This seems to give good results. Better than I could do with X3D. Getting HAnimDisplacer working for .x3d to .glb is important.</div><div dir="auto"><br></div><div dir="auto">Voting for #3 means Michalis removes USE before DEF warning in Castle. I don’t want to have it pop up anymore. There might be a setting to turn it on.</div><div dir="auto"><br></div><div dir="auto">Is USE before DEF and DEF before USE undefined behavior? <span style="font-family:-apple-system,sans-serif;font-size:inherit">If the standard explicitly allows USE before DEF and DEF before USE, that would be a good thing. For v4.1?</span></div><div dir="auto"><br></div><div dir="auto">I will reduce usage and recommending of x3d-tidy in the short term for conversion to JSON, just to be safe. X3dToJson.xslt seems more reliable, fit better with X3DJSONLD, and I don’t have to worry about round trip issues with field reordering. This may mean disabling XML to JSON in the X3DJSONLD web page as I start loading facial animation models. I can reduce handling of XML files and only load JSON as produced by X3dToJson.xslt. When x3d-tidy supports USE before DEF on output, I’ll reconsider.</div><div dir="auto"><br></div><div dir="auto">My schema and serializers should still operate as normal, with X3dToJson.xslt output. I am planning a TruffleRuby release as I move away from Windows (JRuby is Windows-specific, I think). Clojure is up in the air, as I struggle to find a standard distribution.</div><div dir="auto"><br></div><div dir="auto">BTW, I at least got X3DJSAIL compilation mostly working on Bazzite, there seems to be an issue running ant inside NetBeans. Now to figure out how to run a JavaGUI and Sunrize inside a distrobox container. Hopefully, the x_ite build issues are cleaned up.</div><div dir="auto"><br></div><div dir="auto"><span style="font-family:-apple-system,sans-serif">John</span><br></div><div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Tue, May 5, 2026 at 3:36 PM John Carlson <<a href="mailto:yottzumm@gmail.com">yottzumm@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>Choices:</div><div><br></div><div>1. Canonicalize: Holger and John have to implement canonicalization</div><div><br></div><div>2. Fix DEF/USE ordering in X3DJSAIL and X3DPSAIL on XML output.</div><div><br></div><div>3. Allow USE before DEF.</div><div><br></div><div>4. Forget it and wait until the issue comes up, yet again! Let the next generation handle it.</div><div><br></div><div>5. Forget automation and fix things by hand.</div><div><br></div><div>Please choose 1, 2, 3, 4 and/or 5, or provide another choice. Not fixing 2 allows correct Java to be exported as USE before DEF in XML. Accepting #3 means #1 and #2 don't need fixing, but may have massive implications for a large body of software. We can actually fix all 3!</div><div><br></div><div>Recorded votes:</div><div><br></div><div>Don: #3</div><div><br></div><div>John: #1 and #2, but #2 before #1, because there are Java programners who may get surprised.</div><div><br></div><div>Doug: #2</div><div><br></div><div>Feel free to change your vote.</div><div><br></div><div>Thanks,</div><div><br></div><div>John</div></div>
</blockquote></div></div>