<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=Windows-1252">
<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;}
@font-face
        {font-family:"Times New Roman \,serif";}
/* 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;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.5in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
p.m997246790946943590msolistparagraph, li.m997246790946943590msolistparagraph, div.m997246790946943590msolistparagraph
        {mso-style-name:m_997246790946943590msolistparagraph;
        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;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@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:592978071;
        mso-list-template-ids:-1;}
@list l0:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level5
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level8
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l0:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l1
        {mso-list-id:895897287;
        mso-list-type:hybrid;
        mso-list-template-ids:-867426434 -1 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l1:level1
        {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:"Times New Roman";
        mso-bidi-font-family:"Times New Roman";}
@list l1: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",serif;}
@list l1: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 l1: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 l1: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",serif;}
@list l1: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 l1: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 l1: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",serif;}
@list l1: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;}
@list l2
        {mso-list-id:1955404138;
        mso-list-template-ids:-1;}
@list l2:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l2:level2
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l2:level3
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l2:level4
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l2:level5
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l2:level6
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l2:level7
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l2:level8
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
@list l2:level9
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;
        mso-ansi-font-size:10.0pt;
        font-family:Symbol;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
--></style>
</head>
<body lang="EN-US" link="blue" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal">John, am happy to explain this detailed but step-by-step process.</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">The XML Schema captures the relationships exactly.  However XML Schema does not have sufficient power to valididate inputOnly or outputOnly fields, because transient values cannot appear in an XML document (i.e. an .x3d scene).</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Therefore, each and every one of those inputOnly/ outputOnly fields are added in place as annotations (sort of like structured comments).  Similarly, parent-child node-type relationships are also listed as node types.  The X3DUOM is created
 to provide a comprehensive list of everything.  This autogeneration approach is repeated for each X3D Schema and X3DUOM pair.  Validation is pretty rigorous (meaning everything fails horribly if not exactly right).  Using X3DUOM to then autogenerate Java,
 Python and Turtle leads to multiple forms of round-trip testing.</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">These construction details are all explained on the X3DUOM page.</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:l1 level1 lfo3"><a href="https://www.web3d.org/specifications/X3DUOM.html"><span style="color:windowtext;text-decoration:none">X3D Unified Object Model (X3DUOM) (web3d.org)</span></a></li><li class="MsoListParagraph" style="margin-left:0in;mso-list:l1 level1 lfo3">The X3D Unified Object Model (X3DUOM) is a full set of object-oriented interfaces for all nodes, fields and statements in the X3D Architecture Specification.</li><li class="MsoListParagraph" style="margin-left:0in;mso-list:l1 level1 lfo3"><a href="https://www.web3d.org/specifications/X3DUOM.html">https://www.web3d.org/specifications/X3DUOM.html</a>
</li></ul>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">You will find X3DUOM versions 3.0, 3.1, 3.2, 3.3, and 4.0 all present there.  Each was independently constructed from the corresponding X3D XML schema.</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">X3DUOM construction diagram:</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:l1 level1 lfo3"><a href="https://www.web3d.org/specifications/X3DUOM/X3dUnifiedObjectModelCreation.png"><span style="color:windowtext;text-decoration:none">X3dUnifiedObjectModelCreation.png (2448×1829)
 (web3d.org)</span></a></li><li class="MsoListParagraph" style="margin-left:0in;mso-list:l1 level1 lfo3"><a href="https://www.web3d.org/specifications/X3DUOM/X3dUnifiedObjectModelCreation.png">https://www.web3d.org/specifications/X3DUOM/X3dUnifiedObjectModelCreation.png</a>
</li></ul>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Since we have placed such a high value on backwards compatibility, it seems much more practical to let our X3DJSAIL Java and X3DPSAIL Python implementations simply support X3D 4.0 plus every prior version.  Having five versions of each
 software library is easily created but totally impractical to maintain.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">If you really want to perform archaeological sleuthing of the trail behind SceneGraphStructureStatement, then diff the schema to prior versions and see how it evolved.  We have gradually refactored and improved the X3D XML Schema over the
 years when possible.  All changes are summarized in the build log.<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:l1 level1 lfo3">X3D Specifications: Schema and DOCTYPE Validation assets are commonly used for XML validation of X3D scenes, and in-depth documentation is also provided here.<o:p></o:p></li><li class="MsoListParagraph" style="margin-left:0in;mso-list:l1 level1 lfo3"><a href="https://www.web3d.org/specifications">https://www.web3d.org/specifications</a>
<o:p></o:p></li></ul>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Changelogs are listed right up top:<o:p></o:p></p>
<ul style="margin-top:0in" type="disc">
<li class="MsoListParagraph" style="margin-left:0in;mso-list:l1 level1 lfo3"><a href="https://www.web3d.org/specifications/x3d-schema-changelog.txt">https://www.web3d.org/specifications/x3d-schema-changelog.txt</a><o:p></o:p></li><li class="MsoListParagraph" style="margin-left:0in;mso-list:l1 level1 lfo3"><a href="https://www.web3d.org/specifications/x3d-dtd-changelog.txt">https://www.web3d.org/specifications/x3d-dtd-changelog.txt</a>
<o:p></o:p></li></ul>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">A magnificent (i.e. endless) list of each asset produced across our history makes every change visible.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">As ever, round trip validation testing of thousands of X3D models along the way has given us great confidence that everything is work.  Then, when some little thing doesn’t work, we fix it.  Lather rinse repeat…<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Thanks to everyone on this list whose every comment typically does something to help the process.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Long time coming… Have fun with X3D4!  8)<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">all the best, Don<br>
<span style="font-size:10.0pt;font-family:"Courier New",serif">-- <br>
Don Brutzman  Naval Postgraduate School, Code USW/Br       brutzman@nps.edu<br>
Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149<br>
X3D graphics, virtual worlds, navy robotics <a href="http://faculty.nps.edu/brutzman">
http://faculty.nps.edu/brutzman</a></span><o:p></o:p></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, September 14, 2021 1:30 PM<br>
<b>To: </b><a href="mailto:brutzman@nps.edu">Brutzman, Donald (Don) (CIV)</a><br>
<b>Cc: </b><a href="mailto:x3d-public@web3d.org">X3D Graphics public mailing list</a><br>
<b>Subject: </b>Re: [x3d-public] Mantis? No SceneGraphStructureStatement AbstractNodeType present in old X3D3 versions, X3DUOM</p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p>Actually, the main focus of this thread was:</p>
<p>There are many '<Inheritance baseType="SceneGraphStructureStatement"/>' in X3DUOM V3.0-V3.3.   There is no AbstractNodeType of SceneGraphStructureStatement in V3.* any more.</p>
<p>I don't know if you want to remove the Inheritance or not.  There are '<xs:complexType name="SceneGraphStructureStatement" abstract="true">' in the XML schema V3.*. The complexType seems to have disappeared in translation to X3DUOM V3.*</p>
<p>I will assume that the conversion from XML Schema to X3DUOM is broken for V3.*</p>
<p>I could dig a bit further, but at this point, I think an issue of transferring complexTypes from XML Schema to X3DUOM V3.* has been identifiied.</p>
<p>I agree that V3.* is deprecated at this point.   Ideally, we could get JSON Schemas checked into sourceforge.</p>
<p>Likely, you are in the middle of testing.</p>
<p>Going back into my cave.</p>
<p>John</p>
<p><o:p> </o:p></p>
<div>
<p class="MsoNormal">On 9/14/21 2:53 PM, John Carlson wrote:<o:p></o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal">It sounds like we should focus on JSON schema 4.0, and leave old schemas behind.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I have been validating files against various JSON schema versions.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I think my main problem was setIS in a field value, which we started addressing Monday.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">I have a list of pressing issues if you’re ready.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Tue, Sep 14, 2021 at 2:36 PM Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu">brutzman@nps.edu</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">Regarding backwards compatibility:</p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
<ul type="disc">
<li class="m997246790946943590msolistparagraph" style="mso-list:l0 level1 lfo1">XML Schemas are available for all versions of X3D, 3.0 through 4.0,  Each has evolved past the prior version.<o:p></o:p></li><li class="m997246790946943590msolistparagraph" style="mso-list:l0 level1 lfo1">X3DUOM is autogenerated from each corresponding XML schema, similarly showing evolution.<o:p></o:p></li><li class="m997246790946943590msolistparagraph" style="mso-list:l0 level1 lfo1">We have paid a lot of attention to forward/backward compatibility among these many versions of X3D and VRML97.<o:p></o:p></li></ul>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">It is possible to maintain multiple versions of corresponding software builds but that seems fairly counterproductive.  Better is strategy at top of X3DJSAIL page:</p>
<ul type="disc">
<li class="MsoNormal" style="color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;mso-list:l2 level1 lfo2">
<span style="font-size:13.5pt;font-family:"Times New Roman ,serif",serif">Test ongoing development of <a href="https://www.web3d.org/x3d4" target="_blank">X3D version 4</a> (also supporting X3D versions 3.0 through 3.3).</span><o:p></o:p></li></ul>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">So X3DJSAIL, X3DPSAIL and X3D Ontology (and for that matter XML Schema and X3D DOCTYPE) are focused on 4.0 completeness in each implementation, including backwards compatibility
 to good effect.</p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Thus X3DUOM updates are not postponed at all, rather these match exactly each version of the X3D Specification as captured by X3D XML Schemas.</p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Hope this is clearer now.</p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">all the best, Don</p>
</div>
</div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><br>
<span style="font-size:10.0pt;font-family:"Courier New",serif">-- <br>
Don Brutzman  Naval Postgraduate School, Code USW/Br       <a href="mailto:brutzman@nps.edu" target="_blank">
brutzman@nps.edu</a><br>
Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149<br>
X3D graphics, virtual worlds, navy robotics <a href="http://faculty.nps.edu/brutzman" target="_blank">
http://faculty.nps.edu/brutzman</a></span></p>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </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">John Carlson</a><br>
<b>Sent: </b>Tuesday, September 7, 2021 10:42 AM<br>
<b>To: </b><a href="mailto:x3d-public@web3d.org" target="_blank">X3D Graphics public mailing list</a><br>
<b>Subject: </b>Re: [x3d-public] Mantis? No SceneGraphStructureStatement AbstractNodeType present in old X3D3 versions, X3DUOM</p>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Hmm.  I mean IS field in fieldValue in X3DUOM.   I guess X3DUOM updates are postponed until X3D4 is done.</p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">John</p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">On Tue, Sep 7, 2021 at 12:28 PM John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>> wrote:</p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt">
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">As previously reported, I am fairly sure I added an IS node (which creates a setIS method).   I don’t think I checked any of this in.</p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">I haven’t formally tested  JSON schema that I remember.</p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">John</p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">On Thu, Sep 2, 2021 at 9:38 PM John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>> wrote:</p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0in;margin-bottom:5.0pt">
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">I just discovered this draft.   Sorry for the delay.  I think the primary goal should be the alignment of the statement type hierarchy between X3D3 and X3D4.</p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">I’m wondering if my changes locally affected fieldValue.setIS as previously reported?  Or fieldValue.addChild(new IS()) (IS is not a node)</p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">I am thinking someone should look at the type hierarchy differences for statements. If we go with X3D4, I will upgrade various examples.</p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">I guess the other solution is to provide different jars for X3D3 versus X3D4.</p>
</div>
</div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
</div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">John</p>
</div>
</div>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> </p>
<div>
<div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">On Sat, Aug 28, 2021 at 4:09 PM John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>> wrote:</p>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</blockquote>
</div>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-bottom:12.0pt;margin-left:.2in">
I'm still having to back out updates to X3DUOM:<br>
<br>
$ grep SceneGraphStructureStatement X3dUnifiedObjectModel*|sort -u<br>
X3dUnifiedObjectModel-3.0.xml:            <Inheritance <br>
baseType="SceneGraphStructureStatement"/><br>
X3dUnifiedObjectModel-3.1.xml:            <Inheritance <br>
baseType="SceneGraphStructureStatement"/><br>
X3dUnifiedObjectModel-3.2.xml:            <Inheritance <br>
baseType="SceneGraphStructureStatement"/><br>
X3dUnifiedObjectModel-3.3.xml:            <Inheritance <br>
baseType="SceneGraphStructureStatement"/><br>
<br>
Here's what's in the old X3D3 versions, but not 4.0:<br>
<br>
       <AbstractNodeType name="SceneGraphStructureStatement"><br>
          <InterfaceDefinition <br>
specificationUrl="<a href="https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#scenegraph" target="_blank">https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#scenegraph</a>"<br>
appinfo="SceneGraphStructureStatement is a marker interface that <br>
identifies statements relating to nonrenderable scene graph structure. <br>
SceneGraphStructureStatement does not extend from any other node type <br>
since it is not an explicit part of the X3D node interface hierarchy, <br>
and DEF/USE is not appropriate for such statements."><br>
             <componentInfo name="Core" level="1"/><br>
             <field name="class"<br>
                    type="SFString"<br>
                    accessType="inputOutput"<br>
                    baseType="xs:NMTOKENS"<br>
                    description="The class attribute on each X3D node <br>
and statement is a space-separated list of classes, reserved for use by <br>
Cascading Style Sheets (CSS) and XML stylesheets."/><br>
          </InterfaceDefinition><br>
       </AbstractNodeType><br>
<br>
<br>
I am proceeding to delete the Inheritance nodes from my  versions 3 <br>
X3DUOM. There are some "AdditionalInheritance" elements that may need to <br>
be converted over to "Inheritance."<br>
<br>
If you want me to proceed with updating X3DUOM and AdditionalInheritance <br>
on <a href="https://nam10.safelinks.protection.outlook.com/?url=http%3A%2F%2Fsourceforge.net%2F&data=04%7C01%7Cbrutzman%40nps.edu%7Ca6c40bdaee4944a7f70908d977be74f0%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C637672482161086220%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=w%2FX%2Bs7Rsio4ApcwOSr5JJZfOfdN2MT97pgw7OQUd1Gs%3D&reserved=0" target="_blank">
sourceforge.net</a>, let me know, but that's treading on unknown <br>
territory for me, updating the stuff that creates X3DUOM.  I assume this <br>
means updating XML schema versions 3.  Is there a Mantis issue yet? I am <br>
capable of filing one, I hope.<br>
<br>
I am not currently testing anything that uses X3DUOM besides my own <br>
stuff. Mostly, I am just trying to get the JSON schema working.<br>
<br>
Thanks!<br>
<br>
John</p>
</div>
</div>
</blockquote>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal" style="mso-margin-top-alt:auto;margin-right:.5in;mso-margin-bottom-alt:auto;margin-left:40.8pt">
 </p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</body>
</html>