[x3d-public] x3d.js big, X3D4 JSON schema big, can we reduce size?

Don Brutzman brutzman at nps.edu
Sun Apr 4 22:31:35 PDT 2021


John, compression is likely useless because we can't develop a schema if it is encoded in binary.

The key to making such a schema smaller lies in whether JSON Schema is object oriented or not.

If object oriented, then all of the shared strongly typed field information doesn't have to appear multiple times.

X3DUOM includes the entire X3D inheritance hierarchy so this can be automated.

After searching I think the descriptions you seek can be found at (of all places) the JSON schema documentation:

* Understanding JSON Schema 7.0, Structuring a complex schema
   https://json-schema.org/understanding-json-schema/structuring.html#structuring-a-complex-schema

Again the key here is to not perform brute-force heroics on a gigantic schema by hand.

Instead make a series of JSON schemas of gradually increasing expressive power that validate something extremely simple, like HelloTriangle.json or Hello World.json models.

* X3D Example Archives: X3D4WA, X3D for Web Authors, Chapter 01 Technical Overview, Hello Triangle
   https://x3dgraphics.com/examples/X3dForWebAuthors/Chapter01TechnicalOverview/HelloTriangleIndex.html
   https://x3dgraphics.com/examples/X3dForWebAuthors/Chapter01TechnicalOverview/HelloTriangle.json
   https://x3dgraphics.com/examples/X3dForWebAuthors/Chapter01TechnicalOverview/HelloTriangle.x3d

On 4/3/2021 10:56 PM, John Carlson wrote:
> 
> I think we can make some effort to reduce the size of the X3D JSON
> auto-generated schema (especially 4.0).  There is a lot of duplicated
> stuff there, I think.
> 
> We can look to Roy's schema for inspiration, likely.
> 
> es6x3d/x3d.js grew by an order of magnitude just by sitting there.  I
> think it's too big now.
> 
> Is there an optimizer person available?
> 
> Thanks!
> 
> John

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