This is a creation in Article, where the information may have evolved or changed.
Golang XML processing
Attribute must be capitalized when generating XML
package mainimport ( "Encoding/xml" "FMT" "OS") Type xmldas struct { xmlname xml. name ' xml: ' Das ' DataPort string ' xml: ' dataport,attr ' Desc string ' xml: ' desc,attr ' Src xmlsource ' xml: ' source ' Dest xmldestination ' xml: "Destination" '}type xmlsource struct { path string ' xml: ' path,attr ' Param string ' xml: "param,attr" '}type xmldestination struct { path string ' xml: ' path,attr ' Param string ' xml: ' param,attr ' '}func main () { v := xmldas{DataPort: "8250", desc: "123"} v.Src = xmlsource{Path: "123", param: "456"} v. dest = xmldestination{path: "789", param: "} output, " Err := xml. Marshalindent (v, " ", " ") if err != nil { fmt. Printf ("error: %v\n", err) } os. Stdout.write ([]byte (XML. Header)) os. Stdout.write (Output)}