Skip to content

Instantly share code, notes, and snippets.

@droyo
Created November 29, 2020 23:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save droyo/1d566c109d86fb34e79244bf27f7cbfe to your computer and use it in GitHub Desktop.
Save droyo/1d566c109d86fb34e79244bf27f7cbfe to your computer and use it in GitHub Desktop.
// Code generated by xsdgen. DO NOT EDIT.
package ws
import (
"bytes"
"encoding/xml"
)
type Anon1 string
// May be one of #default
type Anon3 string
// May be one of xml, html, text
type Anon4 string
// May be one of text, number
type Anon5 string
// May be one of ascending, descending
type Anon6 string
// May be one of upper-first, lower-first
type Anon7 string
type AnyType struct {
}
type Applytemplates struct {
Sort string `xml:"http://www.w3.org/1999/XSL/Transform sort"`
Withparam string `xml:"http://www.w3.org/1999/XSL/Transform with-param"`
Select string `xml:"select,attr,omitempty"`
Mode QName `xml:"mode,attr,omitempty"`
}
func (t *Applytemplates) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error {
type T Applytemplates
var overlay struct {
*T
Select *string `xml:"select,attr,omitempty"`
}
overlay.T = (*T)(t)
overlay.Select = (*string)(&overlay.T.Select)
return d.DecodeElement(&overlay, &start)
}
type Attributeset struct {
Attribute string `xml:"http://www.w3.org/1999/XSL/Transform attribute"`
Name QName `xml:"name,attr"`
Useattributesets QNames `xml:"use-attribute-sets,attr,omitempty"`
Space string `xml:"space,attr,omitempty"`
}
type Attributetype struct {
Charinstruction string `xml:"http://www.w3.org/1999/XSL/Transform char-instruction"`
Toplevelelementandcharinstruction string `xml:"http://www.w3.org/1999/XSL/Transform top-level-element-and-char-instruction"`
Name string `xml:"name,attr"`
Namespace string `xml:"namespace,attr,omitempty"`
Space string `xml:"space,attr,omitempty"`
}
type Calltemplate struct {
Withparam string `xml:"http://www.w3.org/1999/XSL/Transform with-param"`
Name QName `xml:"name,attr"`
}
type Caseorder string
type Choose struct {
When []string `xml:"http://www.w3.org/1999/XSL/Transform when"`
Otherwise string `xml:"http://www.w3.org/1999/XSL/Transform otherwise,omitempty"`
Space string `xml:"space,attr,omitempty"`
}
type Combinestylesheets struct {
}
type Comment struct {
Charinstruction string `xml:"http://www.w3.org/1999/XSL/Transform char-instruction"`
Toplevelelementandcharinstruction string `xml:"http://www.w3.org/1999/XSL/Transform top-level-element-and-char-instruction"`
Space string `xml:"space,attr,omitempty"`
}
type Copy struct {
Item string `xml:",any"`
Toplevelelementandcharinstruction string `xml:"http://www.w3.org/1999/XSL/Transform top-level-element-and-char-instruction"`
Instruction string `xml:"http://www.w3.org/1999/XSL/Transform instruction"`
Resultelement string `xml:"http://www.w3.org/1999/XSL/Transform result-element"`
Space string `xml:"space,attr,omitempty"`
Useattributesets QNames `xml:"use-attribute-sets,attr,omitempty"`
}
type Copyof struct {
Select string `xml:"select,attr"`
}
type Datatype string
type Decimalformat struct {
Name QName `xml:"name,attr,omitempty"`
Decimalseparator string `xml:"decimal-separator,attr,omitempty"`
Groupingseparator string `xml:"grouping-separator,attr,omitempty"`
Infinity string `xml:"infinity,attr,omitempty"`
Minussign string `xml:"minus-sign,attr,omitempty"`
NaN string `xml:"NaN,attr,omitempty"`
Percent string `xml:"percent,attr,omitempty"`
Permille string `xml:"per-mille,attr,omitempty"`
Zerodigit string `xml:"zero-digit,attr,omitempty"`
Digit string `xml:"digit,attr,omitempty"`
Patternseparator string `xml:"pattern-separator,attr,omitempty"`
}
func (t *Decimalformat) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error {
type T Decimalformat
var overlay struct {
*T
Decimalseparator *string `xml:"decimal-separator,attr,omitempty"`
Groupingseparator *string `xml:"grouping-separator,attr,omitempty"`
Infinity *string `xml:"infinity,attr,omitempty"`
Minussign *string `xml:"minus-sign,attr,omitempty"`
NaN *string `xml:"NaN,attr,omitempty"`
Percent *string `xml:"percent,attr,omitempty"`
Permille *string `xml:"per-mille,attr,omitempty"`
Zerodigit *string `xml:"zero-digit,attr,omitempty"`
Digit *string `xml:"digit,attr,omitempty"`
Patternseparator *string `xml:"pattern-separator,attr,omitempty"`
}
overlay.T = (*T)(t)
overlay.Decimalseparator = (*string)(&overlay.T.Decimalseparator)
overlay.Groupingseparator = (*string)(&overlay.T.Groupingseparator)
overlay.Infinity = (*string)(&overlay.T.Infinity)
overlay.Minussign = (*string)(&overlay.T.Minussign)
overlay.NaN = (*string)(&overlay.T.NaN)
overlay.Percent = (*string)(&overlay.T.Percent)
overlay.Permille = (*string)(&overlay.T.Permille)
overlay.Zerodigit = (*string)(&overlay.T.Zerodigit)
overlay.Digit = (*string)(&overlay.T.Digit)
overlay.Patternseparator = (*string)(&overlay.T.Patternseparator)
return d.DecodeElement(&overlay, &start)
}
type Element struct {
Item string `xml:",any"`
Toplevelelementandcharinstruction string `xml:"http://www.w3.org/1999/XSL/Transform top-level-element-and-char-instruction"`
Instruction string `xml:"http://www.w3.org/1999/XSL/Transform instruction"`
Resultelement string `xml:"http://www.w3.org/1999/XSL/Transform result-element"`
Name string `xml:"name,attr"`
Namespace string `xml:"namespace,attr,omitempty"`
Useattributesets QNames `xml:"use-attribute-sets,attr,omitempty"`
Space string `xml:"space,attr,omitempty"`
}
type Elementnames []string
func (x *Elementnames) MarshalText() ([]byte, error) {
result := make([][]byte, 0, len(*x))
for _, v := range *x {
result = append(result, []byte(v))
}
return bytes.Join(result, []byte(" ")), nil
}
func (x *Elementnames) UnmarshalText(text []byte) error {
for _, v := range bytes.Fields(text) {
*x = append(*x, string(v))
}
return nil
}
type Fallback struct {
Item string `xml:",any"`
Toplevelelementandcharinstruction string `xml:"http://www.w3.org/1999/XSL/Transform top-level-element-and-char-instruction"`
Instruction string `xml:"http://www.w3.org/1999/XSL/Transform instruction"`
Resultelement string `xml:"http://www.w3.org/1999/XSL/Transform result-element"`
Space string `xml:"space,attr,omitempty"`
}
type Foreach struct {
Item string `xml:",any"`
Sort []string `xml:"http://www.w3.org/1999/XSL/Transform sort,omitempty"`
Toplevelelementandcharinstruction string `xml:"http://www.w3.org/1999/XSL/Transform top-level-element-and-char-instruction"`
Instruction string `xml:"http://www.w3.org/1999/XSL/Transform instruction"`
Resultelement string `xml:"http://www.w3.org/1999/XSL/Transform result-element"`
Select string `xml:"select,attr"`
Space string `xml:"space,attr,omitempty"`
}
type If struct {
Item string `xml:",any"`
Toplevelelementandcharinstruction string `xml:"http://www.w3.org/1999/XSL/Transform top-level-element-and-char-instruction"`
Instruction string `xml:"http://www.w3.org/1999/XSL/Transform instruction"`
Resultelement string `xml:"http://www.w3.org/1999/XSL/Transform result-element"`
Test string `xml:"test,attr"`
Space string `xml:"space,attr,omitempty"`
}
type Key struct {
Name QName `xml:"name,attr"`
Match string `xml:"match,attr"`
Use string `xml:"use,attr"`
}
// May be one of single, multiple, any
type Level string
type Message struct {
Item string `xml:",any"`
Toplevelelementandcharinstruction string `xml:"http://www.w3.org/1999/XSL/Transform top-level-element-and-char-instruction"`
Instruction string `xml:"http://www.w3.org/1999/XSL/Transform instruction"`
Resultelement string `xml:"http://www.w3.org/1999/XSL/Transform result-element"`
Space string `xml:"space,attr,omitempty"`
Terminate YesOrNo `xml:"terminate,attr,omitempty"`
}
func (t *Message) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error {
type T Message
var overlay struct {
*T
Terminate *YesOrNo `xml:"terminate,attr,omitempty"`
}
overlay.T = (*T)(t)
overlay.Terminate = (*YesOrNo)(&overlay.T.Terminate)
return d.DecodeElement(&overlay, &start)
}
type Method string
type Namespacealias struct {
Stylesheetprefix Prefix `xml:"stylesheet-prefix,attr"`
Resultprefix Prefix `xml:"result-prefix,attr"`
}
type Number struct {
Level Level `xml:"level,attr,omitempty"`
Count string `xml:"count,attr,omitempty"`
From string `xml:"from,attr,omitempty"`
Value string `xml:"value,attr,omitempty"`
Format string `xml:"format,attr,omitempty"`
Lang string `xml:"lang,attr,omitempty"`
Lettervalue string `xml:"letter-value,attr,omitempty"`
Groupingseparator string `xml:"grouping-separator,attr,omitempty"`
Groupingsize string `xml:"grouping-size,attr,omitempty"`
}
func (t *Number) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error {
type T Number
var overlay struct {
*T
Level *Level `xml:"level,attr,omitempty"`
Format *string `xml:"format,attr,omitempty"`
}
overlay.T = (*T)(t)
overlay.Level = (*Level)(&overlay.T.Level)
overlay.Format = (*string)(&overlay.T.Format)
return d.DecodeElement(&overlay, &start)
}
type Order string
type Otherwise struct {
Item string `xml:",any"`
Toplevelelementandcharinstruction string `xml:"http://www.w3.org/1999/XSL/Transform top-level-element-and-char-instruction"`
Instruction string `xml:"http://www.w3.org/1999/XSL/Transform instruction"`
Resultelement string `xml:"http://www.w3.org/1999/XSL/Transform result-element"`
Space string `xml:"space,attr,omitempty"`
}
type Output struct {
Method Method `xml:"method,attr,omitempty"`
Version string `xml:"version,attr,omitempty"`
Encoding string `xml:"encoding,attr,omitempty"`
Omitxmldeclaration YesOrNo `xml:"omit-xml-declaration,attr,omitempty"`
Standalone YesOrNo `xml:"standalone,attr,omitempty"`
Doctypepublic string `xml:"doctype-public,attr,omitempty"`
Doctypesystem string `xml:"doctype-system,attr,omitempty"`
Cdatasectionelements QNames `xml:"cdata-section-elements,attr,omitempty"`
Indent YesOrNo `xml:"indent,attr,omitempty"`
Mediatype string `xml:"media-type,attr,omitempty"`
}
type Prefix string
type Preservespace struct {
Elements Elementnames `xml:"elements,attr"`
}
type Processinginstruction struct {
Charinstruction string `xml:"http://www.w3.org/1999/XSL/Transform char-instruction"`
Toplevelelementandcharinstruction string `xml:"http://www.w3.org/1999/XSL/Transform top-level-element-and-char-instruction"`
Name string `xml:"name,attr"`
Space string `xml:"space,attr,omitempty"`
}
type QName string
type QNames []string
func (x *QNames) MarshalText() ([]byte, error) {
result := make([][]byte, 0, len(*x))
for _, v := range *x {
result = append(result, []byte(v))
}
return bytes.Join(result, []byte(" ")), nil
}
func (x *QNames) UnmarshalText(text []byte) error {
for _, v := range bytes.Fields(text) {
*x = append(*x, string(v))
}
return nil
}
type Sort struct {
Select string `xml:"select,attr,omitempty"`
Lang string `xml:"lang,attr,omitempty"`
Datatype Datatype `xml:"data-type,attr,omitempty"`
Order Order `xml:"order,attr,omitempty"`
Caseorder Caseorder `xml:"case-order,attr,omitempty"`
}
func (t *Sort) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error {
type T Sort
var overlay struct {
*T
Select *string `xml:"select,attr,omitempty"`
Datatype *Datatype `xml:"data-type,attr,omitempty"`
Order *Order `xml:"order,attr,omitempty"`
}
overlay.T = (*T)(t)
overlay.Select = (*string)(&overlay.T.Select)
overlay.Datatype = (*Datatype)(&overlay.T.Datatype)
overlay.Order = (*Order)(&overlay.T.Order)
return d.DecodeElement(&overlay, &start)
}
type Template struct {
Item string `xml:",any"`
Param []string `xml:"http://www.w3.org/1999/XSL/Transform param,omitempty"`
Toplevelelementandcharinstruction string `xml:"http://www.w3.org/1999/XSL/Transform top-level-element-and-char-instruction"`
Instruction string `xml:"http://www.w3.org/1999/XSL/Transform instruction"`
Resultelement string `xml:"http://www.w3.org/1999/XSL/Transform result-element"`
Match string `xml:"match,attr,omitempty"`
Name QName `xml:"name,attr,omitempty"`
Priority float64 `xml:"priority,attr,omitempty"`
Mode QName `xml:"mode,attr,omitempty"`
Space string `xml:"space,attr,omitempty"`
}
type Text struct {
Disableoutputescaping YesOrNo `xml:"disable-output-escaping,attr,omitempty"`
Lang string `xml:"lang,attr,omitempty"`
Space string `xml:"space,attr,omitempty"`
}
func (t *Text) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error {
type T Text
var overlay struct {
*T
Disableoutputescaping *YesOrNo `xml:"disable-output-escaping,attr,omitempty"`
}
overlay.T = (*T)(t)
overlay.Disableoutputescaping = (*YesOrNo)(&overlay.T.Disableoutputescaping)
return d.DecodeElement(&overlay, &start)
}
type Tokens []string
func (x *Tokens) MarshalText() ([]byte, error) {
result := make([][]byte, 0, len(*x))
for _, v := range *x {
result = append(result, []byte(v))
}
return bytes.Join(result, []byte(" ")), nil
}
func (x *Tokens) UnmarshalText(text []byte) error {
for _, v := range bytes.Fields(text) {
*x = append(*x, string(v))
}
return nil
}
type Valueof struct {
Select string `xml:"select,attr"`
Disableoutputescaping YesOrNo `xml:"disable-output-escaping,attr,omitempty"`
}
func (t *Valueof) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error {
type T Valueof
var overlay struct {
*T
Disableoutputescaping *YesOrNo `xml:"disable-output-escaping,attr,omitempty"`
}
overlay.T = (*T)(t)
overlay.Disableoutputescaping = (*YesOrNo)(&overlay.T.Disableoutputescaping)
return d.DecodeElement(&overlay, &start)
}
type Variable struct {
Item string `xml:",any"`
Toplevelelementandcharinstruction string `xml:"http://www.w3.org/1999/XSL/Transform top-level-element-and-char-instruction"`
Instruction string `xml:"http://www.w3.org/1999/XSL/Transform instruction"`
Resultelement string `xml:"http://www.w3.org/1999/XSL/Transform result-element"`
Name QName `xml:"name,attr"`
Select string `xml:"select,attr,omitempty"`
As string `xml:"as,attr,omitempty"`
}
type When struct {
Item string `xml:",any"`
Toplevelelementandcharinstruction string `xml:"http://www.w3.org/1999/XSL/Transform top-level-element-and-char-instruction"`
Instruction string `xml:"http://www.w3.org/1999/XSL/Transform instruction"`
Resultelement string `xml:"http://www.w3.org/1999/XSL/Transform result-element"`
Test string `xml:"test,attr"`
Space string `xml:"space,attr,omitempty"`
}
type Wrapper struct {
Item string `xml:",any"`
Import []string `xml:"http://www.w3.org/1999/XSL/Transform import,omitempty"`
Toplevelelement string `xml:"http://www.w3.org/1999/XSL/Transform top-level-element"`
Variable string `xml:"http://www.w3.org/1999/XSL/Transform variable"`
Extensionelementprefixes Tokens `xml:"extension-element-prefixes,attr,omitempty"`
Excluderesultprefixes Tokens `xml:"exclude-result-prefixes,attr,omitempty"`
Version float64 `xml:"version,attr"`
Space string `xml:"space,attr,omitempty"`
}
// May be one of yes, no
type YesOrNo string
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment