<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>Don,</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>My validators seem to be in shambles.  I converted the separator character back to | for now.   I will have to address this rather sooner than later.  I tried +,-,| as separators.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>If you want to look at x3dschema, it should be in my repositories.</p><p class=MsoNormal><br>I believe the main command I run is</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>sh validate.sh</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>I think the main issue is that I don’t have any JSON in /c/x3d-code/www.web3d.org/x3d/content/examples</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>So I’ll have to find a time to download and unpack the JSON, or run a converter.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>The main python program to edit (search for |) is</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>X3DJSONLD/src/main/python/etgenerateJSONschema.py</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Shell script to run all schemas.</p><p class=MsoNormal>X3DJSONLD/src/main/shell/generateSchema.sh</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Schemas are here:</p><p class=MsoNormal><a href="https://github.com/coderextreme/x3dschema/">https://github.com/coderextreme/x3dschema/</a></p><p class=MsoNormal><a href="https://github.com/coderextreme/X3DJSONLD/tree/master/src/main/schema">https://github.com/coderextreme/X3DJSONLD/tree/master/src/main/schema</a></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:yottzumm@gmail.com">John Carlson</a><br><b>Sent: </b>Sunday, May 26, 2019 1:19 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] patch to JSON schemas</p></div><p class=MsoNormal><o:p> </o:p></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><o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><a href="https://github.com/everit-org/json-schema/issues/258">https://github.com/everit-org/json-schema/issues/258</a><o:p></o:p></p><p class=MsoNormal><o:p> </o:p></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.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></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!<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>What would you like to use instead that’s a valid URI character?<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></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.<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></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><o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Now I need to tell Ajv that | is not acceptable in a URL.<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><o:p> </o:p></p><p class=MsoNormal>John<o:p></o:p></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<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:brutzman@nps.edu">Brutzman, Donald (Don) (CIV)</a><br><b>Sent: </b>Sunday, May 26, 2019 2:23 AM<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<o:p></o:p></p></div><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>understood but the right question is what does JSON schema say (if anything).<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>On 5/24/2019 8:00 AM, John Carlson wrote:<o:p></o:p></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<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> John<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> Sent from Mail <https://go.microsoft.com/fwlink/?LinkId=550986> for Windows 10<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> *From: *Brutzman, Donald (Don) (CIV) <mailto:brutzman@nps.edu><o:p></o:p></p><p class=MsoNormal>> *Sent: *Friday, May 24, 2019 9:03 AM<o:p></o:p></p><p class=MsoNormal>> *To: *John Carlson <mailto:yottzumm@gmail.com><o:p></o:p></p><p class=MsoNormal>> *Cc: *X3D Graphics public mailing list <mailto:x3d-public@web3d.org><o:p></o:p></p><p class=MsoNormal>> *Subject: *Re: [x3d-public] patch to JSON schemas<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> Hi John.  Thanks for keeping things tuned up as best we can while we await JSON Schema finalization.<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><p class=MsoNormal>> http://json-schema.org<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> "The current version is draft-07!"<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></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."<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><p class=MsoNormal>> and<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> https://github.com/json-schema-org/json-schema-spec/milestone/6<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> "draft-08, Past due by 4 months, 93% complete.  This theme of draft-08 is re-use and modularity."<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><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<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> XML Schema<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>>                  <xs:element name="skin" type="MFNode" fixed="inputOutputField" default="Group|Transform|Shape|IndexedFaceSet"/><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> X3DUOM<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>>                  <field type="MFNode"<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>>                      accessType="inputOutput"<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>>                      name="skin"<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>>                      acceptableNodeTypes="Group|Transform|Shape|IndexedFaceSet"/><o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> to produce an excerpt like<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> [line 27420]<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>>                  "-Group%7CTransform%7CShape%7CIndexedFaceSetMFNode": {<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> [lines 9130-9132]<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>>                  "-skin": {<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>>                 "$ref": "#/definitions/-Group%7CTransform%7CShape%7CIndexedFaceSetMFNode"<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><p class=MsoNormal>> Issues:<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> a. what does JSON Schema currently suggest for such constructs?<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> b. is the original | character triggering a problem or unacceptable for some reason?<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> c. is there any way to validate these schemas yet?<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> d. Why is MFNode tacked on the end?<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> e. Are you turning acceptableNodeTypes value into a JSON label?  If so, perhaps a hyphen is better.<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> f. what does fuzz.js do?<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></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.<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> On 5/23/2019 4:51 AM, John Carlson wrote:<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>>  > A patch was made to JSON schema generation to replace | with %7C in more places.<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><p class=MsoNormal>>  > All generated JSON schemas were affected<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><p class=MsoNormal>>  > This fixed was verified with the fuzz.js JSON schema driven examples.<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><p class=MsoNormal>>  > The whole scenario means we need a test plan.<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><p class=MsoNormal>>  > New schemas are here:<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><p class=MsoNormal>>  > https://github.com/coderextreme/X3DJSONLD/tree/master/src/main/schema<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><p class=MsoNormal>>  > John<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> all the best, Don<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><p class=MsoNormal>> Don Brutzman  Naval Postgraduate School, Code USW/Br       brutzman@nps.edu<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149<o:p></o:p></p><p class=MsoNormal>> <o:p></o:p></p><p class=MsoNormal>> X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman<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><p class=MsoNormal>all the best, Don<o:p></o:p></p><p class=MsoNormal>-- <o:p></o:p></p><p class=MsoNormal>Don Brutzman  Naval Postgraduate School, Code USW/Br       brutzman@nps.edu<o:p></o:p></p><p class=MsoNormal>Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149<o:p></o:p></p><p class=MsoNormal>X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman<o:p></o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p></div></body></html>