<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>I cannot compile X3DJSAIL, because Saxon is missing from the classpath. See:</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>org/web3d/x3d/jsail/Core/X3DObject.java</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><span style='color:red'>import net.sf.saxon.s9api.*;<o:p></o:p></span></p><p class=MsoNormal><span style='color:red'><o:p> </o:p></span></p><p class=MsoNormal>Also line 745 of CreateX3dSceneAccessInterfaceJava.xslt.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>There are other references to Saxon classes. Perhaps it would be best to catch a generic Exception, or a superclass of SaxonApiException??? I will look into that. Sounds like a good approach.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>This is why I want to separate the Saxon import from the rest of the code, so I can compile without Saxon.</p><p class=MsoNormal> </p><p class=MsoNormal>I cannot translate Saxon code to JSweet JavaScript…the task is too difficult—I’ve already tried it once.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Please seriously consider my request.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>If you can provide a Saxon alternative on the browser client, I would be for that. So far, Saxon-CE doesn’t work.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Moving XSLT/Saxon imports to a subclass, or everything else to a superclass would be desirable.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>This is for the TypeScript/JavaScript port.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Thanks,</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:brutzman@nps.edu">Don Brutzman</a><br><b>Sent: </b>Thursday, June 1, 2017 11:39 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: X3DObjectUtil for X3DJSAIL</p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>The x3djsail.classes.jar only has X3DJSAIL classes and stylesheets, not Saxon... in fact, not finding Saxon in the full.jar either</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal> http://www.web3d.org/specifications/java/X3DJSAIL.html#Downloads</p><p class=MsoNormal> </p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal> X3DJSAIL.3.3.classes.jar (~8MB)</p><p class=MsoNormal> http://www.web3d.org/specifications/java/jars/X3DJSAIL.3.3.classes.jar</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal> X3DJSAIL.3.3.full.jar source, documentation, etc. (~24MB)</p><p class=MsoNormal> http://www.web3d.org/specifications/java/jars/X3DJSAIL.3.3.full.jar</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>If you try to invoke Saxon without classpath, you get some sort of "class not found" exception.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>We could make the code a bit smarter to give an informed exception "Saxon not available, cannot apply XSLT stylesheet transformation" instead, acting more gracefully.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Anyway that is fine tuning. You should be good to go without saxon already.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>p.s. G'day mate! 8)</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>On 5/31/2017 4:26 PM, John Carlson wrote:</p><p class=MsoNormal>> What we could do is subclass X3DObject and put all XSLT/Saxon related stuff in there...probably too late now. Sorry I didn't mention it sooner. Or we could superclass X3DObject and move all non-XSLT/Saxon stuff up. Basically, I'd like to create a distribution without Saxon.</p><p class=MsoNormal>> </p><p class=MsoNormal>> Thanks!</p><p class=MsoNormal>> </p><p class=MsoNormal>> John</p><p class=MsoNormal>> </p><p class=MsoNormal>> John</p><p class=MsoNormal>> </p><p class=MsoNormal>> On May 29, 2017 11:41 AM, "John Carlson" <yottzumm@gmail.com <mailto:yottzumm@gmail.com>> wrote:</p><p class=MsoNormal>> </p><p class=MsoNormal>> I am just trying to think what to do before release, and Saxon is a big stumbling block for jsweet.</p><p class=MsoNormal>> </p><p class=MsoNormal>> John</p><p class=MsoNormal>> </p><p class=MsoNormal>> On May 29, 2017 1:39 AM, "Don Brutzman" <brutzman@nps.edu <mailto:brutzman@nps.edu>> wrote:</p><p class=MsoNormal>> </p><p class=MsoNormal>> On 5/28/2017 8:02 PM, John Carlson wrote:</p><p class=MsoNormal>> </p><p class=MsoNormal>> I wonder if It would be good to create an X3DObjectUtil.java and put the conversions in there.</p><p class=MsoNormal>> </p><p class=MsoNormal>> </p><p class=MsoNormal>> There is a utility class called org.web3d.x3d.jsail.ConfigurationProperties that collects a number of capabilities.</p><p class=MsoNormal>> </p><p class=MsoNormal>> http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/ConfigurationProperties.html <http://www.web3d.org/specifications/java/javadoc/org/web3d/x3d/jsail/ConfigurationProperties.html></p><p class=MsoNormal>> </p><p class=MsoNormal>> "Concrete class that enables developers to set custom configuration properties when using X3D Java SAI Library (X3DJSAIL). Output serialization support is provided for indentation, X3D Canonicalization (C14N) and showing default attributes. TODO more to follow!"</p><p class=MsoNormal>> </p><p class=MsoNormal>> That way we can deploy X3DObject.java with just the XML output and not the stylesheet(s).</p><p class=MsoNormal>> </p><p class=MsoNormal>> </p><p class=MsoNormal>> New methods handleArguments and validationReport were put in X3DObject because they would tend to be used there.</p><p class=MsoNormal>> </p><p class=MsoNormal>> Will thinking about splitting off a separate utilities class if needed at some point. So far am getting good traction by figuring out when/where functionality is needed and positioning it appropriately.</p><p class=MsoNormal>> </p><p class=MsoNormal>> That would make it easier to deploy to a browser, and browsers can offer alternate implementations of X3DObjectUtil.</p><p class=MsoNormal>> </p><p class=MsoNormal>> </p><p class=MsoNormal>> Not sure there are any impediments or blockers at this point?</p><p class=MsoNormal>> </p><p class=MsoNormal>> Not sure how many HTML browsers support Java, and existing X3D players with Java support tend to have their own concrete classes. (Xj3D has three actually, can be pretty confusing.)</p><p class=MsoNormal>> </p><p class=MsoNormal>> I've tried to keep X3DJSAIL as consistent as possible with X3D Java SAI, which is pretty old. Suggested changes for future specification work are collected at</p><p class=MsoNormal>> </p><p class=MsoNormal>> http://www.web3d.org/specifications/java/X3DJSAIL.html#SpecificationChanges <http://www.web3d.org/specifications/java/X3DJSAIL.html#SpecificationChanges></p><p class=MsoNormal>> </p><p class=MsoNormal>> http://www.web3d.org/specifications/java/X3dJavaSpecificationChangesAndIssues.txt <http://www.web3d.org/specifications/java/X3dJavaSpecificationChangesAndIssues.txt></p><p class=MsoNormal>> </p><p class=MsoNormal>> Let me know what you think. I think it’s a good idea to be able to not be totally reliant on the stylesheets. Plus we can put other Utils there.</p><p class=MsoNormal>> </p><p class=MsoNormal>> </p><p class=MsoNormal>> Other implementation is always welcome. I'll keep adjusting the stylesheets and checking results.</p><p class=MsoNormal>> </p><p class=MsoNormal>> Before working on duplicative functionality, it would be good to work on things that are needed. STL/PLY comes to mind, also X3D Projects Wish List.</p><p class=MsoNormal>> </p><p class=MsoNormal>> http://www.web3d.org/projects/wish-list <http://www.web3d.org/projects/wish-list></p><p class=MsoNormal>> </p><p class=MsoNormal>> For your patches, I'd like to keep iterating on representative content problems and adapting/integrating those corrections directly into the X3DJSAIL code autogeneration.</p><p class=MsoNormal>> </p><p class=MsoNormal>> Other utilities also welcome in this open-source asset. X3DJSAIL wish list is found at</p><p class=MsoNormal>> </p><p class=MsoNormal>> http://www.web3d.org/specifications/java/X3DJSAIL.html#TODO <http://www.web3d.org/specifications/java/X3DJSAIL.html#TODO></p><p class=MsoNormal>> </p><p class=MsoNormal>> Future libraries will include Efficient XML Interchange (EXI) compression (OpenEXI and EXIficient), XML encryption and signature, X3D Canonicalization (C14N), etc. etc. It would be good to apply jgeom.jar for NURBS too.</p><p class=MsoNormal>> </p><p class=MsoNormal>> all the best, Don</p><p class=MsoNormal>> -- </p><p class=MsoNormal>> Don Brutzman Naval Postgraduate School, Code USW/Br brutzman@nps.edu <mailto:brutzman@nps.edu></p><p class=MsoNormal>> Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA +1.831.656.2149 <tel:%2B1.831.656.2149></p><p class=MsoNormal>> X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman <http://faculty.nps.edu/brutzman></p><p class=MsoNormal>> </p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>all the best, Don</p><p class=MsoNormal>-- </p><p class=MsoNormal>Don Brutzman Naval Postgraduate School, Code USW/Br brutzman@nps.edu</p><p class=MsoNormal>Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA +1.831.656.2149</p><p class=MsoNormal>X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman</p><p class=MsoNormal><o:p> </o:p></p></div></body></html>