func (s *ExplainService) Df(df string) *ExplainService {
	s.df = df
	return s
}
Df is the default field for query string query (default: _all).
package elastic
import (
	"fmt"
	"log"
	"net/url"
	"strings"
	"gopkg.in/olivere/elastic.v3/uritemplates"
)
var (
	_ = fmt.Print
	_ = log.Print
	_ = strings.Index
	_ = uritemplates.Expand
	_ = url.Parse
)
type ExplainService struct {
	client                 *Client
	pretty                 bool
	id                     string
	index                  string
	typ                    string
	q                      string
	routing                string
	lenient                *bool
	analyzer               string
	df                     string
	fields                 []string
	lowercaseExpandedTerms *bool
	xSourceInclude         []string
	analyzeWildcard        *bool
	parent                 string
	preference             string
	xSource                []string
	defaultOperator        string
	xSourceExclude         []string
	source                 string
	bodyJson               interface{}
	bodyString             string
}
func NewExplainService(client *Client) *ExplainService {
	return &ExplainService{
		client:         client,
		xSource:        make([]string, 0),
		xSourceExclude: make([]string, 0),
		fields:         make([]string, 0),
		xSourceInclude: make([]string, 0),
	}
}
func (s *ExplainService) Id(id string) *ExplainService {
	s.id = id
	return s
}
func (s *ExplainService) Index(index string) *ExplainService {
	s.index = index
	return s
}
func (s *ExplainService) Type(typ string) *ExplainService {
	s.typ = typ
	return s
}
func (s *ExplainService) Source(source string) *ExplainService {
	s.source = source
	return s
}
func (s *ExplainService) XSourceExclude(xSourceExclude ...string) *ExplainService {
	s.xSourceExclude = append(s.xSourceExclude, xSourceExclude...)
	return s
}
func (s *ExplainService) Lenient(lenient bool) *ExplainService {
	s.lenient = &lenient
	return s
}
func (s *ExplainService) Q(q string) *ExplainService {
	s.q = q
	return s
}
func (s *ExplainService) Routing(routing string) *ExplainService {
	s.routing = routing
	return s
}
func (s *ExplainService) AnalyzeWildcard(analyzeWildcard bool) *ExplainService {
	s.analyzeWildcard = &analyzeWildcard
	return s
}
func (s *ExplainService) Analyzer(analyzer string) *ExplainService {
	s.analyzer = analyzer
	return s
}