<div dir="auto">It’s not JSON.  Property names in JSON have double quotes.</div><div dir="auto"><br></div><div dir="auto">My advice is to generate the JavaScript from X3DUOM.  Examples are in X3DJSONLD/src/main/python.</div><div dir="auto"><br></div><div dir="auto">I realize this is using way too many languages.  Please provide a JavaScript generator instead of Python.</div><div dir="auto"><br></div><div dir="auto">It kind of looks like you’re trying to duplicate JSON Schema.  I believe there are additional parts beyond JSON Schema core for creating GUIs.</div><div dir="auto"><br></div><div dir="auto">Let’s continue the discussion.</div><div dir="auto"><br></div><div dir="auto">John</div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, May 2, 2023 at 12:56 PM Andreas Plesch <<a href="mailto:andreasplesch@gmail.com">andreasplesch@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">The editor which is used for<br>
<br>
<a href="https://andreasplesch.github.io/Library/Viewer/index.html" rel="noreferrer" target="_blank">https://andreasplesch.github.io/Library/Viewer/index.html</a><br>
<br>
has autocomplete functionality for xml. It is based on a json data<br>
structure as a source to suggest completions. The json data looks like<br>
this:<br>
<br>
x3d_tags = {<br>
                X3D: {<br>
                    children: ["Scene"]<br>
                },<br>
                Transform: {<br>
                    attrs: {<br>
                        rotation: ["0 1 0 0"],<br>
                        scale: ["1 1 1"],<br>
                        translation: ["0 0 0 0"]<br>
                    }<br>
                },<br>
                Shape: {<br>
                    children: ["Appearance", "IndexedLineSet", "Box",<br>
"Extrusion"],<br>
                },<br>
                Appearance: {<br>
                    children: ["Material", "ImageTexture", "PixelTexture"],<br>
                },<br>
                Material: {<br>
                        attrs: {<br>
                                "diffuseColor": ["0.8 0.8 0.8"],<br>
                                "emissiveColor": ["0 0 0"],<br>
                                "specularColor": ["0.1 0.1 0.1"],<br>
                                "shininess": ["0.1"],<br>
                                "transparency": ["0"]<br>
                        }<br>
                }<br>
            };<br>
<br>
Hopefully, this will not be mangled too badly. Possible tags are<br>
listed as keys which then have possible attribute options and children<br>
tag options as values.<br>
<br>
What would be the closest x3d document structure definition to<br>
construct a complete autocomplete from ?<br>
<br>
Thanks, Andreas<br>
<br>
<br>
<br>
-- <br>
Andreas Plesch<br>
Waltham, MA 02453<br>
<br>
_______________________________________________<br>
x3d-public mailing list<br>
<a href="mailto:x3d-public@web3d.org" target="_blank">x3d-public@web3d.org</a><br>
<a href="http://web3d.org/mailman/listinfo/x3d-public_web3d.org" rel="noreferrer" target="_blank">http://web3d.org/mailman/listinfo/x3d-public_web3d.org</a><br>
</blockquote></div></div>