[x3d-public] JSON Schema meeting minutes
Joseph D Williams
joedwil at earthlink.net
Sun Oct 31 18:45:57 PDT 2021
Does anyone want to discuss SAI for building a scenegraph from X3DJSON? What approaches are out there?
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.
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.
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😊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).
Thanks,
Joe
From: Joseph D Williams
Sent: Saturday, October 30, 2021 3:52 PM
To: John Carlson; Brutzman, Donald (Don) (CIV); x3d-public at web3d.org
Subject: Re: [x3d-public] JSON Schema meeting minutes
➢ Is there a modeling language which encompasses everything we want to do with schemas and semantics?
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?
➢ textual SysML
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?
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.
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.
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.
Joe
From: John Carlson
Sent: Friday, October 29, 2021 3:18 PM
To: Brutzman, Donald (Don) (CIV); x3d-public at web3d.org
Subject: Re: [x3d-public] JSON Schema meeting minutes
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.
Note that X3D JSON schema depends on JSON schema for vocabulary.
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.
I may still have code around that converts xsd to owl to vowl if anyone is interested.
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.
This is pretty much the 5th JSON schema draft we’ve developed for, not counting all the X3D versions.
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?
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?
John
Sent from my iPad
On Oct 25, 2021, at 2:10 AM, Brutzman, Donald (Don) (CIV) <brutzman at nps.edu> wrote:
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.
We are always striving for consistent expressive power for all the different language bindings and file encodings.
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.
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 https://faculty.nps.edu/brutzman
From: Joseph D Williams
Sent: Sunday, October 24, 2021 5:12 PM
To: John Carlson; Brutzman, Donald (Don) (CIV)
Cc: X3D Public Mailing List (x3d-public at web3d.org)
Subject: RE: [x3d-public] JSON Schema meeting minutes
Hi John, Getting this to work will help. Are you looking for examples to validate, beginning with a .x3d file?
If I can include USE in the HanimDisplacer pt. then I can include USE as Interpolator key and value fields(?)
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.
Thanks,
Joe
From: John Carlson
Sent: Sunday, October 24, 2021 11:44 AM
To: Brutzman, Donald (Don) (CIV)
Cc: X3D Public Mailing List (x3d-public at web3d.org)
Subject: Re: [x3d-public] JSON Schema meeting minutes
Don, schema is here, python seems to be working with added metaschema checks.
https://github.com/coderextreme/X3DJSONLD/tree/master/src/main/schema
Next on agenda is bpy to JSON conversion, possibly with added GUI/X3D conversion tool.
John
Sent from my iPad
On Oct 18, 2021, at 5:09 PM, Brutzman, Donald (Don) (CIV) <brutzman at nps.edu> wrote:
John and I reviewed his latest schema today and discussed various design considerations.
His latest version, generated by a Python program reading X3DUOM, is found as follows:
• https://github.com/coderextreme/X3DJSONLD/blob/master/src/main/schema/x3d-4.0-JSONSchema.json
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.
The result looks great. One refinement John will handle: for nodes with a USE field, no -children nodes are permitted.
Once he has the next version, I will check it into the specifications directory (next to X3D XML Schema and XML DOCTYPE).
At that point we are ready to begin further validation efforts using multivarious tools against the many X3D examples in JSON, such as
• https://savage.nps.edu/Savage/GroundVehicles/Jeep/Jeep.json
Testing without regex patterns is good for now. A prior version had acceptable regex, so that appears to be do-able.
Having fun with X3D JSON! 8)
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 https:// faculty.nps.edu/brutzman
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://web3d.org/pipermail/x3d-public_web3d.org/attachments/20211031/838f8e6e/attachment.html>
More information about the x3d-public
mailing list