<div dir="auto">I think where I’m stuck is creating statements in C++ SAI.   I don’t know whether to use createNode for statements, constructors, or there might be a createStatement in the future.   It would seem if there’s a createStatement, there should be an abstract Statement class.</div><div dir="auto"><br></div><div dir="auto">At one point, I wondered if statements were even legal in SAI.</div><div dir="auto"><br></div><div dir="auto">I guess I need to further examine the working draft.</div><div dir="auto"><br></div><div dir="auto">Thanks.   No response is necessary.</div><div dir="auto"><br></div><div dir="auto">John </div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Aug 12, 2021 at 7:33 PM Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu">brutzman@nps.edu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)">





<div lang="EN-US" link="blue" vlink="purple">
<div class="m_1901110943037082625WordSection1">
<p class="MsoNormal">Thanks for thinking about this.  No abstract statements exist in X3D.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">Please look at X3DUOM.  You will find abstract node types, a few abstract interfaces, nodes and statements.<u></u><u></u></p></div></div><div lang="EN-US" link="blue" vlink="purple"><div class="m_1901110943037082625WordSection1">
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<div style="border-style:solid none none;border-top-width:1pt;padding:3pt 0in 0in;border-top-color:rgb(225,225,225)">
<p class="MsoNormal"><b>From:</b> John Carlson <<a href="mailto:yottzumm@gmail.com" target="_blank">yottzumm@gmail.com</a>> <br>
<b>Sent:</b> Friday, August 6, 2021 10:54 AM<br>
<b>To:</b> Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>><br>
<b>Cc:</b> <a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a><br>
<b>Subject:</b> Re: [x3d-public] improved definitions, clarifications to X3D Architecture Clause 3 Terms, definitions, acronyms, and abbreviations<u></u><u></u></p>
</div>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<div>
<p class="MsoNormal">Perhaps abstract statements should be added to X3DUOM if not already there?<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">John <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<div>
<p class="MsoNormal">On Fri, Aug 6, 2021 at 12:42 PM Brutzman, Donald (Don) (CIV) <<a href="mailto:brutzman@nps.edu" target="_blank">brutzman@nps.edu</a>> wrote:<u></u><u></u></p>
</div>
<blockquote style="border-style:none none none solid;border-left-width:1pt;padding:0in 0in 0in 6pt;margin-left:4.8pt;margin-right:0in;border-left-color:rgb(204,204,204)">
<div>
<div>
<p class="MsoNormal">We are considering Mantis 1173 to add a number of definitions and clarifications to the X3D Architecture specification.  This was first proposed in September 2017.<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<ul type="disc">
<li class="m_1901110943037082625m-640238810679249726msolistparagraph">
<span style="font-size:10pt;font-family:Verdana,sans-serif;background-color:rgb(243,243,243);color:black">Mantis 1173: Clause 3 Terms, definitions, acronyms, and abbreviations - Definition of node and statement are insufficient</span><u></u><u></u></li><li class="m_1901110943037082625m-640238810679249726msolistparagraph">
<a href="https://www.web3d.org/member-only/mantis/view.php?id=1173" target="_blank">https://www.web3d.org/member-only/mantis/view.php?id=1173</a>
<u></u><u></u></li></ul>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Review and any suggested wording improvements are welcome.  Absent objects or improvements, we will apply these nonfunctional editorial changes.<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:Verdana,sans-serif;background-color:rgb(235,235,235);color:black">-----------------</span><span style="font-size:10pt;font-family:Verdana,sans-serif;color:black"><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">Subject: Abstract specification definitions of node and statement are insufficient.</span><br clear="all">
<br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">Problem: the abstract specification does not provide clear definitions for nodes and statements, resulting in ambiguous distinctions throughout other sections.</span><br clear="all">
<br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">The current definition for node is vague:</span><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">"3.1.47 node, fundamental component of a scene graph"</span><br clear="all">
<br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">Suggested definition, improvements welcome:</span><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">"3.1.47 node, fundamental component of a scene graph that defines information regarding animation, display, geometry, graph structure, interaction, object metadata, or rendering. Nodes are not statements.</span><br clear="all">
<br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">No definition for statement is provided. Suggested:</span><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">"3.1.70.5, statement, fundamental component of a scene graph that defines document information, version/profile/component support, routing, and other scene-related information. Statements are not nodes.</span><br clear="all">
<br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">Existing usage of note:</span><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">"3.1.87 X3D file, set of X3D nodes and statements as defined in this part of ISO/IEC 19775"</span><br clear="all">
<br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">Further action needed: Core component defines multiple capabilities requiring X3D statement support. Recommend that support for all X3D statements is included as a requirement in Core component, both in prose and in support
 table. For example: "All X3D statements are defined as part of Core component level 1."</span><br clear="all">
