Ответом оказывается, что для атрибутов вы не используете цепочку идентификаторов. Вместо этого вы используете идентификатор в списке, разделенном запятыми, например:
type SomeType struct {
XMLName xml.Name `xml:"PARENT"`
FirstValue string `xml:"FIRST"`
FirstKey string `xml:"FIRST,KEY,attr"`
SecondValue string `xml:"SECOND"`
SecondKey string `xml:"SECOND,KEY,attr"`
}
Моя интуиция заключалась в том, что все в списке, разделенном запятыми, были ключевыми словами (например, attr
или omitempty
), поэтому я не стал Я не ожидал, что там будет выражено удостоверение личности (например, KEY
), но моя интуиция оказалась неверной. Более подробное обсуждение этого вопроса: здесь .
Редактировать: Я говорил слишком рано. Приведенное выше не принимает значение FirstKey или SecondKey.