I think I got ahead of things with this one. Doing this will create a bunch of inconsistencies among versions which just seem weird. I think this change is now more like:
1. Get out GraphSON 3.0+untyped to consistently have an untyped option across versions. It will basically match the other untyped versions. 2. Reserve the listed changes for GraphSON 4.0/GraphBinary 2.0. We could probably use that opportunity to get rid of the JVM types. I'll create a few JIRAs and leave it at that for now. On Wed, Jul 12, 2023 at 12:44 PM Stephen Mallette <spmalle...@gmail.com> wrote: > As a final thing in the serialization work I picked up, I think we need > untyped GraphSON 3.0 to go along with 1.0 and 2.0 so basically: > > application/vnd.gremlin-v3.0+json;types=false > > I think it follows 1.0 untyped more closely than 2.0 untyped because 1.0 > was much easier to consume. The basic premise here will be to follow 1.0 > format: > > https://tinkerpop.apache.org/docs/3.6.4/dev/io/#graphson-1d0 > > with a few changes/additions: > > 1. allow for multi-label on vertices as more graphs are allowing that > these days. > 2. use our "~" prefix for any structural/reserved keys like T.label or > T.id for example > 3. possibly get the Tree right (though we dont even have that for typed > GraphSON 3.0 - maybe something like: > > { > "node": {}, > "children": [{ > "node": {}, > "children": [] > }, > { > "node": {}, > "children": [] > }, > { > "node": {}, > "children": [{ > "node": {}, > "children": [] > }] > }] > } > > please let me know if there's anything else to include. > > > >