3) set types, 4) optional schemas 5) multiline strings 6) consistent support for numeric types 7) streaming data
The litany is not short and I'm sure I've overlooked a couple.
The litany is not short and I'm sure I've overlooked a couple.
But if you add too many features, it may end up like XML.
For numeric types, if you handle integer larger than 2 billions or floating numbers where the precision is critical (that's where json fails), these can and should be represented as string. I don't think there is any common format that guarantees large numbers and/or arbitrary precision to be encoded and decoded properly across languages and platforms.
Perhaps CDDL: