[x3d-public] Spearheading X3D JSON Schema effort; RelaxNG?

Don Brutzman brutzman at nps.edu
Sat Oct 31 12:27:23 PDT 2015

Thanks for thinking about RelaxNG as a possibility John.  There are some excellent features in RelaxNG that we might take advantage of someday for the .x3d XML encoding.

I think it will be an excellent future project for X3D.  Currently working group members are still focusing on the X3D Schema, X3D Schematron and establishing the foundation for X3D 4.0.  RelaxNG has great expressive power, and is mature and well documented, though not nearly as widely adopted as XML Schema.

I know of one notable spec that uses RelaxNG for validation, MathML, which uses a converter to produce a corresponding XML schema.  However that is in the opposite direction of what you propose.

It is important to be pretty wary when using converters, they often introduce serious artifacts and potential problems.  This is especially sensitive when producing validation schemas, which must be really rigorous.  If you want to lash some things together to help prototype/explore alternatives in the X3D JSON encoding, great.  But keeping expectations adjusted is good.

A significant aspect of JSON Schema is that they are not standardized yet.  So we can't make them a required part of an X3D JSON Encoding, 199776-4.  However we can certainly try to create one.  I suspect that a hand-authored version might eventually work best and will keep looking in that direction.

The status of currently applied validation techniques are listed on the X3D Resources page under Quality Assurance (QA).

Incidentally msv certainly looks cool but also appears from the java.net site that it didn't survive the Oracle takeover of Java, last commits there were 2013.  So it would be prudent to see whether an active developer community has emerged elsewhere.

On 10/30/2015 6:30 PM, John Carlson wrote:
> Also here for the multi-schema validator... https://github.com/kohsuke/msv not sure which one is more up to date.  Will look at this later.
> On Oct 30, 2015 8:14 PM, "John Carlson" <yottzumm at gmail.com <mailto:yottzumm at gmail.com>> wrote:
>     Project for msv is here: https://msv.java.net/ Svn looks like it's available, I see a trunk, but I haven't downloaded.  John
>     On Oct 30, 2015 7:53 PM, "John Carlson" <yottzumm at gmail.com <mailto:yottzumm at gmail.com>> wrote:
>         See this note on stack overflow about converting xsd to relaxng.  I haven't tried it as it's trick or treating here.  I don't know if it's linux only or not.  Anyone know mac or windows versions?  Thanks!
>         http://stackoverflow.com/questions/14803562/how-to-convert-an-xml-schema-xsd-to-relax-ng
>         On Oct 30, 2015 7:25 PM, "Don Brutzman" <brutzman at nps.edu <mailto:brutzman at nps.edu>> wrote:
>             Easy: X3D has an XML schema.  We have not yet worked on a RelaxNG schema.
>             As before, good points for mailing list so that anyone can see/comment and so we have a url for looking back at each email later..
>             On 10/30/2015 4:13 PM, John Carlson wrote:
>                 I am thinking it would be more useful to validate JSON against XSD or RelaxNG.  what are your thoughts?
>                 [...]

all the best, Don
Don Brutzman  Naval Postgraduate School, Code USW/Br       brutzman at nps.edu
Watkins 270,  MOVES Institute, Monterey CA 93943-5000 USA   +1.831.656.2149
X3D graphics, virtual worlds, navy robotics http://faculty.nps.edu/brutzman

More information about the x3d-public mailing list