[X3D-Ecosystem] x3dpsail.py

John Carlson yottzumm at gmail.com
Wed Aug 13 23:03:59 PDT 2025


Don, let me try to clarify, I use x3dpsail.py as the file which loads
X3DJSAIL into GraalPy.  It’s not another API or package, it’s a binding.

The original x3dpsail.py dates from before x3d.py, remember when I was
working on the pyjnius python interface to X3DJSAIL, for example, here:
https://github.com/carlsonsolutiondesign/x3dpsail/blob/master/x3dpsail.py

Obviously, I don’t want to quibble about any x3d trademarks.  I suggest
that I rename the file to ex3d.py or ex3dpsail.py?  Maybe you should talk
to AMD about trademarks?   I’m not making any money off any names.

Also recall that I gave up the original x3d python package name that I
registered.  I can be gracious.   There’s no registered x3dpsail package
that I know of, so there’s no confusion.  If you care to look at my
x3dpsail.py now, you will see bunch of references to Java code bindings.
There’s no science to it.  What I’m trying to say is, it’s impossible to
use x3dpsail.py without X3DJSAIL.   There’s not going to be an official
python package, unless web3d supports it.

Anyway, x3dpsail.py  sits on top of X3DJSAIL, hence it’s aptly named.  I
found commercially supported python on top of the JVM.   Getting off
pyjnius and onto GraalPy was a great move, and Java’s XML handling is as
good as python’s.   I can’t say that GraalPy’s python packages have great
XML support on Windows.  Maybe more recently.

Can I read any encoding into x3d.py yet?  Can I produce good JSON from
x3d.py?  That’s why I continue to push  X3DJSAIL, and languages related to
Java.  X3DJSAIL’s ability to validate DOM remains key to validating X3D
JSON with XML schema, X3DJSAIL and eventually schematron.  Also, X3DJSAIL’s
JSON stylesheets are great!

Pretty much whatever you want me to do is ok, it’s going to be confusing if
google continues to refer to X3DPSAIL’s GitHub repository as outdated
code.  Obviously you want to point to the python x3d package on sourceforge.

What I really wanted was a way to distinguish the GraalPy’s X3Dautoclass.py
from Pyjnius’.   So I gave it an “unused” filename that was familiar.  I
can go back to autoclass, if desired, since Pyjnius is retired.   I needed
a way to distinguish GraalPy from Pyjnius so people wouldn’t confuse the
files.  x3dpsail.py was unused at the time.   So great, you’re arguing
about a filename.

I think you would agree that X3DJSAIL is preferred over x3d.py?

Do you want me to remove the X3D trademark from everything?  Just plainly
state that.

John

On Wed, Aug 13, 2025 at 10:43 PM Don Brutzman <don.brutzman at gmail.com>
wrote:

> John, thanks for all efforts but am not sure what you are doing.  It is
> not a good idea to call a different codebase exactly the same name as the
> original.
>
> Perhaps yours is a different fork?  Or something quite different?  Please
> come up with a different way to refer to it.
>
> The original X3DPSAIL x3d.py remains available as follows.  It is
> currently up to date, with further modifications possible in September.
> Each release goes through an extensive testing and review process.
>
>    - Python X3D Package x3d.py
>    - X3D Python Scene Access Interface Library (X3DPSAIL)
>    - https://www.web3d.org/x3d/stylesheets/python/python.html
>    - https://pypi.org/project/x3d
>    - latest release 15 JAN 2025, exactly matching the X3D 4.0
>    Architecture International Standard (IS)
>
> If you have been working on any of the open TODO items listed on the
> X3DPSAIL page, I'll be happy to look at them when the spotlight of effort
> comes around again.
>
> Very respectfully yours, Don
>
> On Wed, Aug 13, 2025 at 6:11 PM John Carlson via X3D-Ecosystem <
> x3d-ecosystem at web3d.org> wrote:
>
>> I just discovered that x3dpsail.py could not be downloaded from a
>> X3DJSONLD 12,  here:
>> https://coderextreme.net/X3DJSONLD/src/main/html/responsive.html
>>
>> So I am making it available here:
>>
>>
>> https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/graalpy/net/coderextreme/data/x3dpsail.py
>>
>>
>> This is for use with GraalVM’s GraalPy, available here:
>>
>> https://github.com/oracle/graalpython/releases/tag/graal-24.2.2
>>
>> I use this version:
>>
>> graalpy-community-jvm-24.2.2-windows-amd64.zip
>> <https://github.com/oracle/graalpython/releases/download/graal-24.2.2/graalpy-community-jvm-24.2.2-windows-amd64.zip>
>>
>> The JVM is for accessing Java code (X3DJSAIL).
>>
>> Apologies for the oversight.
>>
>> I will publish a blog post.
>>
>> John
>> --
>> X3D-Ecosystem mailing list
>> X3D-Ecosystem at web3d.org
>> http://web3d.org/mailman/listinfo/x3d-ecosystem_web3d.org
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-ecosystem_web3d.org/attachments/20250814/5e7135ac/attachment-0001.html>


More information about the X3D-Ecosystem mailing list