<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Joe, there are some ways of loading JSON through the runtime in
      X3DOM (which uses JSONParser.js), but typically, JSON is loaded
      through a URL on the web page. I don't want to overburden my
      customers by forcing them to drop into JavaScript.   There's also
      a different interface for X_ITE as well, and also one can load
      JSON through a URL on the web page.<br>
    </p>
    <p>I think there may still be some issues with HAnim, which need to
      be addressed (skeleton field).  I will work with you to get HAnim
      working with X3DOM and X_ITE.  I have many, may issues with Java
      code generated from JSON in X3DJSONLD package.   Fixing those may
      help or hinder us from accomplishing our goals.<br>
    </p>
    <p>Thanks!</p>
    <p>John<br>
    </p>
    <div class="moz-cite-prefix">On 10/31/21 20:45, Joseph D Williams
      wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:617f46f1.1c69fb81.1366b.4391SMTPIN_ADDED_MISSING@mx.google.com">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <meta name="Generator" content="Microsoft Word 15 (filtered
        medium)">
      <style>@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;}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;}.MsoChpDefault
        {mso-style-type:export-only;}div.WordSection1
        {page:WordSection1;}ol
        {margin-bottom:0in;}ul
        {margin-bottom:0in;}</style>
      <div class="WordSection1">
        <p class="MsoNormal">Does anyone want to discuss SAI for
          building a scenegraph from X3DJSON?  What approaches are out
          there?<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Just wondering, or waking up, why would
          there be a special SAI for use with json? All I thought I
          needed was a way to reliably import/export nodes and
          parameters ilnto a standard scenegraph using standard SAI
          interfaces. <o:p></o:p></p>
        <p class="MsoNormal">Sure, using external programming interfaces
          to build a scene by authoring or importing nodes and
          statements and structures is possible, but regardless the
          scenegraph is built from nodes and statements that may be
          emitted from and external and internal scripts activated when
          the scene is initialized using the spec SAI. <o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">At this point I still think of the json as
          a way to store some data and some organized way for import
          into the x3d scenegraph using the spec interfaces for external
          and external programming. Bite my lip, but why think of a
          scenegraph built entirely for json? How can I say no way, too
          verbose<span style="font-family:"Segoe UI
            Emoji",sans-serif">😊</span>I don’t think there needs
          to be a canonical form for a scene built from json, like for
          x3d xml and x3d Classic. I think it is more appropriate to
          think of the Json as imported into or from the scene and
          integrated into the scenegraph to be accessible by SAI using
          the existing SAI with the canonical user code in XML or
          Classic (same interfaces for both).<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Thanks, <o:p></o:p></p>
        <p class="MsoNormal">Joe<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"> <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:joedwil@earthlink.net"
              moz-do-not-send="true">Joseph D Williams</a><br>
            <b>Sent: </b>Saturday, October 30, 2021 3:52 PM<br>
            <b>To: </b><a href="mailto:yottzumm@gmail.com"
              moz-do-not-send="true">John Carlson</a>; <a
              href="mailto:brutzman@nps.edu" moz-do-not-send="true">Brutzman,
              Donald (Don) (CIV)</a>; <a
              href="mailto:x3d-public@web3d.org" moz-do-not-send="true"
              class="moz-txt-link-freetext">x3d-public@web3d.org</a><br>
            <b>Subject: </b>Re: [x3d-public] JSON Schema meeting
            minutes</p>
        </div>
        <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 lfo1">Is there a
            modeling language which encompasses everything we want to do
            with schemas and semantics?<o:p></o:p></li>
        </ul>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">We have a modeling language that
          encompasses objects and object interactions in real time with
          specific control of the time. At the most abstract is it
          metaontologies connected to metadata connecting to real and
          virtual objects with interactive event processing?  <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 lfo1">textual
            SysML<o:p></o:p></li>
        </ul>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Is any of this usable in x3d? Ports, parts,
          and connectors to start. If it works then writing this
          language could be a guide to showing flows and interactions in
          simulations and realtime? <o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">For me, the JSON should be standardized
          when it can be clearly shown to be an accurate set of rules
          when transcoding between the XML, the Classic, and the JSON,
          given the idea that the XML is the defining schema. That is,
          for a given set of data, equivalent results can be produced to
          and from equivalent data in other standard forms. <o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Now, for the SAI, are we past just system
          of defining and validating syntax and data structures for
          textual x3dscenegraphs and now are looking for connects
          between these great achievements and some way to abstractly
          define and validate event processing by the scene object and
          internal and external objects composing the scene from
          internal and external events? Then not only can be validate
          the user code but also validate event processing without
          actually having to run the thing. <o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">That is where the sysML comes in, maybe, is
          laying out the hierarchy and structures of the processes and
          flows in a project. Like showing that these two things are
          things and when this thing is started, then this other thing
          also should start, and if one takes too long then this should
          happen. I think the x3d scengraph can precisely document
          timing and event flows that the user has defined, so a
          competent x3d authoring system should be able to validate the
          syntax and structures and event flows and timing within the 
          scenegraph at any operating point.  <o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Joe <o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <div style="border:none;border-top:solid #E1E1E1
          1.0pt;padding:3.0pt 0in 0in 0in">
          <p class="MsoNormal"><b>From: </b><a
              href="mailto:yottzumm@gmail.com" moz-do-not-send="true">John
              Carlson</a><br>
            <b>Sent: </b>Friday, October 29, 2021 3:18 PM<br>
            <b>To: </b><a href="mailto:brutzman@nps.edu"
              moz-do-not-send="true">Brutzman, Donald (Don) (CIV)</a>; <a
              href="mailto:x3d-public@web3d.org" moz-do-not-send="true"
              class="moz-txt-link-freetext">x3d-public@web3d.org</a><br>
            <b>Subject: </b>Re: [x3d-public] JSON Schema meeting
            minutes<o:p></o:p></p>
        </div>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Note that encodings, bindings and schemas
          are different things, except that bindings are starting to
          look a lot like encodings now.  JSON schema has not yet
          achieved standardization, we are using draft 2020-12, and it
          looks a bit like the JSON schema crew are having a bit of an
          issue getting a standards body to endorse it.   Since both
          glTF and X3D could make use of a JSON schema standard, I
          recommend that either Khronos and/or Web3d consortium suggest
          a standards body to the JSON schema folks.  Something like
          ECMA seems like a natural fit.<o:p></o:p></p>
        <div>
          <p class="MsoNormal"><o:p> </o:p></p>
        </div>
        <div>
          <p class="MsoNormal">Note that X3D JSON schema depends on JSON
            schema for vocabulary.<o:p></o:p></p>
        </div>
        <div>
          <p class="MsoNormal"><o:p> </o:p></p>
        </div>
        <div>
          <p class="MsoNormal">In the early days of X3DJSON I looked for
            something that would convert XML schema to JSON schema, but
            it looked like any tool were were going to use would not
            match what we were creating with X3D JSON.  I don’t know if
            there’s sufficient umph in XMLSpy to do it, but we might
            consider a post-processing tool.<o:p></o:p></p>
        </div>
        <div>
          <p class="MsoNormal"><o:p> </o:p></p>
        </div>
        <div>
          <p class="MsoNormal">I may still have code around that
            converts xsd to owl to vowl if anyone is interested.<o:p></o:p></p>
        </div>
        <div>
          <p class="MsoNormal"><o:p> </o:p></p>
        </div>
        <div>
          <p class="MsoNormal">Another place we might place effort is a
            validating API for X3D JSON.  I view that as a valuable
            task, but I don’t have the personal passion or brainpower to
            push it through.   First things first.  You probably
            shouldn’t write parser without a specification.<o:p></o:p></p>
        </div>
        <div>
          <p class="MsoNormal"><o:p> </o:p></p>
        </div>
        <div>
          <p class="MsoNormal">This is pretty much the 5th JSON schema
            draft we’ve developed for, not counting all the X3D
            versions.<o:p></o:p></p>
        </div>
        <div>
          <p class="MsoNormal"><o:p> </o:p></p>
        </div>
        <div>
          <p class="MsoNormal">We have X3DJSONLD deployed in 2 browsers
            and on sourceforge.   Does anyone want to discuss SAI for
            building a scenegraph from X3DJSON?  What approaches are out
            there?<o:p></o:p></p>
        </div>
        <div>
          <p class="MsoNormal"><o:p> </o:p></p>
        </div>
        <div>
          <p class="MsoNormal">What’s worrying me is the lack of
            expressively in X3DUOM compared to other schemas
             (geoSystem, oneOf).   Perhaps we should convert to a
            textual SysML?   Is there a modeling language which
            encompasses everything we want to do with schemas and
            semantics?<o:p></o:p></p>
        </div>
        <div>
          <p class="MsoNormal"><o:p> </o:p></p>
        </div>
        <div>
          <p class="MsoNormal">John<o:p></o:p></p>
        </div>
        <div>
          <div>
            <div>
              <p class="MsoNormal"><o:p> </o:p></p>
              <div>
                <p class="MsoNormal">Sent from my iPad<o:p></o:p></p>
              </div>
              <div>
                <p class="MsoNormal" style="margin-bottom:12.0pt"><o:p> </o:p></p>
                <blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
                  <p class="MsoNormal" style="margin-bottom:12.0pt">On
                    Oct 25, 2021, at 2:10 AM, Brutzman, Donald (Don)
                    (CIV) <a class="moz-txt-link-rfc2396E" href="mailto:brutzman@nps.edu"><brutzman@nps.edu></a> wrote:<o:p></o:p></p>
                </blockquote>
              </div>
              <blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
                <div>
                  <p class="MsoNormal"> <o:p></o:p></p>
                  <p class="MsoNormal">Hi Joe.  The USE pattern we were
                    working on in the X3D JSON Schema was common to all
                    nodes, not just HAnim nodes.  So no change of
                    functionality expected.<o:p></o:p></p>
                  <p class="MsoNormal"> <o:p></o:p></p>
                  <p class="MsoNormal">We are always striving for
                    consistent expressive power for all the different
                    language bindings and file encodings.<o:p></o:p></p>
                  <p class="MsoNormal"> <o:p></o:p></p>
                  <p class="MsoNormal">We have 3950 X3D Examples to
                    test.  More are always welcome for the archives if
                    you think that further coverage is needed of some
                    capability.<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"">-- <br>
                      Don Brutzman  Naval Postgraduate School, Code
                      USW/Br        <a class="moz-txt-link-abbreviated" href="mailto:brutzman@nps.edu">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="https://faculty.nps.edu/brutzman"
                        moz-do-not-send="true"
                        class="moz-txt-link-freetext">https://faculty.nps.edu/brutzman</a></span><o:p></o:p></p>
                  <p class="MsoNormal"> <o:p></o:p></p>
                  <div style="border:none;border-top:solid #E1E1E1
                    1.0pt;padding:3.0pt 0in 0in 0in">
                    <p class="MsoNormal"><b>From: </b><a
                        href="mailto:joedwil@earthlink.net"
                        moz-do-not-send="true">Joseph D Williams</a><br>
                      <b>Sent: </b>Sunday, October 24, 2021 5:12 PM<br>
                      <b>To: </b><a href="mailto:yottzumm@gmail.com"
                        moz-do-not-send="true">John Carlson</a>; <a
                        href="mailto:brutzman@nps.edu"
                        moz-do-not-send="true">Brutzman, Donald (Don)
                        (CIV)</a><br>
                      <b>Cc: </b><a href="mailto:x3d-public@web3d.org"
                        moz-do-not-send="true">X3D Public Mailing List
                        (x3d-public@web3d.org)</a><br>
                      <b>Subject: </b>RE: [x3d-public] JSON Schema
                      meeting minutes<o:p></o:p></p>
                  </div>
                  <p class="MsoNormal"> <o:p></o:p></p>
                  <div>
                    <p class="MsoNormal">Hi John, Getting this to work
                      will help. Are you looking for examples to
                      validate, beginning with a .x3d file? <o:p></o:p></p>
                    <p class="MsoNormal">If I can include USE in the
                      HanimDisplacer pt. then I can include USE as
                      Interpolator key and value fields(?)<o:p></o:p></p>
                    <p class="MsoNormal">Including a USE in any of the
                      HAnim… nodes Joints, Segments, Sites is not going
                      to work unless, well, I can’t really see how it
                      would work in a ‘standard’ humanoid.<o:p></o:p></p>
                    <p class="MsoNormal"> <o:p></o:p></p>
                    <p class="MsoNormal">Thanks,<o:p></o:p></p>
                    <p class="MsoNormal">Joe<o:p></o:p></p>
                    <p class="MsoNormal"> <o:p></o:p></p>
                    <p class="MsoNormal"> <o:p></o:p></p>
                    <div style="border:none;border-top:solid #E1E1E1
                      1.0pt;padding:3.0pt 0in 0in 0in">
                      <p class="MsoNormal"><b>From: </b><a
                          href="mailto:yottzumm@gmail.com"
                          moz-do-not-send="true">John Carlson</a><br>
                        <b>Sent: </b>Sunday, October 24, 2021 11:44 AM<br>
                        <b>To: </b><a href="mailto:brutzman@nps.edu"
                          moz-do-not-send="true">Brutzman, Donald (Don)
                          (CIV)</a><br>
                        <b>Cc: </b><a
                          href="mailto:x3d-public@web3d.org"
                          moz-do-not-send="true">X3D Public Mailing List
                          (x3d-public@web3d.org)</a><br>
                        <b>Subject: </b>Re: [x3d-public] JSON Schema
                        meeting minutes<o:p></o:p></p>
                    </div>
                    <p class="MsoNormal"> <o:p></o:p></p>
                    <p class="MsoNormal">Don, schema is here, python
                      seems to be working with added metaschema checks.<br>
                      <br>
                      <a
