<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@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;}
/* Style Definitions */
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:#954F72;
        text-decoration:underline;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style></head><body lang=EN-US link=blue vlink="#954F72"><div class=WordSection1><p class=MsoNormal>For example, Look at the MFStringObjects in this file.  First off, they aren’t arrays.  Secondly, they have a awful lot of \’s</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>John</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Sent from <a href="https://go.microsoft.com/fwlink/?LinkId=550986">Mail</a> for Windows 10</p><p class=MsoNormal><o:p> </o:p></p><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal style='border:none;padding:0in'><b>From: </b><a href="mailto:yottzumm@gmail.com">John Carlson</a><br><b>Sent: </b>Tuesday, May 23, 2017 12:56 AM<br><b>To: </b><a href="mailto:brutzman@nps.edu">Don Brutzman</a><br><b>Cc: </b><a href="mailto:x3d-public@web3d.org">X3D Graphics public mailing list</a><br><b>Subject: </b>RE: X3DJSAIL: Interesting exception, but it could be my fault.Re:CommentsBlock.</p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Don, be sure the quotes, escapes etc in the Java generated from these files is what we want.  Also test all the way through X3DJSAIL and compare X3D output to X3D input.<o:p></o:p></p><p class=MsoNormal><br>I gotta get something to eat.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Thanks,<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>John<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Attached.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Sent from <a href="https://go.microsoft.com/fwlink/?LinkId=550986">Mail</a> for Windows 10<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><div style='border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal><b>From: </b><a href="mailto:brutzman@nps.edu">Don Brutzman</a><br><b>Sent: </b>Monday, May 22, 2017 11:47 PM<br><b>To: </b><a href="mailto:yottzumm@gmail.com">John Carlson</a><br><b>Cc: </b><a href="mailto:x3d-public@web3d.org">X3D Graphics public mailing list</a><br><b>Subject: </b>Re: X3DJSAIL: Interesting exception, but it could be my fault. Re:CommentsBlock.<o:p></o:p></p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>On 5/21/2017 2:01 AM, Don Brutzman wrote:<o:p></o:p></p><p class=MsoNormal>> these are fixed but there is still a gap in the chain when nested protoypes occur.  not a CommentsBlock problem.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Those issues are now fixed.  Build report:  improved handling of ProtoInstance getNodeByDEF, getFieldType, getAccessType plus additional utility methods.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>=================================================================================================================<o:p></o:p></p><p class=MsoNormal>ProtoInstance utility methods<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/Core/ProtoInstanceObject.html#method.summary<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>hasExternProtoDeclare()<o:p></o:p></p><p class=MsoNormal>Determine whether a corresponding ExternProtoDeclare with same name is connected in this scene graph.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>hasProtoDeclare()<o:p></o:p></p><p class=MsoNormal>Determine whether a corresponding ProtoDeclare with same name is connected in this scene graph.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>getExternProtoDeclare()<o:p></o:p></p><p class=MsoNormal>Provide corresponding ExternProtoDeclare with same name if connected in this scene graph.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>getProtoDeclare()<o:p></o:p></p><p class=MsoNormal>Provide corresponding ProtoDeclare with same name if connected in this scene graph.<o:p></o:p></p><p class=MsoNormal>=================================================================================================================<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>As a result, test shows support is included for nested ProtoInstance nodes.  Example attached, updated X3DJSAIL deployed.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>These corrections fix some "false negative" warnings on ROUTEs in the archives.  I'll rerun all Java examples tonight to clean them up.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>> On 5/20/2017 7:02 PM, John Carlson wrote:<o:p></o:p></p><p class=MsoNormal>>> Have not triaged.  Code is attached.  And so is XML<o:p></o:p></p><p class=MsoNormal>>><o:p> </o:p></p><p class=MsoNormal>>> org.web3d.x3d.sai.InvalidProtoException: ExternProtoDeclare name='CameraShot' with field name='moves' cannot have any initial value (found "[org.web3d.x3d.jsail.Core.CommentsBlock@5cb0d902]"). Instead use ProtoInstance fieldValue to override the original default ProtoDeclare field value.<o:p></o:p></p><p class=MsoNormal>>><o:p> </o:p></p><p class=MsoNormal>>> org.web3d.x3d.sai.InvalidProtoException: ExternProtoDeclare name='CameraShot' with field name='moves' cannot have any initial value (found "[org.web3d.x3d.jsail.Core.CommentsBlock@5cb0d902]"). Instead use ProtoInstance fieldValue to override the original default ProtoDeclare field value.<o:p></o:p></p><p class=MsoNormal>>><o:p> </o:p></p><p class=MsoNormal>>>          at org.web3d.x3d.jsail.Core.ExternProtoDeclareObject.setFieldList(ExternProtoDeclareObject.java:331)<o:p></o:p></p><p class=MsoNormal>>><o:p> </o:p></p><p class=MsoNormal>>>          at org.web3d.x3d.jsail.Core.ExternProtoDeclareObject.validate(ExternProtoDeclareObject.java:842)<o:p></o:p></p><p class=MsoNormal>>><o:p> </o:p></p><p class=MsoNormal>>>          at org.web3d.x3d.jsail.Core.SceneObject.validate(SceneObject.java:626)<o:p></o:p></p><p class=MsoNormal>>><o:p> </o:p></p><p class=MsoNormal>>>          at org.web3d.x3d.jsail.Core.X3DObject.validate(X3DObject.java:1880)<o:p></o:p></p><p class=MsoNormal>>><o:p> </o:p></p><p class=MsoNormal>>>          at org.web3d.x3d.jsail.Core.X3DObject.toFileJSON(X3DObject.java:750)<o:p></o:p></p><p class=MsoNormal>>><o:p> </o:p></p><p class=MsoNormal>>>          at net.coderextreme.data.CameraExamples.main(CameraExamples.java:80)<o:p></o:p></p><p class=MsoNormal>>><o:p> </o:p></p><p class=MsoNormal>>> Exception in thread "main" org.web3d.x3d.sai.InvalidProtoException: ExternProtoDeclare name='CameraShot' with field name='moves' cannot have any initial value (found "[org.web3d.x3d.jsail.Core.CommentsBlock@5cb0d902]"). Instead use ProtoInstance fieldValue to override the original default ProtoDeclare field value.<o:p></o:p></p><p class=MsoNormal>>><o:p> </o:p></p><p class=MsoNormal>>>          at org.web3d.x3d.jsail.Core.ExternProtoDeclareObject.setFieldList(ExternProtoDeclareObject.java:331)<o:p></o:p></p><p class=MsoNormal>>><o:p> </o:p></p><p class=MsoNormal>>>          at org.web3d.x3d.jsail.Core.ExternProtoDeclareObject.validate(ExternProtoDeclareObject.java:842)<o:p></o:p></p><p class=MsoNormal>>><o:p> </o:p></p><p class=MsoNormal>>>          at org.web3d.x3d.jsail.Core.SceneObject.validate(SceneObject.java:626)<o:p></o:p></p><p class=MsoNormal>>><o:p> </o:p></p><p class=MsoNormal>>>         at org.web3d.x3d.jsail.Core.X3DObject.validate(X3DObject.java:1880)<o:p></o:p></p><p class=MsoNormal>>><o:p> </o:p></p><p class=MsoNormal>>>          at org.web3d.x3d.jsail.Core.X3DObject.toFileJSON(X3DObject.java:750)<o:p></o:p></p><p class=MsoNormal>>><o:p> </o:p></p><p class=MsoNormal>>>          at net.coderextreme.data.CameraExamples.main(CameraExamples.java:80)<o:p></o:p></p><p class=MsoNormal>>><o:p> </o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> all the best, Don<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>all the best, Don<o:p></o:p></p><p class=MsoNormal>-- <o:p></o:p></p><p class=MsoNormal>Don Brutzman  Naval Postgraduate School, Code USW/Br       brutzman@nps.edu<o:p></o:p></p><p class=MsoNormal>Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149<o:p></o:p></p><p class=MsoNormal>X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p></div></body></html>