This commit is contained in:
zhangsz
2023-08-19 11:03:26 +08:00
parent fecf4d1a36
commit a15c90959a

View File

@@ -1,129 +0,0 @@
package main
import (
"encoding/xml"
"io/ioutil"
)
const (
// Header is a generic XML header suitable for use with the output of Marshal.
// This is not automatically added to any output of this package,
// it is provided as a convenience.
Header = `<?xml version="1.0" encoding="UTF-8"?>` + "\n"
)
type Attribute struct {
Text string `xml:",chardata"`
Name string `xml:"name,attr"`
Type string `xml:"type,attr"`
Use string `xml:"use,attr"`
}
type Schema struct {
XMLName xml.Name `xml:"schema"`
Text string `xml:",chardata"`
Xs string `xml:"xs,attr"`
Xsi string `xml:"xsi,attr"`
ElementFormDefault string `xml:"elementFormDefault,attr"`
AttributeFormDefault string `xml:"attributeFormDefault,attr"`
Element struct {
Text string `xml:",chardata"`
Name string `xml:"name,attr"`
ComplexType struct {
Text string `xml:",chardata"`
Sequence struct {
Text string `xml:",chardata"`
Element []struct {
Text string `xml:",chardata"`
Name string `xml:"name,attr"`
MaxOccurs string `xml:"maxOccurs,attr"`
ComplexType struct {
Text string `xml:",chardata"`
Sequence struct {
Text string `xml:",chardata"`
Element []struct {
Text string `xml:",chardata"`
Name string `xml:"name,attr"`
Type string `xml:"type,attr"`
MinOccurs string `xml:"minOccurs,attr"`
ComplexType struct {
Text string `xml:",chardata"`
Sequence struct {
Text string `xml:",chardata"`
MinOccurs string `xml:"minOccurs,attr"`
MaxOccurs string `xml:"maxOccurs,attr"`
Element struct {
Text string `xml:",chardata"`
Name string `xml:"name,attr"`
ComplexType struct {
Text string `xml:",chardata"`
SimpleContent struct {
Text string `xml:",chardata"`
Extension struct {
Text string `xml:",chardata"`
Base string `xml:"base,attr"`
Attribute struct {
Text string `xml:",chardata"`
Name string `xml:"name,attr"`
Type string `xml:"type,attr"`
Use string `xml:"use,attr"`
} `xml:"attribute"`
} `xml:"extension"`
} `xml:"simpleContent"`
Sequence struct {
Text string `xml:",chardata"`
MinOccurs string `xml:"minOccurs,attr"`
MaxOccurs string `xml:"maxOccurs,attr"`
Element struct {
Text string `xml:",chardata"`
Name string `xml:"name,attr"`
ComplexType struct {
Text string `xml:",chardata"`
SimpleContent struct {
Text string `xml:",chardata"`
Extension struct {
Text string `xml:",chardata"`
Base string `xml:"base,attr"`
Attribute struct {
Text string `xml:",chardata"`
Name string `xml:"name,attr"`
Type string `xml:"type,attr"`
Use string `xml:"use,attr"`
} `xml:"attribute"`
} `xml:"extension"`
} `xml:"simpleContent"`
} `xml:"complexType"`
} `xml:"element"`
} `xml:"sequence"`
Attribute []struct {
Text string `xml:",chardata"`
Name string `xml:"name,attr"`
Type string `xml:"type,attr"`
Use string `xml:"use,attr"`
} `xml:"attribute"`
} `xml:"complexType"`
} `xml:"element"`
} `xml:"sequence"`
} `xml:"complexType"`
} `xml:"element"`
} `xml:"sequence"`
} `xml:"complexType"`
} `xml:"element"`
} `xml:"sequence"`
} `xml:"complexType"`
} `xml:"element"`
}
func GenNRMXmlFile() {
nrmFile := Schema{
Xs: "http://www.w3.org/2001/XMLSchema",
Xsi: "http://www.w3.org/2001/XMLSchema-instance",
ElementFormDefault: "qualified",
AttributeFormDefault: "unqualified",
Element: struct{}{Name: "DataFile"},
}
b, _ := xml.MarshalIndent(nrmFile, "", " ")
b = append([]byte(xml.Header), b...)
ioutil.WriteFile("D:/nrm-demo.xml", b, 0664)
}