<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=utf-8"><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:Verdana;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:2 11 6 9 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;}
h2
        {mso-style-priority:9;
        mso-style-link:"Heading 2 Char";
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:18.0pt;
        font-family:"Calibri",sans-serif;
        font-weight:bold;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        font-size:10.0pt;
        font-family:"Courier New";}
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;}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:Consolas;}
span.Heading2Char
        {mso-style-name:"Heading 2 Char";
        mso-style-priority:9;
        mso-style-link:"Heading 2";
        font-family:"Calibri Light",sans-serif;
        color:#2F5496;}
span.EmailStyle23
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;
        mso-ligatures:none;}
@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:1832942155;
        mso-list-type:hybrid;
        mso-list-template-ids:-1126149044 343833668 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l0:level1
        {mso-level-start-at:0;
        mso-level-number-format:bullet;
        mso-level-text:;
        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:;
        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:;
        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:;
        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:;
        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:;
        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>X3D nodes map to XML elements.<o:p></o:p></p><p class=MsoNormal>X3D fields each have one of the simple types.<o:p></o:p></p><p class=MsoNormal>XML elements are not XML attributes.<o:p></o:p></p><p class=MsoNormal>The X3D 4.0 Architecture specification is authoritative and complete, it is not being deleted or changed.<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:l0 level1 lfo1'>X3D 4.0 Architecture, clause 26 Humanoid Animation (HAnim) component, 26.3.2 HAnimHumanoid<o:p></o:p></li><li class=MsoListParagraph style='margin-left:0in;mso-list:l0 level1 lfo1'>https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-IS.proof/Part01/components/hanim.html#HAnimHumanoid<o:p></o:p></li></ul><div style='mso-element:para-border-div;border:none;border-bottom:solid windowtext 1.5pt;padding:0in 0in 1.0pt 0in'><p class=MsoNormal style='border:none;padding:0in'><o:p> </o:p></p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><span style='font-size:9.0pt;font-family:"Courier New"'>HAnimHumanoid : X3DChildNode, X3DBoundedObject {<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:9.0pt;font-family:"Courier New"'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:9.0pt;font-family:"Courier New"'>  MFBool     [in,out] motionsEnabled        []<o:p></o:p></span></p><div style='mso-element:para-border-div;border:none;border-bottom:solid windowtext 1.5pt;padding:0in 0in 1.0pt 0in'><p class=MsoNormal style='border:none;padding:0in'><o:p> </o:p></p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>This states that motionsEnabled is an MFBool field in the HAnimHumanoid node, with a default value being the empy.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>HAnim functionality is described by the HAnim specification.<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:l0 level1 lfo1'>6.4 Extended definition of Humanoid object<o:p></o:p></li><li class=MsoListParagraph style='margin-left:0in;mso-list:l0 level1 lfo1'>https://www.web3d.org/documents/specifications/19774/V2.0/MotionDataAnimation/MotionNodes.html#HumanoidObjectExtension<o:p></o:p></li></ul><div style='mso-element:para-border-div;border:none;border-bottom:solid windowtext 1.5pt;padding:0in 0in 1.0pt 0in'><p class=MsoNormal style='border:none;padding:0in'><o:p> </o:p></p></div><p class=MsoNormal><span style='font-size:9.0pt'>The <i>motions</i> field contains a list of references, one for each Motion object that is to be applied to the Humanoid object. The order in which the motions are listed does not affect animation behaviour since the names and corresponding channels of the target Joint objects are stored in the Motion objects themselves. Motion objects are enabled by default, unless otherwise indicated by the corresponding Boolean entry in the motionsEnabled field.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:9.0pt'><o:p> </o:p></span></p><div style='mso-element:para-border-div;border:none;border-bottom:solid windowtext 1.5pt;padding:0in 0in 1.0pt 0in'><p class=MsoNormal style='border:none;padding:0in'><span style='font-size:9.0pt'>The <i>motionsEnabled</i> field contains a list of Boolean values which indicate whether the corresponding Motion object is active. The order of values in the <i>motionsEnabled</i> field shall correspond exactly to the the order of the Motion objects listed in the <i>motions</i> field. Excess <i>motionsEnabled</i> values shall be ignored. Note that the corresponding Motion object's enabled field shall also be true for object animation to occur.<o:p></o:p></span></p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>The X3D Tooltips also provide specification links and simple descriptions, along with hints and warnings.<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:l0 level1 lfo1'>https://www.web3d.org/x3d/content/X3dTooltips.html#HAnimHumanoid.motionsEnabled<o:p></o:p></li></ul><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>The blocks you have excerpted are from the X3D schema, written in the XSD schema language, which provides a special syntax for defining data-structure elements and attributes.  That is used for model validation, and no one needs to check those definitions unless you want to become an XML Schema expert.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Holger sent two sets of fixes to X3DUOM – thanks again!  I was able to finish the first set of X3DUOM errata, but not yet the second.  Please rest assured that I will fix it eventually, sorry but that is not yet possible for me to accomplish yet.  Maybe in another week or two.<o:p></o:p></p><div><p class=MsoNormal><span style='font-size:9.0pt;font-family:"Courier New"'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:9.0pt;font-family:"Courier New"'>all the best, Don<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:9.0pt;font-family:"Courier New"'>-- <o:p></o:p></span></p><p class=MsoNormal><span style='font-size:9.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:9.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:9.0pt;font-family:"Courier New"'>X3D graphics, virtual worlds, navy robotics https://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 16, 2023 8:24 AM<br><b>To:</b> Brutzman, Donald (Don) (CIV) <brutzman@nps.edu>; Joe D Williams <joedwil@earthlink.net>; Holger Seelig <holger.seelig@gmail.com><br><b>Subject:</b> motionsEnabled both as element and attribute?<o:p></o:p></p></div></div><p class=MsoNormal><o:p> </o:p></p><div><div><div><div><div><div><div><div><div><div><div><p class=MsoNormal>Don, Joe, in XML Schema, motionsEnabled both an element and attribute?  An element of type MFBool????  motionsEnabled is an MFBool per the standard, not an MFNode. It *could* be an MFNode, if that's what's decided. I think Joe's tendency is to delete it from the standard.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Clarify, or fix, please. I didn't read all of Holger's list.<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>$ grep motionsEnabled specifications/x3d-4.0.xsd<o:p></o:p></p></div><div><p class=MsoNormal>            <xs:enumeration value="motionsEnabled"/><o:p></o:p></p></div><div><p class=MsoNormal>                <xs:element name="motionsEnabled" type="MFBool" fixed="inputOutputField" default=""/><o:p></o:p></p></div><div><p class=MsoNormal>                    <xs:attribute name="motionsEnabled" type="MFBool"/><o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>It's the only MF element that isn't type MFNode???<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><div><p class=MsoNormal>$ grep element specifications/x3d-4.0.xsd |grep MF|grep -v MFNode<o:p></o:p></p></div><div><p class=MsoNormal>                <xs:element name="motionsEnabled" type="MFBool" fixed="inputOutputField" default=""/><o:p></o:p></p></div></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>Clearly, it appears like something needs to be fixed?<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal><a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-IS.proof/Part01/components/hanim.html#HAnimHumanoid" target="_blank">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-IS.proof/Part01/components/hanim.html#HAnimHumanoid</a><o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><p class=MsoNormal>MFBool here and there:<o:p></o:p></p></div><div><p class=MsoNormal><o:p> </o:p></p></div><div><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>HAnimHumanoid : X3DChildNode, X3DBoundedObject {<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFVec3f    [in,out] center                0 0 0    (-∞,∞)<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFString   [in,out] description           ""<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFBool     [in,out] bboxDisplay           FALSE<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  MFString   [in,out] info                  []<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  MFVec3f    [in,out] jointBindingPositions []       (-∞,∞)<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  MFRotation [in,out] jointBindingRotations []       [-1,1] or (-∞,∞)<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  MFVec3f    [in,out] jointBindingScales    []       (0,∞)<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  MFNode     [in,out] joints                []       [HAnimJoint]<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFInt32    [in,out] loa                   -1       [-1,4]<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFNode     [in,out] metadata              NULL     [X3DMetadataObject]<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  MFNode     [in,out] motions               []       [HAnimMotion]<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  </span><span style='font-size:8.5pt;color:red'>MFBool     </span><span style='font-size:8.5pt;color:black'>[in,out] motionsEnabled        []<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFString   [in,out] name                  ""<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFRotation [in,out] rotation              0 0 1 0  [-1,1] or (-∞,∞)<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFVec3f    [in,out] scale                 1 1 1    (0,∞)<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFRotation [in,out] scaleOrientation      0 0 1 0  [-1,1] or (-∞,∞)<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  MFNode     [in,out] segments              []       [HAnimSegment]<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  MFNode     [in,out] sites                 []       [HAnimSite]<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFString   [in,out] skeletalConfiguration "BASIC"<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  MFNode     [in,out] skeleton              []       [HAnimJoint, HAnimSite]<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  MFNode     [in,out] skin                  []       [Group, LOD, Shape, Switch, Transform, IndexedFaceSet, IndexedFanSet, IndexedLineSet, IndexedQuadSet, IndexedTriangleSet, IndexedTriangleStripSet]<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFNode     [in,out] skinBindingCoords     NULL     [Coordinate|CoordinateDouble]<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFNode     [in,out] skinBindingNormals    NULL     [X3DNormalNode]<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFNode     [in,out] skinCoord             NULL     [Coordinate|CoordinateDouble]<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFNode     [in,out] skinNormal            NULL     [X3DNormalNode]<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFVec3f    [in,out] translation           0 0 0    (-∞,∞)<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFString   [in,out] version               "2.0"    ["2.0"] <o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  MFNode     [in,out] viewpoints            []       [HAnimSite]<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFBool     [in,out] visible               TRUE<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFVec3f    []       bboxCenter            0 0 0    (-∞,∞)<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>  SFVec3f    []       bboxSize              -1 -1 -1 [0,∞) or −1 −1 −1<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>}</span><span style='font-size:8.5pt'><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'><o:p> </o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>Please fix asap, as this affects X3DUOM which affects x3d.py which affects the Blender exporter.  A patch to avoid duplicate fields.<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'><o:p> </o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>Thanks!<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'><o:p> </o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>Feel free to forward to x3d-public.  I'll download a published schema.<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'><o:p> </o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>Also, X3DUOM has 2 motionEnabled fields, which is what I caught.<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'><o:p> </o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>New changes XML schema, 2 of which, I'll have to reapply.<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'><o:p> </o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>$ svn diff x3d-4.0.xsd<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>Index: x3d-4.0.xsd<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>===================================================================<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>--- x3d-4.0.xsd (revision 35721)<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>+++ x3d-4.0.xsd (working copy)<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>@@ -20025,7 +20025,6 @@<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>         <xs:annotation><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>             <xs:appinfo><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>                 <xs:element name="joints" type="MFNode" fixed="inputOutputField" default="HAnimJoint"/><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><s><span style='font-size:8.5pt;color:black'>-                <xs:element name="motionsEnabled" type="MFBool" fixed="inputOutputField" default=""/></span></s><span style='font-size:8.5pt;color:black'><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>                 <xs:element name="segments" type="MFNode" fixed="inputOutputField" default="HAnimSegment"/><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>                 <xs:element name="sites" type="MFNode" fixed="inputOutputField" default="HAnimSite"/><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>                 <xs:element name="skeleton" type="MFNode" fixed="inputOutputField" default="HAnimJoint|HAnimSite"/><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>@@ -20292,7 +20291,7 @@<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>         <xs:complexType><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>             <xs:complexContent><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>                 <xs:extension base="X3DChildNode"><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>-                    <xs:attribute name="channels" type="MFString"/><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>+                    <xs:attribute name="channels" type="</span><span style='font-size:8.5pt;color:fuchsia'>SFString</span><span style='font-size:8.5pt;color:black'>"/><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>                     <xs:attribute name="channelsEnabled" type="MFBool"/><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>                     <xs:attribute name="description" type="SFString"/><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>                     <xs:attribute name="enabled" type="SFBool" default="false"/><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>@@ -20318,7 +20317,7 @@<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>                             </xs:restriction><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>                         </xs:simpleType><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>                     </xs:attribute><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>-                    <xs:attribute name="joints" type="MFString"/><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>+                    <xs:attribute name="joints" type="</span><span style='font-size:8.5pt;color:fuchsia'>SFString</span><span style='font-size:8.5pt;color:black'>"/><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>                     <xs:attribute name="loa" type="loaType" default="-1"/><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>                     <xs:attribute name="loop" type="SFBool" default="false"/><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>                     <xs:attribute name="name" type="xs:NMTOKEN"><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>@@ -26614,4 +26613,4 @@<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>         </xs:complexType><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>     </xs:element><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>     <!--======================================================================--><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>-</xs:schema><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>\ No newline at end of file<o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>+</xs:schema></span><o:p></o:p></pre><pre style='margin-left:18.75pt'><o:p> </o:p></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'><a href="https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-IS.proof/Part01/components/hanim.html#HAnimMotion">https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-IS.proof/Part01/components/hanim.html#HAnimMotion</a></span><o:p></o:p></pre><pre style='margin-left:18.75pt'><o:p> </o:p></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>See correct field types (not MFString) below:</span><o:p></o:p></pre><h2 style='mso-margin-top-alt:13.5pt;margin-right:0in;margin-bottom:5.0pt;margin-left:18.75pt'><span style='font-size:15.5pt;font-family:"Verdana",sans-serif;color:black'>26.3.4 HAnimMotion<o:p></o:p></span></h2><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>HAnimMotion : X3DChildNode {<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  SFBool   [in]     next<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  SFBool   [in]     previous<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  </span><span style='font-size:8.5pt;color:red;background:white'>SFString </span><span style='font-size:8.5pt;color:black'>[in,out] channels         ""<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  MFBool   [in,out] channelsEnabled  []<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  SFString [in,out] description      ""<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  SFBool   [in,out] enabled          TRUE<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  SFInt32  [in,out] endFrame         0      [0,∞)<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  SFTime   [in,out] frameDuration    0.1    (0,∞)<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  SFInt32  [in,out] frameIncrement   1      (-∞,∞)<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  SFInt32  [in,out] frameIndex       0      [0,∞)<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  </span><span style='font-size:8.5pt;color:red'>SFString </span><span style='font-size:8.5pt;color:black'>[in,out] joints           ""                  <o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  SFInt32  [in,out] loa              -1     [-1,4]<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  SFBool   [in,out] loop             FALSE<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  SFNode   [in,out] metadata         NULL   [X3DMetadataObject]<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  SFString [in,out] name             ""<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  SFInt32  [in,out] startFrame       0      [0,∞)<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  MFFloat  [in,out] values           []     (-∞,∞)<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  SFTime   [out]    cycleTime               [0,∞)<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  SFTime   [out]    elapsedTime             (0,∞)<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>  SFInt32  [out]    frameCount              [0,∞)<o:p></o:p></span></pre><pre style='margin-left:37.5pt'><span style='font-size:8.5pt;color:black'>}</span><span style='font-size:8.5pt'><o:p></o:p></span></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>Please call +1-712-369-1032 to discuss other changes to XML Schema or schedule a meeting.</span><o:p></o:p></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>These are MFString/SFString issues in HAnimMotion which I realize may have some backwards compatibility.</span><o:p></o:p></pre><pre style='margin-left:18.75pt'>This affects VRML output from x3d.py and parsing with view3dscene.<o:p></o:p></pre><pre style='margin-left:18.75pt'><span style='font-size:8.5pt;color:black'>John<o:p></o:p></span></pre></div><div><p class=MsoNormal><o:p> </o:p></p></div></div></div></div></div></div></div></div></div></div></div></div></body></html>