<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=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@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:"Segoe UI Emoji";
        panose-1:2 11 5 2 4 2 4 2 2 3;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style></head><body lang=EN-US link=blue vlink="#954F72"><div class=WordSection1><p class=MsoNormal>Yeah, we’ll have to otherwise choose something besides the contents of acceptableNodeTypes to make it acceptable to definitions in JSON schema.   We probably want to make it at least somewhat understandable. Suggestions are welcome.  I believe Roy did a good job selecting names.  Perhaps we could create a mapping from definitions to Roy’s strings?</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>John</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Sent from <a href="https://go.microsoft.com/fwlink/?LinkId=550986">Mail</a> for Windows 10</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:brutzman@nps.edu">Brutzman, Donald (Don) (CIV)</a><br><b>Sent: </b>Sunday, May 26, 2019 5:24 PM<br><b>To: </b><a href="mailto:yottzumm@gmail.com">John Carlson</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] patch to JSON schemas</p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>perhaps this misunderstanding is that acceptableNodeTypes is not a URL or a URI, rather a list of nodes that are acceptable substitutes.  so the field has type string.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>On 5/26/2019 11:19 AM, John Carlson wrote:</p><p class=MsoNormal>> See link for discussion and link to URI RFC.  I’m fairly sure | is not a valid URI character.   That is, you can’t issue a POSIX command with pipes in a URI, even though some people would like to.  I am pretty sure I’ve tried that and failed <span style='font-family:"Segoe UI Emoji",sans-serif'>😊</span></p><p class=MsoNormal>> </p><p class=MsoNormal>> https://github.com/everit-org/json-schema/issues/258</p><p class=MsoNormal>> </p><p class=MsoNormal>> I hope this satisfies you that I’ve done the right thing.  Obviously, we will have to verify through the whole system.</p><p class=MsoNormal>> </p><p class=MsoNormal>> In other words, JSON schema says uri or uri-reference, I think.  You can check the hyper or meta schema.   Good luck!</p><p class=MsoNormal>> </p><p class=MsoNormal>> What would you like to use instead that’s a valid URI character?</p><p class=MsoNormal>> </p><p class=MsoNormal>> I have generated JSON from fuzz.js and pass the result of fuzz.js through jsonlint.  That’s the only testing I’ve done.</p><p class=MsoNormal>> </p><p class=MsoNormal>> Wow, I actually sorted this in advance, just had to find the GitHub issue <span style='font-family:"Segoe UI Emoji",sans-serif'>😊</span></p><p class=MsoNormal>> </p><p class=MsoNormal>> Now I need to tell Ajv that | is not acceptable in a URL.</p><p class=MsoNormal>> </p><p class=MsoNormal>> Thanks,</p><p class=MsoNormal>> </p><p class=MsoNormal>> John</p><p class=MsoNormal>> </p><p class=MsoNormal>> Sent from Mail <https://go.microsoft.com/fwlink/?LinkId=550986> for Windows 10</p><p class=MsoNormal>> </p><p class=MsoNormal>> *From: *Brutzman, Donald (Don) (CIV) <mailto:brutzman@nps.edu></p><p class=MsoNormal>> *Sent: *Sunday, May 26, 2019 2:23 AM</p><p class=MsoNormal>> *To: *John Carlson <mailto:yottzumm@gmail.com></p><p class=MsoNormal>> *Cc: *X3D Graphics public mailing list <mailto:x3d-public@web3d.org></p><p class=MsoNormal>> *Subject: *Re: [x3d-public] patch to JSON schemas</p><p class=MsoNormal>> </p><p class=MsoNormal>> understood but the right question is what does JSON schema say (if anything).</p><p class=MsoNormal>> </p><p class=MsoNormal>> On 5/24/2019 8:00 AM, John Carlson wrote:</p><p class=MsoNormal>> </p><p class=MsoNormal>>  > Everit would not accept |, so I converted it.  I suggest + if that’s acceptable to the validators/schema. Also – would be acceptable to me</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > John</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > Sent from Mail <https://go.microsoft.com/fwlink/?LinkId=550986> for Windows 10</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > *From: *Brutzman, Donald (Don) (CIV) <mailto:brutzman@nps.edu></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > *Sent: *Friday, May 24, 2019 9:03 AM</p><p class=MsoNormal>> </p><p class=MsoNormal>>  > *To: *John Carlson <mailto:yottzumm@gmail.com></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > *Cc: *X3D Graphics public mailing list <mailto:x3d-public@web3d.org></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > *Subject: *Re: [x3d-public] patch to JSON schemas</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > Hi John.  Thanks for keeping things tuned up as best we can while we await JSON Schema finalization.</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > ===================================</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > http://json-schema.org</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > "The current version is draft-07!"</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > "Update as of 31 March 2019.  You may be wondering what in the world is going on with this draft? The short version is: we are entering the home stretch. There are some ideas for simplifying $id that we are considering, and then there will be a final review period for feedback on overall flow and clarity."</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > ===================================</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > and</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > https://github.com/json-schema-org/json-schema-spec/milestone/6</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > "draft-08, Past due by 4 months, 93% complete.  This theme of draft-08 is re-use and modularity."</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > ===================================</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > The patch you applied using %7C seems less readable and harder to maintain than the existing entries.  As an example, I assume that you are modifying constructs such as</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > XML Schema</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >                  <xs:element name="skin" type="MFNode" fixed="inputOutputField" default="Group|Transform|Shape|IndexedFaceSet"/></p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > X3DUOM</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >                  <field type="MFNode"</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >                      accessType="inputOutput"</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >                      name="skin"</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >                      acceptableNodeTypes="Group|Transform|Shape|IndexedFaceSet"/></p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > to produce an excerpt like</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > [line 27420]</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >                  "-Group%7CTransform%7CShape%7CIndexedFaceSetMFNode": {</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > [lines 9130-9132]</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >                  "-skin": {</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >                 "$ref": "#/definitions/-Group%7CTransform%7CShape%7CIndexedFaceSetMFNode"</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >               },</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > Issues:</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > a. what does JSON Schema currently suggest for such constructs?</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > b. is the original | character triggering a problem or unacceptable for some reason?</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > c. is there any way to validate these schemas yet?</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > d. Why is MFNode tacked on the end?</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > e. Are you turning acceptableNodeTypes value into a JSON label?  If so, perhaps a hyphen is better.</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > f. what does fuzz.js do?</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > Suggest we plan to give a full scrub when json-schema draft-08 is released, that will also let us provide feedback to them.</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > On 5/23/2019 4:51 AM, John Carlson wrote:</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >  > A patch was made to JSON schema generation to replace | with %7C in more places.</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >  > All generated JSON schemas were affected</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >  > This fixed was verified with the fuzz.js JSON schema driven examples.</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >  > The whole scenario means we need a test plan.</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >  > New schemas are here:</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >  > https://github.com/coderextreme/X3DJSONLD/tree/master/src/main/schema</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  >  > John</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > all the best, Don</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > --</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > Don Brutzman  Naval Postgraduate School, Code USW/Br       brutzman@nps.edu</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>>  > X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman</p><p class=MsoNormal>> </p><p class=MsoNormal>>  ></p><p class=MsoNormal>> </p><p class=MsoNormal>> all the best, Don</p><p class=MsoNormal>> </p><p class=MsoNormal>> -- </p><p class=MsoNormal>> </p><p class=MsoNormal>> Don Brutzman  Naval Postgraduate School, Code USW/Br       brutzman@nps.edu</p><p class=MsoNormal>> </p><p class=MsoNormal>> Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149</p><p class=MsoNormal>> </p><p class=MsoNormal>> X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman</p><p class=MsoNormal>> </p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>all the best, Don</p><p class=MsoNormal>-- </p><p class=MsoNormal>Don Brutzman  Naval Postgraduate School, Code USW/Br       brutzman@nps.edu</p><p class=MsoNormal>Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149</p><p class=MsoNormal>X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman</p><p class=MsoNormal><o:p> </o:p></p></div></body></html>