package xmpp import ( "encoding/xml" ) type PubSub struct { XMLName xml.Name `xml:"http://jabber.org/protocol/pubsub pubsub"` Publish *Publish Retract *Retract // TODO } func (p *PubSub) Namespace() string { return p.XMLName.Space } type Publish struct { XMLName xml.Name `xml:"publish"` Node string `xml:"node,attr"` Item Item } type Item struct { XMLName xml.Name `xml:"item"` Id string `xml:"id,attr,omitempty"` Tune *Tune Mood *Mood } type Retract struct { XMLName xml.Name `xml:"retract"` Node string `xml:"node,attr"` Notify string `xml:"notify,attr"` Item Item } func init() { TypeRegistry.MapExtension(PKTIQ, xml.Name{"http://jabber.org/protocol/pubsub", "pubsub"}, PubSub{}) }