<br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">Table 7.2 — Core component support levels</span><br clear="all">
</span><a href="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#t-Coresupportlevels" target="_blank"><span style="font-size:10pt;font-family:Verdana,sans-serif;text-decoration:none;background-color:rgb(235,235,235);color:royalblue">http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#t-Coresupportlevels</span></a><span style="font-size:10pt;font-family:Verdana,sans-serif;color:black"><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">Can add similar table entry "All X3D statements are defined as part of Core component level 1."</span><br clear="all">
<br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">Correction needed:</span><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">Figure 4.1 — X3D architecture</span><br clear="all">
</span><a href="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#f-X3DArchitecture" target="_blank"><span style="font-size:10pt;font-family:Verdana,sans-serif;text-decoration:none;background-color:rgb(235,235,235);color:royalblue">http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/concepts.html#f-X3DArchitecture</span></a><span style="font-size:10pt;font-family:Verdana,sans-serif;color:black"><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">"The abstract structure of the sequence of statements that form an X3D world is specified in 7.2.5 Abstract X3D structure."</span><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">should be modified to read "sequence of nodes and statements that form an X3D world"</span><br clear="all">
<br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">7.2.5 Abstract X3D structure</span><br clear="all">
</span><a href="http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#AbstractX3DStructure" target="_blank"><span style="font-size:10pt;font-family:Verdana,sans-serif;text-decoration:none;background-color:rgb(235,235,235);color:royalblue">http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/core.html#AbstractX3DStructure</span></a><span style="font-size:10pt;font-family:Verdana,sans-serif;color:black"><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">7.2.5.1 Organization</span><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">should similarly modify</span><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">"An X3D world is conceptually defined as a sequence of statements organized conceptually as a file."</span><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">to say "as a sequence of nodes and statements"</span><br clear="all">
<br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">Needed:</span><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">"PROTO instances are nodes."</span><br clear="all">
<br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">Suggested:</span><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">"Comments are neither nodes nor statements."</span><br clear="all">
<br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">This section should also include a paragraph that lists X3D statements, such as</span><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">"X3D statements include X3D, HEAD, PROFILE, COMPONENT, META, UNIT, Scene, ROUTE, PROTO declare, EXTERNPROTO delare, PROTO interface, PROTO body, field, fieldValue, IS, connect, IMPORT, EXPORT. Syntax and explicit/implicit definition
 for these statements can vary among various encodings and language bindings."</span><br clear="all">
<br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">Further review of the abstract specification is warranted to see if other clarifications and corrections are needed.</span><br clear="all">
<br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">Of note is that clear distinction of nodes and statements is also necessary for proper specification of the X3D Unified Object Model.</span><br clear="all">
<br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">These clarifications are not expected to break any existing X3D model content because the existing legacy specification makes no relevant restrictions on use of X3D statements. Similarly, these clarifications do not require
 changes (but may inspire improvements) to existing X3D implementations.</span><br clear="all">
<span style="font-family:Verdana,sans-serif;background-color:rgb(235,235,235)">-----------------</span></span><u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">all the best, Don<u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:"Courier New"">--
</span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:"Courier New"">Don Brutzman  Naval Postgraduate School, Code USW/Br      
<a href="mailto:brutzman@nps.edu" target="_blank" style="font-family:"Courier New""><span style="font-family:"Courier New";color:rgb(5,99,193)">brutzman@nps.edu</span></a></span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:"Courier New"">Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149</span><u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:10pt;font-family:"Courier New"">X3D graphics, virtual worlds, navy robotics
<a href="http://faculty.nps.edu/brutzman" target="_blank" style="font-family:"Courier New""><span style="font-family:"Courier New";color:rgb(5,99,193)">http://faculty.nps.edu/brutzman</span></a></span><u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
</div>
<p class="MsoNormal">_______________________________________________<br>
x3d-public mailing list<br>
<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a><br>
<a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" target="_blank">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a><u></u><u></u></p>
</blockquote>
</div>
</div>
</div>
</div>
</div>

</blockquote></div></div>