<div dir="ltr">John, there is no PythonSerializer.js in X3DJSAIL.<br><div><br></div><div>X3DJSAIL offers several ways to create corresponding Python source:</div><div><ul><li>command-line invocation -toPython</li><li><a href="https://www.web3d.org/specifications/java/X3DJSAIL.html#CLASSPATH">https://www.web3d.org/specifications/java/X3DJSAIL.html#CLASSPATH</a></li><li>example invocation in HelloWorldProgram.java:</li><li><a href="https://www.web3d.org/specifications/java/examples/HelloWorldProgram.java">https://www.web3d.org/specifications/java/examples/HelloWorldProgram.java</a></li></ul></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote"><font face="monospace">ConfigurationProperties.setXsltEngine(ConfigurationProperties.XSLT_ENGINE_SAXON); // default</font></blockquote></div></div><div><div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote"><font face="monospace">System.out.println ("Create Python source of model using stylesheet " + ConfigurationProperties.STYLESHEET_PYTHON);</font></blockquote></div></div><div><div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote"><font face="monospace">savedFileName = thisSceneName + X3D.FILE_EXTENSION_PYTHON;</font></blockquote></div></div><div><div><blockquote style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex" class="gmail_quote"><font face="monospace">savedFile = x3dModel.toFilePython(savedFileName);</font></blockquote></div></div></blockquote><div><ul><li>example output </li><li><a href="https://www.web3d.org/specifications/java/examples/HelloWorldProgramOutput.py">https://www.web3d.org/specifications/java/examples/HelloWorldProgramOutput.py</a></li></ul><div>and</div></div><div><ul><li>X3DJSAIL Conversions</li><li><a href="https://www.web3d.org/specifications/java/X3DJSAIL.html#Conversions">https://www.web3d.org/specifications/java/X3DJSAIL.html#Conversions</a></li></ul></div><div><ul><li>X3DJSAIL Utility Methods and Functionality</li><li><a href="https://www.web3d.org/specifications/java/X3DJSAIL.html#UtilityMethods">https://www.web3d.org/specifications/java/X3DJSAIL.html#UtilityMethods</a> - scroll down to see</li></ul></div><div><ul><li>X3D object methods <i>.toFilePython(String filename) </i>and .<i>toStringPython()</i></li><li><a href="https://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3D.html#toFilePython-java.lang.String-">https://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3D.html#toFilePython-java.lang.String-</a></li><li><a href="https://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3D.html#toStringPython()">https://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/X3D.html#toStringPython()</a></li></ul><div>These conversions operate by serializing the in-memory Java model to an X3D file, and then applying a conversion stylesheet.</div><div><ul><li><span style="color:rgb(53,56,51);font-family:"DejaVu Sans",Arial,Helvetica,sans-serif;font-size:14px">org.web3d.x3d.jsail.ConfigurationProperties.</span>STYLESHEET_PYTHON = "X3dToPython.xslt" </li><li><a href="https://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/ConfigurationProperties.html#STYLESHEET_PYTHON">https://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/ConfigurationProperties.html#STYLESHEET_PYTHON</a></li></ul></div></div><div>all the best, Don</div></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Thu, Jul 17, 2025 at 5:21 AM John Carlson via X3D-Ecosystem <<a href="mailto:x3d-ecosystem@web3d.org">x3d-ecosystem@web3d.org</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">I tried to resurrect a PythonSerializer for x3d.py. Alternatives may be a GraalPySerializer (programs use X3DJSAIL, or X3DJSAIL itself). I can use X3dToPython.xslt for XML to Python conversions.<div><br></div><div>John</div></div>
-- <br>
X3D-Ecosystem mailing list<br>
<a href="mailto:X3D-Ecosystem@web3d.org" target="_blank">X3D-Ecosystem@web3d.org</a><br>
<a href="http://web3d.org/mailman/listinfo/x3d-ecosystem_web3d.org" rel="noreferrer" target="_blank">http://web3d.org/mailman/listinfo/x3d-ecosystem_web3d.org</a><br>
</blockquote></div>