如何在golang中将发布数据解析回原始格式?

Ok, i think this question is NOT a question in others web programming language like php, python.

but i met this question in golang and confused what is the best way to convert the post raw data back into it's original format.

and here is a sample.

1 original representation is an array consists of map:

photo[1][tags]{id: 1, direction:1, x: 1.0, y: 2, word: 'pull'}
photo[1][tags]{id: 2, direction:0, x: 2.0, y: 1.1, word: 'fi'}

process handler

func testPostData(w http.ResponseWriter, r *http.Request) error{
    r.ParseMultipartForm(10 << 20)
    data := r.ParseMultipartForm.Value
    fmt.Println(data)
}

**2** outputs in console
map[photo[1][tags][][direction]:[0]
    photo[1][tags][][word]:[fi]
    photo[1][tags][][x]:[1.1]
    photo[1][tags][][id]:[2]]

i'm a newbie to golang, so i think there is a way to help to convert data back to its original representation, here is convert 2 back to 1