Thanks for responding.
As for serialization - there is no single answer. We can even see recently that some projects are developing yet another serialization format. Eg: Ethereum, Cosmos, Polkadot. Cosmos, in particular, spent 1 year developing their serialization protocol!
JSON is good for some parts. JSON+Gzip works well if you don’t deal too much with random data (so more like real world records, text, description, spreadsheets…).
There are reasons why some DBs are not using JSON+gzip. Most importantly like efficiency (JSON is slow, and then you need to add gzip on top of that). Probably efficiency will not be a case here, but it’s still worth to consider the following points:
- are we going to design this standard for smart-contracts? If yes then I would argue that JSON+gzip is not a good solution (because it will consume an order of magnitude more gas).
- readability - as explained above, JSON+gzip is not readable. Even if you will have handy gzip, bigger JSON records you will need to pretty print, because minimized ones are not readable.
- if we just target with this standarad a method how to record an arbitrary data, then serialization (as, I think you were writing) may be only a recommendation.
It’s still worth to think if would like to use this mechanism for smart-contracts. I think today the smart-contract is not able to get information about a past transaction? So today this won’t be easily accessible for smart-contracts anyway.