Does it solve the problem of repeating set of keys in an object array, eg. when representing a table?
I don't think using a dictionary of key values is the way to go here. I think there should be a dedicated "table" type, where the column keys are only defined once, and not repeated for every single row.