code: func mkns(ns string, obj interface{}, name ...*xml.Name) string {
  	ns += ":"
  	for i := range name {
  		name[i].Space = ""
  		if !strings.HasPrefix(name[i].Local, ns) {
  			name[i].Local = ns + name[i].Local
  		}
  	}
  
  	return Marshal(obj)
  }
docs: // mkns prepends the given namespace to xml.Name.Local and returns obj encoded as xml.
  // Note that the namespace is required when encoding, but the namespace prefix must not be
  // present when decoding as Go's decoding does not handle namespace prefix.