anchor.diff:  <titleabbrev>Simple query string</titleabbrev>
   ++++
   
  -A query that uses the SimpleQueryParser to parse its context. Unlike the
  -regular `query_string` query, the `simple_query_string` query will never
  -throw an exception, and discards invalid parts of the query. Here is
  -an example:
  +Returns documents based on a provided query string, using a parser with a
  +limited but fault-tolerant syntax.
  +
  +This query uses a <<simple-query-string-syntax,simple syntax>> to parse and
  +split the provided query string into terms based on special operators. The query
  +then <<analysis,analyzes>> each term independently before returning matching
  +documents.
  +
  +While its syntax is more limited than the
  +<<query-dsl-query-string-query,`query_string` query>>, the `simple_query_string`
  +query does not return errors for invalid syntax. Instead, it ignores any invalid
  +parts of the query string.
  +
  +[[simple-query-string-query-ex-request]]
  +==== Example request
   
   [source,js]
   --------------------------------------------------
  
positive.code: --------------------------------------------------
  // CONSOLE
  
  The available flags are:
  
  [cols="<,<",options="header",]
  |=======================================================================
  |Flag |Description
  |`ALL` |Enables all parsing features. This is the default.
  |`NONE` |Switches off all parsing features.
  |`AND` |Enables the `+` AND operator.
  |`OR` |Enables the `\|` OR operator.
  |`NOT` |Enables the `-` NOT operator.
  |`PREFIX` |Enables the `*` Prefix operator.
  |`PHRASE` |Enables the `"` quotes operator used to search for phrases.
  |`PRECEDENCE` |Enables the `(` and `)` operators to control operator precedence.
  |`ESCAPE` |Enables `\` as the escape character.
  |`WHITESPACE` |Enables whitespaces as split characters.
  |`FUZZY` |Enables the `~N` operator after a word where N is an integer denoting the allowed edit distance for matching (see <<fuzziness>>).
  |`SLOP` |Enables the `~N` operator after a phrase where N is an integer denoting the slop amount.
  |`NEAR` |Synonymous to `SLOP`.
  |=======================================================================
  
  [float]
  ==== Synonyms
  
  The `simple_query_string` query supports multi-terms synonym expansion with the <<analysis-synonym-graph-tokenfilter,
  synonym_graph>> token filter. When this filter is used, the parser creates a phrase query for each multi-terms synonyms.
  
negative.code: --------------------------------------------------
  // CONSOLE
  
  
  [[simple-query-string-top-level-params]]
  ==== Top-level parameters for `simple_query_string`
  
  `query`::
  (Required, string) Query string you wish to parse and use for search. See <<simple-query-string-syntax>>.
  
  `fields`::
  +
  --
  (Optional, array of strings) Array of fields you wish to search.
  
  This field accepts wildcard expressions. You also can boost relevance scores for
  matches to particular fields using a caret (`^`) notation. See
  <<simple-query-string-boost>> for examples.
  
  Defaults to the `index.query.default_field` index setting, which has a default
  value of `*`. The `*` value extracts all fields that are eligible to term
  queries and filters the metadata fields. All extracted fields are then combined
  to build a query if no `prefix` is specified.
  
  WARNING: There is a limit on the number of fields that can be queried at once.
  It is defined by the `indices.query.bool.max_clause_count`
  <<search-settings,search setting>>, which defaults to `1024`.
  --
  
  `default_operator`::
  +
  --
  (Optional, string) Default boolean logic used to interpret text in the query
  string if no operators are specified. Valid values are:
  
  `OR` (Default)::
  For example, a query string of `capital of Hungary` is interpreted as `capital
  OR of OR Hungary`.
  
  `AND`::
  For example, a query string of `capital of Hungary` is interpreted as `capital
  AND of AND Hungary`.
  --
  
  `all_fields`::
  deprecated:[6.0.0, set `fields` to `*` instead](Optional, boolean) If `true`,
  search all searchable fields in the index's field mapping.
  
  `analyze_wildcard`::
  (Optional, boolean) If `true`, the query attempts to analyze wildcard terms in
  the query string. Defaults to `false`.
  
  `analyzer`::
  (Optional, string) <<analysis,Analyzer>> used to convert text in the
  query string into tokens. Defaults to the
  <<specify-index-time-analyzer,index-time analyzer>> mapped for the
  `default_field`. If no analyzer is mapped, the index's default analyzer is used.
  
  `auto_generate_synonyms_phrase_query`::
  (Optional, boolean) If `true`, <<query-dsl-match-query-phrase,match phrase>>
  queries are automatically created for multi-term synonyms. Defaults to `true`.
  See <<simple-query-string-synonyms>> for an example.
  
  `flags`::
  (Optional, string) List of enabled operators for the
  <<simple-query-string-syntax,simple query string syntax>>. Defaults to `ALL`
  (all operators). See <<supported-flags>> for valid values.
  
  `fuzzy_max_expansions`::
  (Optional, integer) Maximum number of terms to which the query expands for fuzzy
  matching. Defaults to `50`.
  
  `fuzzy_prefix_length`::
  (Optional, integer) Number of beginning characters left unchanged for fuzzy
  matching. Defaults to `0`.
  
  `fuzzy_transpositions`::
  (Optional, boolean) If `true`, edits for fuzzy matching include
  transpositions of two adjacent characters (ab → ba). Defaults to `true`.
  
  `lenient`::
  (Optional, boolean) If `true`, format-based errors, such as providing a text
  value for a <<number,numeric>> field, are ignored. Defaults to `false`.
  
  `minimum_should_match`::
  (Optional, string) Minimum number of clauses that must match for a document to
  be returned. See the <<query-dsl-minimum-should-match, `minimum_should_match`
  parameter>> for valid values and more information.
  
  `quote_field_suffix`::
  +
  --
  (Optional, string) Suffix appended to quoted text in the query string.
  
  You can use this suffix to use a different analysis method for exact matches.
  See <<mixing-exact-search-with-stemming>>.
  --
  
  
  [[simple-query-string-query-notes]]
  ==== Notes
  
  [[simple-query-string-syntax]]
  ===== Simple query string syntax
  The `simple_query_string` query supports the following operators:
  
  * `+` signifies AND operation
  * `|` signifies OR operation
  