func (n *Node) InnerText() string {
	var output func(*bytes.Buffer, *Node)
	output = func(buf *bytes.Buffer, n *Node) {
		switch n.Type {
		case TextNode, CharDataNode:
			buf.WriteString(n.Data)
		case CommentNode:
		default:
			for child := n.FirstChild; child != nil; child = child.NextSibling {
				output(buf, child)
			}
		}
	}
	var buf bytes.Buffer
	output(&buf, n)
	return buf.String()
}
InnerText returns the text between the start and end tags of the object.
package xmlquery
import (
	"bytes"
	"encoding/xml"
	"fmt"
	"strings"
)
type NodeType uint
const (
	DocumentNode NodeType = iota
	DeclarationNode
	ElementNode
	TextNode
	CharDataNode
	CommentNode
	AttributeNode
)
type Attr struct {
	Name         xml.Name
	Value        string
	NamespaceURI string
}
type Node struct {
	Parent, FirstChild, LastChild, PrevSibling, NextSibling *Node
	Type         NodeType
	Data         string
	Prefix       string
	NamespaceURI string
	Attr         []Attr
	level int  
}