code: func XMLToMap(r io.Reader) (map[string]string, error) {
  	m := make(map[string]string)
  	dec := xml.NewDecoder(r)
  	var tagName string
  	for {
  		t, err := dec.Token()
  		if err != nil {
  			if err == io.EOF {
  				break
  			}
  			return nil, err
  		}
  
  		switch v := t.(type) {
  		case xml.StartElement:
  			tagName = string(v.Name.Local)
  		case xml.CharData:
  			m[tagName] = string(v)
  		}
  	}
  	return m, nil
  }
docs: // XMLToMap converts XML to a nested string map.