"users":
{
"first":["Homer","Hank","Peter"],
"last":["Simpson","Hill","Griffin"]
},
then the information about the original structure can be restored by a set of object paths which need to be "rotated" from column to row orientation.
["users"]saving a few characters in the process. though I see that the advantage of this system is supposedly that it can handle any sort of shape of data, not just ones with a fixed schema. I've been trying to figure out how trang [http://www.thaiopensource.com/relaxng/trang.html] does its schema inference trick. (it turns a set of xml files into a relaxNG schema). If you have a schema for a JSON file, it's knowledge you can apply to algorithmically creating really efficient transformations.