JSON Model Grammar
     
         JSON   := (MAP | ARRAY)
         NODE   := (MAP | ARRAY | SCALAR)
         MAP    := (STRING, NODE)*
         ARRAY  := NODE*
         SCALAR := (string | number | boolean | null)