XML и JSON теги для структуры Golang?

У меня есть приложение, которое может выводить как JSON или XML в зависимости от заголовков HTTP-запроса. Я могу добиться правильного вывода либо путем добавления правильных тегов к структурам, которые я использую, но я не могу понять, как указать теги для JSON и XML.

Например, это сериализует, чтобы исправить XML:

type Foo struct {
    Id          int64       `xml:"id,attr"`
    Version     int16       `xml:"version,attr"`
}

... и это создает правильный JSON:

type Foo struct {
    Id          int64       `json:"id"`
    Version     int16       `json:"version"`
}

... но это не работает ни для:

type Foo struct {
    Id          int64       `xml:"id,attr",json:"id"`
    Version     int16       `xml:"version,attr",json:"version"`
}

Ответы на вопрос(1)

Ваш ответ на вопрос