[langsec-discuss] TJSON: Tagged JSON with Rich Types

Sven M. Hallberg pesco at khjk.org
Thu Nov 3 09:46:04 UTC 2016


Tony Arcieri <bascule at gmail.com> on Wed, Nov 02 2016:
>     {"foo:s": "bar"}

Suddenly your grammar for the value depends on a piece of information
inside the key...


> This means the only type allowed for member names is a string (which seems
> fine to me).

This one I would actually suggest for consideration in the original
form. {"s:x": "s:foo", "s:y": "s:bar", "s:z": "s:baz"} just seems kind
of silly.


>     {"dialpad:A<A<i>>": [["1","2","3"], ["4","5","6"], ["7","8","9]]}

Now this looks definitely context-sensitive. One nested structure on the
right of the ':' depending on another to the left. You can no longer get
away with a grammar but you'll have all the fun of a type system.

Also I'm sure some will want their heterogenous lists back.


>     {"myobjects:A<O>": [{"foo:i":"1"},{"bar:i":"2"},{"baz:i":"3"}]}

Wait a minute, why are you stopping at objects with the type
refinement? Shouldn't you put your entire schema into the type?

Obviously, that's half ironic/rhethoric, but it seems clear that this
scheme is a complication of the original, so not a Pareto-efficient
improvement.


-pesco


More information about the langsec-discuss mailing list