<html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
</head>
<body>
<p>This is a repeat. I only saw ProtoBody setter isinstance error
when running python generated from the X3D archives from
sourceforge.</p>
<p>If you like, I can download a python file from the website?
Okay!<br>
</p>
<div class="moz-cite-prefix">On 8/24/21 10:41 PM, Brutzman, Donald
(Don) (CIV) wrote:<br>
</div>
<blockquote type="cite"
cite="mid:BY3PR13MB4884AA7AD9001CFBC2190134C4C69@BY3PR13MB4884.namprd13.prod.outlook.com">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<meta name="Generator" content="Microsoft Word 15 (filtered
medium)">
<style>@font-face
{font-family:Wingdings;
panose-1:5 0 0 0 0 0 0 0 0 0;}@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
{mso-style-priority:34;
margin-top:0in;
margin-right:0in;
margin-bottom:0in;
margin-left:.5in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}p.msonormal0, li.msonormal0, div.msonormal0
{mso-style-name:msonormal;
mso-margin-top-alt:auto;
margin-right:0in;
mso-margin-bottom-alt:auto;
margin-left:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}span.EmailStyle18
{mso-style-type:personal;
font-family:"Calibri",sans-serif;
color:windowtext;}span.EmailStyle19
{mso-style-type:personal-compose;
font-family:"Calibri",sans-serif;
color:windowtext;}.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri",sans-serif;}div.WordSection1
{page:WordSection1;}ol
{margin-bottom:0in;}ul
{margin-bottom:0in;}</style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<div class="WordSection1">
<p class="MsoNormal">John, we have a lot of simple prototypes
and prototypes with embedded Script nodes in the archives that
have all tested OK.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">If your example is that Rubiks’s cube with
nested prototypes, that is harder. We believe the spec is OK
but that feature is only occasionally demonstrated as
working. Any model with nested prototypes (ProtoDeclare
within ProtoDeclare) can be easily refactored by putting all
of the ProtoDeclare blocks first. Similarly it makes sense to
test individual ProtoInstance nodes without feeding them
nested ProtoInstance fields.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Looking at existing examples is also good
because they have passed through validation. Step by step.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<ul style="margin-top:0in" type="disc">
<li class="MsoListParagraph"
style="margin-left:0in;mso-list:l0 level1 lfo1"><a
href="https://www.web3d.org/x3d/content/examples/X3dResources.html#Examples"
moz-do-not-send="true">https://www.web3d.org/x3d/content/examples/X3dResources.html#Examples</a><o:p></o:p></li>
</ul>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Once again sorry I can’t pursue “deep dive”
excursions at this time. Am working on (a) X3D architecture
Mantis editorial issues, (b) DIS protocol implementation
open-dis7-java, upgraded DIS support in Xj3D, and just tonight
got X3D-Edit building despite issues with a very old laptop.
Step by step.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><b>From:</b> x3d-public
<a class="moz-txt-link-rfc2396E" href="mailto:x3d-public-bounces@web3d.org"><x3d-public-bounces@web3d.org></a> <b>On Behalf Of
</b>John Carlson<br>
<b>Sent:</b> Tuesday, August 24, 2021 7:48 PM<br>
<b>To:</b> Joseph D Williams <a class="moz-txt-link-rfc2396E" href="mailto:joedwil@earthlink.net"><joedwil@earthlink.net></a><br>
<b>Cc:</b> X3D Graphics public mailing list
<a class="moz-txt-link-rfc2396E" href="mailto:x3d-public@web3d.org"><x3d-public@web3d.org></a><br>
<b>Subject:</b> Re: [x3d-public] Fwd: Next, in Python news...<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<div>
<p class="MsoNormal">Yes, you need to ‘’’pip install
x3d’’’<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">before running the provided script in
previous message. See link previously posted by Joe.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">Thanks for confirmation of received
message.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">The header is the top of the file.
If you don’t want to run my code, convert your own proto
xml to python using X3dToPython.xslt. I don’t have a
JSON converter for this test.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">The main purpose is to get proper
implementation of Protos in pure python. I’m guessing
it may be a wider problem with x3d.py, because when I
patched Protos in my version, there were further issues.
So simply patching Protos won’t fix all the issues.
A full roundtrip XML -> python -> XML needs to be
done for the archive.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I’ve freed up some time to work on
python, and I plan to start work on a test suite soon.
It would be good to get past my initial issues with the
package. I can reattempt to modify the x3d package
generator, but that doesn’t mean my patches will be
available when I am done. It still needs to go
through official channels.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">If you’re fed up with stylesheets, I
can offer a solution, but it’s not as elegant or
pythonic and uses Java. As far as I can tell, XSLT is
the declarative transformer of choice for XML.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">The main thing I think needs to be
done is handle cases where parameters and classes have
the same case sensitive name.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">If people want to contribute to
x3d.py project, now’s your chance. I’m fairly sure the
python binding needs to be standardized.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I know pretty much everyone has been
covidized.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">After spinning up python, I’ll return
to C++ if there’s enough code separated from the
standard.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">John<o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Tue, Aug 24, 2021 at 8:55 PM
Joseph D Williams <<a
href="mailto:joedwil@earthlink.net"
target="_blank" moz-do-not-send="true">joedwil@earthlink.net</a>>
wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC
1.0pt;padding:0in 0in 0in
6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<div>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">#
Now available: developmental python x3d.py
package on PyPi for import.<o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">#
This approach greatly simplifies Python X3D
deployment and use.<o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">#
<a
href="https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpypi.org%2Fproject%2Fx3d&data=04%7C01%7Cbrutzman%40nps.edu%7C72693df0fce44ec3ba3408d96772eba5%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C637654565985912019%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=Sw68kSJJKNZaBcGFk4Up3toP5CkFxSgiUQASR49Cfos%3D&reserved=0"
target="_blank" moz-do-not-send="true">
https://pypi.org/project/x3d</a><o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">The
text got here as attachment<o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Joe<o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<div style="border:none;border-top:solid #E1E1E1
1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><b>From:
</b><a href="mailto:yottzumm@gmail.com"
target="_blank" moz-do-not-send="true">John
Carlson</a><br>
<b>Sent: </b>Tuesday, August 24, 2021 3:00 PM<br>
<b>To: </b><a href="mailto:brutzman@nps.edu"
target="_blank" moz-do-not-send="true">Don
Brutzman</a>; <a
href="mailto:x3d-public@web3d.org"
target="_blank" moz-do-not-send="true">
X3D Graphics public mailing list</a><br>
<b>Subject: </b>[x3d-public] Fwd: Next, in
Python news...<o:p></o:p></p>
</div>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Resend
of non-working python code. No rush, I
don’t want anyone to be surprised. I do want
someone to confirm receipt of email. I’m
guessing things are going to spam?<o:p></o:p></p>
<p class="MsoNormal"
style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</body>
</html>