<html xmlns:v="urn:schemas-microsoft-com:vml" 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=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@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;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
font-size:11.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
span.EmailStyle22
{mso-style-type:personal-compose;
font-family:"Calibri",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:128207354;
mso-list-type:hybrid;
mso-list-template-ids:-2123212704 -1905207674 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l0:level1
{mso-level-start-at:0;
mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Symbol;
mso-fareast-font-family:Calibri;
mso-bidi-font-family:"Times New Roman";}
@list l0:level2
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Courier New";}
@list l0:level3
{mso-level-number-format:bullet;
mso-level-text:\F0A7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Wingdings;}
@list l0:level4
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Symbol;}
@list l0:level5
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Courier New";}
@list l0:level6
{mso-level-number-format:bullet;
mso-level-text:\F0A7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Wingdings;}
@list l0:level7
{mso-level-number-format:bullet;
mso-level-text:\F0B7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Symbol;}
@list l0:level8
{mso-level-number-format:bullet;
mso-level-text:o;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:"Courier New";}
@list l0:level9
{mso-level-number-format:bullet;
mso-level-text:\F0A7;
mso-level-tab-stop:none;
mso-level-number-position:left;
text-indent:-.25in;
font-family:Wingdings;}
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]-->
</head>
<body lang="EN-US" link="blue" vlink="purple" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal">Thanks for report. Not sure what change or problem you are reporting however. Further you mention Teapot but then show another example, Mooring Buoy. Hmmm.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I suspect that you are getting things like <span style="font-family:"Courier New";color:#B21818;background:white">
setDir("").setHttp_equiv("").setLang("").setScheme("") </span>because you do not have Saxon invocation set to strip default attribute values.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Excerpt from https://x3dgraphics.com/examples/X3dForAdvancedModeling/build.xml showing invocation parameters<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"> <!-- process individual files here. show full path to facilitate user loading, editing of reported files --><o:p></o:p></p>
<p class="MsoNormal"> <echo>${archive.path}/${relative.path1}/${relative.path2}/${name.short}.x3d converted to ${name.short}.java</echo><o:p></o:p></p>
<p class="MsoNormal"> <!-- Saxon10 is locally defined macro --><o:p></o:p></p>
<p class="MsoNormal"> <Saxon10 scene="${relative.path1}/${relative.path2}/${name.short}"<o:p></o:p></p>
<p class="MsoNormal"> stylesheet="${stylesheet.dir}/X3dToJava"<o:p></o:p></p>
<p class="MsoNormal"> parameterPair1="packageName=${archive.name}.${relative.path1}${relative.path2}"<o:p></o:p></p>
<p class="MsoNormal"> parameterPair2= "className=${name.short}"<o:p></o:p></p>
<p class="MsoNormal"> parameterPair3="includeLicense=true"<o:p></o:p></p>
<p class="MsoNormal"> suffix=""<o:p></o:p></p>
<p class="MsoNormal"> extension="java"<o:p></o:p></p>
<p class="MsoNormal"> expand="on"/><o:p></o:p></p>
<p class="MsoNormal"> <!-- expand:on since DTD defaults needed --><o:p></o:p></p>
<p class="MsoNormal"> <!-- <echo message="... compiling ${name.short}.java"/> --><o:p></o:p></p>
<p class="MsoNormal"> <javac srcdir="${relative.path1}/${relative.path2}/"<o:p></o:p></p>
<p class="MsoNormal"> includes="${name.short}.java"<o:p></o:p></p>
<p class="MsoNormal"> classpath="${x3djsail.stylesheets.dir}/${jsai.full.archive.jar.name}"<o:p></o:p></p>
<p class="MsoNormal"> destdir="${java.classes.dir}"<o:p></o:p></p>
<p class="MsoNormal"> debug="on"<o:p></o:p></p>
<p class="MsoNormal"> source="${java.source}"<o:p></o:p></p>
<p class="MsoNormal"> target="${java.target}"<o:p></o:p></p>
<p class="MsoNormal"> verbose="${javac.verbose}"<o:p></o:p></p>
<p class="MsoNormal"> failonerror="false"<o:p></o:p></p>
<p class="MsoNormal"> includeantruntime="false"><o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Anyway I’m not seeing what your seeing, here is my local test of Teapot:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">• https://x3dgraphics.com/examples/X3dForAdvancedModeling/GeometricShapes/TeapotIndex.html<o:p></o:p></p>
<p class="MsoNormal">• https://x3dgraphics.com/examples/X3dForAdvancedModeling/GeometricShapes/TeapotIndex.x3d<o:p></o:p></p>
<p class="MsoNormal">• https://x3dgraphics.com/examples/X3dForAdvancedModeling/GeometricShapes/TeapotIndex.java<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="mso-element:para-border-div;border-top:solid windowtext 1.0pt;border-left:none;border-bottom:solid windowtext 1.0pt;border-right:none;padding:1.0pt 0in 1.0pt 0in">
<p class="MsoNormal" style="border:none;padding:0in">ant -f C:\\x3d-code\\www.web3d.org\\x3d\\content\\examples\\X3dForAdvancedModeling processScenes.java<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">clean.RoundTrip:<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">ensuring any prior converted *RoundTrip*.* source files are cleaned out...<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">processScenes.java:<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Verifying Apache Ant XML Catalog resolver classpath: C:\apache-ant-1.10.11\lib/xml-resolver-1.2.jar (84091 bytes)<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">versions:<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">ant -version<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Apache Ant(TM) version 1.10.11 compiled on July 10 2021<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">java -version<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">openjdk version "16" 2021-03-16<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">OpenJDK Runtime Environment (build 16+36-2231)<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">OpenJDK 64-Bit Server VM (build 16+36-2231, mixed mode, sharing)<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">python -version<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Python 3.9.7<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">saxon -? help<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Saxon-HE 10.6J from Saxonica<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Usage: see http://www.saxonica.com/documentation/index.html#!using-xsl/commandline<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Format: net.sf.saxon.Transform options params<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Options available: -? -a -catalog -config -cr -diag -dtd -ea -expand -explain -export -ext -im -init -it -jit -l -lib -license -m -nogo -now -ns -o -opt -or -outval -p -quit -r -relocate -repeat -s -sa -scmin
-strip -t -T -target -TB -threads -TJ -Tlevel -Tout -TP -traceout -tree -u -val -versionmsg -warnings -x -xi -xmlversion -xsd -xsdversion -xsiloc -xsl -y --?<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Use -XYZ:? for details of option XYZ<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Params: <o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in"> param=value Set stylesheet string parameter<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in"> +param=filename Set stylesheet document parameter<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in"> ?param=expression Set stylesheet parameter using XPath<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in"> !param=value Set serialization parameter<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in"><o:p> </o:p></p>
<p class="MsoNormal" style="border:none;padding:0in"> ANT_HOME=C:\apache-ant-1.10.11<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">JAVA_HOME=C:\Program Files\Java\openjdk\jdk-16<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">PYTHONHOME=C:\Program Files\Python39<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">PYTHONPATH=C:\x3d-code\www.web3d.org\x3d\stylesheets\python\x3d<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Check for X3DJSAIL ${jsail.full.archive.jar.name} or X3DJSAIL.4.0.classes.jar<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">CLASSPATH=C:\x3d-code\www.web3d.org\x3d\stylesheets\java\jars\X3DJSAIL.4.0.full.jar;<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">javac source/target $java.source=1.8<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Java/JVM version $ant.java.version=16<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Java/JVM detail version $java.version=16<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Ant version $ant.version=Apache Ant(TM) version 1.10.11 compiled on July 10 2021<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Check for node.js installation from
<a href="https://nodejs.org">https://nodejs.org</a><o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">v14.17.6<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">lib/X3DJSAIL.4.0.full.jar -version<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">X3DJSAIL version date: 12 October 2021<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Configuration settings: <a href="https://savage.nps.edu/Savage/developers.html">
https://savage.nps.edu/Savage/developers.html</a><o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">===========================================<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">C:\x3d-code\www.web3d.org\x3d\content\examples\X3dForAdvancedModeling/GeometricShapes//Teapot.x3d converted to Teapot.java<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Compiling 1 source file to C:\x3d-code\www.web3d.org\x3d\content\examples\X3dForAdvancedModeling\classes<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">now run and validate the java model<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">java -classpath classes;../../../stylesheets/java/jars/X3DJSAIL.4.0.full.jar X3dForAdvancedModeling.GeometricShapes.Teapot<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">Java program "X3dForAdvancedModeling.GeometricShapes.Teapot" self-validation test results: success<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">===================================<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">echo.timestamp:<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">timestamp 01:36:46 on 19 November 2021<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">processScenes.java complete.<o:p></o:p></p>
<p class="MsoNormal" style="border:none;padding:0in">BUILD SUCCESSFUL (total time: 5 seconds)<o:p></o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Courier New""><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Courier New"">all the best, Don<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Courier New"">-- <o:p>
</o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Courier New"">Don Brutzman Naval Postgraduate School, Code USW/Br brutzman@nps.edu<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Courier New"">Watkins 270, MOVES Institute, Monterey CA 93943-5000 USA +1.831.656.2149<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Courier New"">X3D graphics, virtual worlds, navy robotics https://</span>
<span style="font-size:10.0pt;font-family:"Courier New"">faculty.nps.edu/brutzman<o:p></o:p></span></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b>From:</b> John Carlson <yottzumm@gmail.com> <br>
<b>Sent:</b> Thursday, November 18, 2021 2:31 AM<br>
<b>To:</b> Brutzman, Donald (Don) (CIV) <brutzman@nps.edu>; X3D Graphics public mailing list <x3d-public@web3d.org><br>
<b>Subject:</b> potential error in X3dToJava.xslt (setLang not called for meta statements.<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p>Before/after difference in Teapot.java.<o:p></o:p></p>
<p><o:p> </o:p></p>
<p><b><span style="font-family:"Courier New";color:black;background:white">diff --git a/src/main/java/net/x3djsonld/data/Teapot.java b/src/main/java/net/x3djsonld/data/Teapot.java</span></b><span style="font-family:"Courier New";color:black;background:white">
</span><span style="font-family:"Courier New""><br>
<b><span style="color:black;background:white">index a9fdb5619..3ad954bd0 100644</span></b><span style="color:black;background:white">
</span><br>
<b><span style="color:black;background:white">--- a/src/main/java/net/x3djsonld/data/Teapot.java</span></b><span style="color:black;background:white">
</span><br>
<b><span style="color:black;background:white">+++ b/src/main/java/net/x3djsonld/data/Teapot.java</span></b><span style="color:black;background:white">
</span><br>
<span style="color:#18B2B2;background:white">@@ -88,16 +88,16 @@</span><span style="color:black;background:white"> public class Teapot
</span><br>
{ <br>
x3dModel = new X3D().setProfile(X3D.PROFILE_INTERCHANGE).setVersion(X3D.VERSION_3_0)
<br>
.setHead(new head() <br>
<span style="color:#B21818;background:white">- .addMeta(new meta().setName(meta.NAME_TITLE ).setContent("Teapot.x3d").setDir("").setHttp_equiv("").setLang("").setScheme(""))</span><span style="color:black;background:white">
</span><br>
<span style="color:#B21818;background:white">- .addMeta(new meta().setName(meta.NAME_DESCRIPTION).setContent("A mooring buoy used in Naval Harbors").setDir("").setHttp_equiv("").setLang("").setScheme(""))</span><span style="color:black;background:white">
</span><br>
<span style="color:#B21818;background:white">- .addMeta(new meta().setName(meta.NAME_CREATOR ).setContent("LT Patrick Sullivan").setDir("").setHttp_equiv("").setLang("").setScheme(""))</span><span style="color:black;background:white">
</span><br>
<span style="color:#B21818;background:white">- .addMeta(new meta().setName(meta.NAME_CREATED ).setContent("28 July 2006").setDir("").setHttp_equiv("").setLang("").setScheme(""))</span><span style="color:black;background:white">
</span><br>
<span style="color:#B21818;background:white">- .addMeta(new meta().setName(meta.NAME_MODIFIED ).setContent("12 January 2014").setDir("").setHttp_equiv("").setLang("").setScheme(""))</span><span style="color:black;background:white">
</span><br>
<span style="color:#B21818;background:white">- .addMeta(new meta().setName(meta.NAME_IDENTIFIER ).setContent(<a href="https://savage.nps.edu/Savage/HarborEquipment/Buoys/MooringBuoy.x3d">"https://savage.nps.edu/Savage/HarborEquipment/Buoys/MooringBuoy.x3d"</a>).setDir("").setHttp_equiv(""</span><br>
).setLang("").setScheme(""))<span style="color:black;background:white"> </span><br>
<span style="color:#B21818;background:white">- .addMeta(new meta().setName(meta.NAME_GENERATOR ).setContent("VizX3D,
<a href="https://nam10.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.vivaty.com%2Fdownloads%2Fstudio&data=04%7C01%7Cbrutzman%40nps.edu%7Cc0455ddce86c44084be808d9aa7e7456%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C637728282827010252%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=mmchXNoHzkTbNzFBBoCmr6PTnXtA22ROWXbBMUWj0Wc%3D&reserved=0">
http://www.vivaty.com/downloads/studio</a>").setDir("").setHttp_equiv("").setLang("").setSche</span><br>
me(""))<span style="color:black;background:white"> </span><br>
<span style="color:#B21818;background:white">- .addMeta(new meta().setName(meta.NAME_GENERATOR ).setContent("Wings3D,
<a href="https://nam10.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.wings3d.com%2F&data=04%7C01%7Cbrutzman%40nps.edu%7Cc0455ddce86c44084be808d9aa7e7456%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C637728282827020212%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=q5xJEBPJD%2BW49vmy0d8%2B0spdSV77sOYAEzuP3E%2FQ2Q0%3D&reserved=0">
http://www.wings3d.com</a>").setDir("").setHttp_equiv("").setLang("").setScheme(""))</span><span style="color:black;background:white">
</span><br>
<span style="color:#B21818;background:white">- .addMeta(new meta().setName(meta.NAME_GENERATOR ).setContent("X3D-Edit,
<a href="https://savage.nps.edu/X3D-Edit">https://savage.nps.edu/X3D-Edit</a>").setDir("").setHttp_equiv("").setLang("").setScheme(""</span><br>
))<span style="color:black;background:white"> </span><br>
<span style="color:#B21818;background:white">- .addMeta(new meta().setName(meta.NAME_LICENSE ).setContent("../../license.html").setDir("").setHttp_equiv("").setLang("").setScheme("")))</span><span style="color:black;background:white">
</span><br>
<span style="color:#18B218;background:white">+ .addMeta(new meta().setName(meta.NAME_TITLE ).setContent("Teapot.x3d").setDir("").setHttp_equiv("")/* xml:lang='' */.setScheme(""))</span><span style="color:black;background:white">
</span><br>
<span style="color:#18B218;background:white">+ .addMeta(new meta().setName(meta.NAME_DESCRIPTION).setContent("A mooring buoy used in Naval Harbors").setDir("").setHttp_equiv("")/* xml:lang='' */.setScheme(""</span><br>
))<span style="color:black;background:white"> </span><br>
<span style="color:#18B218;background:white">+ .addMeta(new meta().setName(meta.NAME_CREATOR ).setContent("LT Patrick Sullivan").setDir("").setHttp_equiv("")/* xml:lang='' */.setScheme(""))</span><span style="color:black;background:white">
</span><br>
<span style="color:#18B218;background:white">+ .addMeta(new meta().setName(meta.NAME_CREATED ).setContent("28 July 2006").setDir("").setHttp_equiv("")/* xml:lang='' */.setScheme(""))</span><span style="color:black;background:white">
</span><br>
<span style="color:#18B218;background:white">+ .addMeta(new meta().setName(meta.NAME_MODIFIED ).setContent("12 January 2014").setDir("").setHttp_equiv("")/* xml:lang='' */.setScheme(""))</span><span style="color:black;background:white">
</span><br>
<span style="color:#18B218;background:white">+ .addMeta(new meta().setName(meta.NAME_IDENTIFIER ).setContent(<a href="https://savage.nps.edu/Savage/HarborEquipment/Buoys/MooringBuoy.x3d">"https://savage.nps.edu/Savage/HarborEquipment/Buoys/MooringBuoy.x3d"</a>).setDir("").setHttp_equiv(""</span><br>
)/* xml:lang='' */.setScheme(""))<span style="color:black;background:white"> </span>
<br>
<span style="color:#18B218;background:white">+ .addMeta(new meta().setName(meta.NAME_GENERATOR ).setContent("VizX3D,
<a href="https://nam10.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.vivaty.com%2Fdownloads%2Fstudio&data=04%7C01%7Cbrutzman%40nps.edu%7Cc0455ddce86c44084be808d9aa7e7456%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C637728282827020212%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=vvFFUsxQcVIn4PvmIskqNYoWii0HQ6mVy067mDLvj2c%3D&reserved=0">
http://www.vivaty.com/downloads/studio</a>").setDir("").setHttp_equiv("")/* xml:lang='' */.se</span><br>
tScheme(""))<span style="color:black;background:white"> </span><br>
<span style="color:#18B218;background:white">+ .addMeta(new meta().setName(meta.NAME_GENERATOR ).setContent("Wings3D,
<a href="https://nam10.safelinks.protection.outlook.com/?url=http%3A%2F%2Fwww.wings3d.com%2F&data=04%7C01%7Cbrutzman%40nps.edu%7Cc0455ddce86c44084be808d9aa7e7456%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C637728282827020212%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=q5xJEBPJD%2BW49vmy0d8%2B0spdSV77sOYAEzuP3E%2FQ2Q0%3D&reserved=0">
http://www.wings3d.com</a>").setDir("").setHttp_equiv("")/* xml:lang='' */.setScheme(""))</span><span style="color:black;background:white">
</span><br>
<span style="color:#18B218;background:white">+ .addMeta(new meta().setName(meta.NAME_GENERATOR ).setContent("X3D-Edit,
<a href="https://savage.nps.edu/X3D-Edit">https://savage.nps.edu/X3D-Edit</a>").setDir("").setHttp_equiv("")/* xml:lang='' */.setSche</span><br>
me(""))<span style="color:black;background:white"> </span><br>
<span style="color:#18B218;background:white">+ .addMeta(new meta().setName(meta.NAME_LICENSE ).setContent("../../license.html").setDir("").setHttp_equiv("")/* xml:lang='' */.setScheme("")))</span><span style="color:black;background:white">
</span><br>
.setScene(new Scene() <br>
.addChild(new Transform().setScale(0.3,0.3,0.3) <br>
.addChild(new Group("MooringBuoyWithHook")</span><o:p></o:p></p>
</div>
</div>
</body>
</html>