href="https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fcoderextreme%2FX3DJSONLD%2Ftree%2Fmaster%2Fsrc%2Fmain%2Fschema&data=04%7C01%7Cbrutzman%40nps.edu%7C51fbb182092b4d5bb02c08d9974c199c%7C6d936231a51740ea9199f7578963378e%7C0%7C0%7C637707175517256956%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000&sdata=ZcklHNEBEtinlpnaTacqhx6dQUY2X0MYdh7vhMIRo1M%3D&reserved=0"
                        moz-do-not-send="true">https://github.com/coderextreme/X3DJSONLD/tree/master/src/main/schema</a><o:p></o:p></p>
                    <div>
                      <p class="MsoNormal"> <o:p></o:p></p>
                    </div>
                    <div>
                      <p class="MsoNormal">Next on agenda is bpy to JSON
                        conversion, possibly with added GUI/X3D
                        conversion tool.<o:p></o:p></p>
                    </div>
                    <div>
                      <div>
                        <p class="MsoNormal"> <o:p></o:p></p>
                      </div>
                      <div>
                        <p class="MsoNormal">John<o:p></o:p></p>
                      </div>
                      <div>
                        <p class="MsoNormal"> <o:p></o:p></p>
                      </div>
                      <div>
                        <div>
                          <p class="MsoNormal">Sent from my iPad<o:p></o:p></p>
                        </div>
                        <div>
                          <p class="MsoNormal"
                            style="margin-bottom:12.0pt"> <o:p></o:p></p>
                          <blockquote
                            style="margin-top:5.0pt;margin-bottom:5.0pt">
                            <p class="MsoNormal"
                              style="margin-bottom:12.0pt">On Oct 18,
                              2021, at 5:09 PM, Brutzman, Donald (Don)
                              (CIV) <a class="moz-txt-link-rfc2396E" href="mailto:brutzman@nps.edu"><brutzman@nps.edu></a> wrote:<o:p></o:p></p>
                          </blockquote>
                        </div>
                        <blockquote
                          style="margin-top:5.0pt;margin-bottom:5.0pt">
                          <div>
                            <p class="MsoNormal"> <o:p></o:p></p>
                            <p class="MsoNormal">John and I reviewed his
                              latest schema today and discussed various
                              design considerations.<o:p></o:p></p>
                            <p class="MsoNormal"> <o:p></o:p></p>
                            <p class="MsoNormal">His latest version,
                              generated by a Python program reading
                              X3DUOM, is found as follows:<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 lfo2"><a class="moz-txt-link-freetext" href="https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/schema/x3d-4.0-JSONSchema.json">https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/schema/x3d-4.0-JSONSchema.json</a><o:p></o:p></li>
                            </ul>
                            <p class="MsoNormal"> <o:p></o:p></p>
                            <p class="MsoNormal">Looking at the result
                              in Firefox was helpful because that has a
                              great way to look at JSON which allowed us
                              to iconize/expand (fold/unfold) as
                              needed.  Excerpt follows.<o:p></o:p></p>
                            <p class="MsoNormal"> <o:p></o:p></p>
                            <p class="MsoNormal">The result looks
                              great.  One refinement John will handle:
                              for nodes with a USE field, no -children
                              nodes are permitted.<o:p></o:p></p>
                            <p class="MsoNormal"> <o:p></o:p></p>
                            <p class="MsoNormal">Once he has the next
                              version, I will check it into the
                              specifications directory (next to X3D XML
                              Schema and XML DOCTYPE).<o:p></o:p></p>
                            <p class="MsoNormal"> <o:p></o:p></p>
                            <p class="MsoNormal">At that point we are
                              ready to begin further validation efforts
                              using multivarious tools against the many
                              X3D examples in JSON, such as<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 lfo2"><a class="moz-txt-link-freetext" href="https://savage.nps.edu/Savage/GroundVehicles/Jeep/Jeep.json">https://savage.nps.edu/Savage/GroundVehicles/Jeep/Jeep.json</a><o:p></o:p></li>
                            </ul>
                            <p class="MsoNormal"> <o:p></o:p></p>
                            <p class="MsoNormal">Testing without regex
                              patterns is good for now.  A prior version
                              had acceptable regex, so that appears to
                              be do-able.<o:p></o:p></p>
                            <p class="MsoNormal"> <o:p></o:p></p>
                            <p class="MsoNormal">Having fun with X3D
                              JSON!  8)<o:p></o:p></p>
                            <p class="MsoNormal"><span
                                style="font-size:10.0pt;font-family:"Courier
                                New""> </span><o:p></o:p></p>
                            <p class="MsoNormal"><span
                                style="font-size:10.0pt;font-family:"Courier
                                New"">all the best, Don</span><o:p></o:p></p>
                            <p class="MsoNormal"><span
                                style="font-size:10.0pt;font-family:"Courier
                                New"">-- </span><o:p></o:p></p>
                            <p class="MsoNormal"><span
                                style="font-size:10.0pt;font-family:"Courier
                                New"">Don Brutzman  Naval
                                Postgraduate School, Code USW/Br       
                                <a class="moz-txt-link-abbreviated" href="mailto:brutzman@nps.edu">brutzman@nps.edu</a></span><o:p></o:p></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</span><o:p></o:p></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</span><o:p></o:p></p>
                          </div>
                        </blockquote>
                      </div>
                    </div>
                    <p class="MsoNormal"
style="mso-margin-top-alt:0in;margin-right:2.0in;margin-bottom:5.0pt;margin-left:2.0in"> <o:p></o:p></p>
                  </div>
                  <p class="MsoNormal"> <o:p></o:p></p>
                </div>
              </blockquote>
            </div>
          </div>
        </div>
        <p class="MsoNormal"
style="mso-margin-top-alt:0in;margin-right:.5in;margin-bottom:5.0pt;margin-left:.5in"> <o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
      </div>
    </blockquote>
  </body>
</html>