<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;}
@font-face
{font-family:Consolas;
panose-1:2 11 6 9 2 2 4 3 2 4;}
@font-face
{font-family:inherit;}
/* 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;}
pre
{mso-style-priority:99;
mso-style-link:"HTML Preformatted Char";
margin:0in;
margin-bottom:.0001pt;
font-size:10.0pt;
font-family:"Courier New";}
span.HTMLPreformattedChar
{mso-style-name:"HTML Preformatted Char";
mso-style-priority:99;
mso-style-link:"HTML Preformatted";
font-family:"Courier New";}
span.typ
{mso-style-name:typ;}
span.pln
{mso-style-name:pln;}
span.pun
{mso-style-name:pun;}
span.kwd
{mso-style-name:kwd;}
span.com
{mso-style-name:com;}
span.lit
{mso-style-name:lit;}
.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>From the link:</p><p class=MsoNormal><o:p> </o:p></p><div><pre style='background:#EFF0F1;vertical-align:baseline'><span class=typ><span style='font-family:"inherit",serif;color:#2B91AF;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>TransformerFactory</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> transFact </span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>=</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=typ><span style='font-family:"inherit",serif;color:#2B91AF;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>TransformerFactory</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>.</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>newInstance</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>();</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'><o:p></o:p></span></span></pre><pre style='background:#EFF0F1;vertical-align:baseline'><span class=typ><span style='font-family:"inherit",serif;color:#2B91AF;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>StreamSource</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> xsltSource </span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>=</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=kwd><span style='font-family:"inherit",serif;color:#101094;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>new</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=typ><span style='font-family:"inherit",serif;color:#2B91AF;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>StreamSource</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>(</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>xsl</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>);</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'><o:p></o:p></span></span></pre><pre style='background:#EFF0F1;vertical-align:baseline'><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'><o:p> </o:p></span></span></pre><pre style='background:#EFF0F1;vertical-align:baseline'><span class=com><span style='font-family:"inherit",serif;color:#858C93;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>// XXX for 'xsl:import' to load other xsls from class path</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'><o:p></o:p></span></span></pre><pre style='background:#EFF0F1;vertical-align:baseline'><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>transFact</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>.</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>setURIResolver</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>(</span></span><span class=kwd><span style='font-family:"inherit",serif;color:#101094;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>new</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=typ><span style='font-family:"inherit",serif;color:#2B91AF;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>ClasspathResourceURIResolver</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>());</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'><o:p></o:p></span></span></pre><pre style='background:#EFF0F1;vertical-align:baseline'><span class=typ><span style='font-family:"inherit",serif;color:#2B91AF;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>Templates</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> cachedXSLT </span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>=</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> transFact</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>.</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>newTemplates</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>(</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>xsltSource</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>);</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'><o:p></o:p></span></span></pre><pre style='background:#EFF0F1;vertical-align:baseline'><span class=typ><span style='font-family:"inherit",serif;color:#2B91AF;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>Transformer</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> transformer </span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>=</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> cachedXSLT</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>.</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>newTransformer</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>();</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'><o:p></o:p></span></span></pre><pre style='background:#EFF0F1;vertical-align:baseline'><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'><o:p> </o:p></span></span></pre><pre style='background:#EFF0F1;vertical-align:baseline'><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'><o:p> </o:p></span></span></pre><pre style='background:#EFF0F1;vertical-align:baseline'><span class=kwd><span style='font-family:"inherit",serif;color:#101094;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>class</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=typ><span style='font-family:"inherit",serif;color:#2B91AF;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>ClasspathResourceURIResolver</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=kwd><span style='font-family:"inherit",serif;color:#101094;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>implements</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=typ><span style='font-family:"inherit",serif;color:#2B91AF;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>URIResolver</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>{</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'><o:p></o:p></span></span></pre><pre style='background:#EFF0F1;vertical-align:baseline'><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=lit><span style='font-family:"inherit",serif;color:#7D2727;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>@Override</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'><o:p></o:p></span></span></pre><pre style='background:#EFF0F1;vertical-align:baseline'><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=kwd><span style='font-family:"inherit",serif;color:#101094;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>public</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=typ><span style='font-family:"inherit",serif;color:#2B91AF;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>Source</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> resolve</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>(</span></span><span class=typ><span style='font-family:"inherit",serif;color:#2B91AF;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>String</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> href</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>,</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=typ><span style='font-family:"inherit",serif;color:#2B91AF;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>String</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=kwd><span style='font-family:"inherit",serif;color:#101094;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>base</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>)</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=kwd><span style='font-family:"inherit",serif;color:#101094;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>throws</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=typ><span style='font-family:"inherit",serif;color:#2B91AF;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>TransformerException</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>{</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'><o:p></o:p></span></span></pre><pre style='background:#EFF0F1;vertical-align:baseline'><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=kwd><span style='font-family:"inherit",serif;color:#101094;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>return</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=kwd><span style='font-family:"inherit",serif;color:#101094;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>new</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=typ><span style='font-family:"inherit",serif;color:#2B91AF;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>StreamSource</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>(</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>XXX</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>.</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>getClassLoader</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>().</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>getResourceAsStream</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>(</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>href</span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>));</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'><o:p></o:p></span></span></pre><pre style='background:#EFF0F1;vertical-align:baseline'><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'> </span></span><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>}</span></span><span class=pln><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'><o:p></o:p></span></span></pre><pre style='background:#EFF0F1;vertical-align:baseline'><span class=pun><span style='font-family:"inherit",serif;color:#303336;border:none windowtext 1.0pt;padding:0in;background:#EFF0F1'>}</span></span><span style='font-family:Consolas;color:#393318'><o:p></o:p></span></pre></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Not sure if this works in both Saxon and Java XSLT. You’ll have to experiment. You’ll also have to replace XXX.</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>Monday, September 4, 2017 12:24 AM<br><b>To: </b><a href="mailto:brutzman@nps.edu">Don Brutzman</a><br><b>Subject: </b>RE: More Object Model Work: indicating nodes and statementsforeachprofile within object model and X3DJSAIL</p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Here’s the link again. I think this will truly help if you look at some of the answers.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><a href="https://stackoverflow.com/questions/3699860/resolving-relative-paths-when-loading-xslt-files">https://stackoverflow.com/questions/3699860/resolving-relative-paths-when-loading-xslt-files</a><o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>But I’m not certain. If you can’t get there, I will try.<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>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>Sunday, September 3, 2017 11:43 PM<br><b>To: </b><a href="mailto:yottzumm@gmail.com">John Carlson</a><br><b>Subject: </b>Re: More Object Model Work: indicating nodes and statements foreachprofile within object model and X3DJSAIL<o:p></o:p></p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>On 9/3/2017 7:00 PM, John Carlson wrote:<o:p></o:p></p><p class=MsoNormal>> Again, you need to diagnose the imports in the stylesheet. See links previously provided to stack overflow (not in this message, I think).<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>understood, thanks.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>i refactored out a common method to perform a stylesheet invocation using jar .xslt as source that simplified most conversions. most are now working. added a primitive debug mode also.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>the problems with import is that the X3dToHtml documentation stylesheet also imports/invokes the SVG Extrusion crossSection stylesheet, which can't be found from inside the jar.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>unable to turn off that import via a passed-parameter switch. so i am considering refactoring and splitting that stylesheet, will invoke each separately where needed, this affects multiple other places that use the stylesheet.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>> You need a way to resolve imports in the stylesheet in Java, probably with a URI resolver. There may be different ways to do it for saxon and java xslt.<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> If you can’t solve it quick, let me know, and I will start looking at it.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>still in motion...<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>> Sent from Mail <https://go.microsoft.com/fwlink/?LinkId=550986> for Windows 10<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> *From: *Don Brutzman <mailto:brutzman@nps.edu><o:p></o:p></p><p class=MsoNormal>> *Sent: *Sunday, September 3, 2017 8:06 PM<o:p></o:p></p><p class=MsoNormal>> *To: *John Carlson <mailto:yottzumm@gmail.com><o:p></o:p></p><p class=MsoNormal>> *Subject: *Re: More Object Model Work: indicating nodes and statements for eachprofile within object model and X3DJSAIL<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> lotta work but slowly yielding... hopefully tonight.<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> On 8/31/2017 10:48 AM, John Carlson wrote:<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > Hmm. Do you have the path in the jar in the java, or is there no path?<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>> > On Aug 31, 2017 1:42 PM, "Don Brutzman" <brutzman@nps.edu<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu>> wrote:<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>> > yes i've done that but think that it is not being referenced properly...<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > jar issue, TODO diagnose/fix.<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>> > On 8/31/2017 9:33 AM, John Carlson wrote:<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>> > Well depending on where you run the main<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > Java file from, it will either find or not find the stylesheets. My<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > suggestion was to put the stylesheet in the jar and access it through<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > the class loader through a class, probably x3dobject.<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>> > John<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>> > On Aug 31, 2017 10:53 AM, "Don Brutzman" <brutzman@nps.edu<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu> <mailto:brutzman@nps.edu<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu>>> wrote:<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>> > Right, that's good. "Common sense" check is helpful to make sure<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > that things are understandable. Thanks John.<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>> > Am finally ready to re-look at the .jar problem you had a few<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > weeks ago, please help recenter me. I didn't understand properly before.<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>> > p.s. still having some intermittent trouble accessing stylesheets<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > within the classpath .jar as well. Am shifting to a new computer so<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > that reveals both issues and occasionally new mysteries.<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>> ><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > On 8/31/2017 12:50 AM, John Carlson wrote:<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>> > I didn't check anything but the syntax, content I didn't check.<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>> > John<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>> ><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > On Aug 31, 2017 3:48 AM, "Don Brutzman" <brutzman@nps.edu<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu> <mailto:brutzman@nps.edu<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu>> <mailto:brutzman@nps.edu<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu> <mailto:brutzman@nps.edu<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu>>>> wrote:<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>> > On 8/30/2017 10:23 AM, John Carlson wrote:<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>> > Looks okay to me.<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>> ><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > Thanks for double checks.<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>> > On Aug 30, 2017 12:47 PM, "Don Brutzman"<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <brutzman@nps.edu <mailto:brutzman@nps.edu> <mailto:brutzman@nps.edu<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu>><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu <mailto:brutzman@nps.edu><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu <mailto:brutzman@nps.edu>>><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu <mailto:brutzman@nps.edu><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu <mailto:brutzman@nps.edu>><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu <mailto:brutzman@nps.edu><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu <mailto:brutzman@nps.edu>>>>> wrote:<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>> > OK, have amended X3D XML Schema to include<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > allowed nodes under<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > each profile. Also added allowed X3D statements<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > under Core profile.<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>> > Documentation at<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3_profileNames.html#LinkDC<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3_profileNames.html#LinkDC><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3_profileNames.html#LinkDC<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3_profileNames.html#LinkDC>><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>> > <http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3_profileNames.html#LinkDC<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3_profileNames.html#LinkDC><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3_profileNames.html#LinkDC<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3_profileNames.html#LinkDC>>><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>> > <http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3_profileNames.html#LinkDC<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3_profileNames.html#LinkDC><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3_profileNames.html#LinkDC<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3_profileNames.html#LinkDC>><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>> > <http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3_profileNames.html#LinkDC<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3_profileNames.html#LinkDC><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3_profileNames.html#LinkDC<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/X3dSchemaDocumentation3.3/x3d-3.3_profileNames.html#LinkDC>>>><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>> ><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>> > Next: have extracted these node and statement<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > lists for inclusion<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > in the X3D Unified Object Model profile information.<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>> > Result excerpt follows. Please look at syntax,<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > hope it looks OK.<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > As this gets integrated, will next apply by generating<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > profile-validation tests in source code for<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > X3DJSAIL.[...]<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>> ><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > OK have taken the next step: added validation of profile<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > and component<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > information for each node in the respective validate()<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > 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>> <o:p></o:p></p><p class=MsoNormal>> > Example excerpt from AnchorObject follows, where<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > Anchor-specific values<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > for profiles/component/level get plugged in from entries in<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > X3DObjectModel-3.3.xml:<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>> > // profile validation test, if connected to full scene<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > if (findAncestorX3DObject() != null)<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>> > String modelProfile =<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > findAncestorX3DObject().getProfile();<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > headObject modelHead =<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > findAncestorX3DObject().getHead();<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > ArrayList<componentObject> sceneComponentsList =<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > new ArrayList<>();<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > if (modelHead != null)<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > sceneComponentsList =<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > modelHead.getComponentList();<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > boolean hasSatisfactoryComponent = false;<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > for (componentObject nextComponent :<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > sceneComponentsList)<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>> > if (<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > nextComponent.getName().equals("Networking") &&<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > (nextComponent.getLevel() >= 2))<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > hasSatisfactoryComponent = true;<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>> > if (!hasSatisfactoryComponent &&<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > !modelProfile.equals("CADInterchange") &&<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > !modelProfile.equals("Interactive") &&<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > !modelProfile.equals("Immersive") &&<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > !modelProfile.equals("MedicalInterchange") &&<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > !modelProfile.equals("MPEG4Interactive") &&<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > !modelProfile.equals("Full"))<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>> > String errorNotice =<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > ConfigurationProperties.ERROR_ILLEGAL_VALUE +<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > ": invalid X3D profile='" +<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > getContainerFieldOverride() +<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > "' for parent X3D model, add element<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <componentInfo name='Networking' level='2'/> or<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > assignment " +<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>> ><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > findAncestorX3DObject().getHead().addComponentInfo(\"Networking\").setLevel(2);";<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > validationResult.append(errorNotice).append("\n");<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > throw new<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > InvalidFieldException(errorNotice); // report error<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>> > }<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>> > Tested satisfactorily on HelloWorldProgram.java which indeed<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > self-diagnosed itself to reveal a missing component entry<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > for Layering<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > level 1.<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>> > Test program runs satisfactorily, a few other quirks<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > appear to be<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > adjusted/fixed. Now running recently released Java JDK<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > version "1.8.0_141".<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>> > Updates now uploading, autogeneration stylesheet changes<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > and smoke tests<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > checked in, this new release should be available in about<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > an hour.<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>> > http://www.web3d.org/specifications/java/X3DJSAIL.html<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/java/X3DJSAIL.html><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/java/X3DJSAIL.html<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/java/X3DJSAIL.html>><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/java/X3DJSAIL.html<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/java/X3DJSAIL.html><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/java/X3DJSAIL.html<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://www.web3d.org/specifications/java/X3DJSAIL.html>>><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>> > Looking things over, will probably add class constants<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > for minimum<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > COMPONENT and LEVEL later to simplify programmer access.<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>> ><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<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > USW/Br brutzman@nps.edu <mailto:brutzman@nps.edu><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu <mailto:brutzman@nps.edu>><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu <mailto:brutzman@nps.edu><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu <mailto:brutzman@nps.edu>>><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > +1.831.656.2149 <tel:%2B1.831.656.2149> <tel:%2B1.831.656.2149><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <tel:%2B1.831.656.2149><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > X3D graphics, virtual worlds, navy robotics<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > http://faculty.nps.edu/brutzman <http://faculty.nps.edu/brutzman><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://faculty.nps.edu/brutzman <http://faculty.nps.edu/brutzman>><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://faculty.nps.edu/brutzman <http://faculty.nps.edu/brutzman><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > <http://faculty.nps.edu/brutzman <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><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>> ><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>> ><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>> <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>> <o:p></o:p></p><p class=MsoNormal>> > <mailto:brutzman@nps.edu><o:p></o:p></p><p class=MsoNormal>> <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>> <o:p></o:p></p><p class=MsoNormal>> > <tel:%2B1.831.656.2149><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > X3D graphics, virtual worlds, navy robotics<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> > http://faculty.nps.edu/brutzman <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><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>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>