anchor.diff:  * `~N` after a word signifies edit distance (fuzziness)
   * `~N` after a phrase signifies slop amount
   
  -In order to search for any of these special characters, they will need to
  -be escaped with `\`.
  -
  -Be aware that this syntax may have a different behavior depending on the
  -`default_operator` value. For example, consider the following query:
  +To use one of these characters literally, escape it with a preceding backslash
  +(`\`).
  +
  +The behavior of these operators may differ depending on the `default_operator`
  +value. For example:
   
   [source,js]
   --------------------------------------------------
  
positive.code: --------------------------------------------------
  // CONSOLE
  
  The `simple_query_string` top level parameters include:
  
  [cols="<,<",options="header",]
  |=======================================================================
  |Parameter |Description
  |`query` |The actual query to be parsed. See below for syntax.
  
  |`fields` |The fields to perform the parsed query against. Defaults to the
  `index.query.default_field` index settings, which in turn defaults to `*`. `*`
  extracts all fields in the mapping that are eligible to term queries and filters
  the metadata fields.
  
  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>>
  which defaults to 1024.
  
  |`default_operator` |The default operator used if no explicit operator
  is specified. For example, with a default operator of `OR`, the query
  `capital of Hungary` is translated to `capital OR of OR Hungary`, and
  with default operator of `AND`, the same query is translated to
  `capital AND of AND Hungary`. The default value is `OR`.
  
  |`analyzer` |Force the analyzer to use to analyze each term of the query when
  creating composite queries.
  
  |`flags` |A set of <<supported-flags,flags>> specifying which features of the 
  `simple_query_string` to enable. Defaults to `ALL`.
  
  |`analyze_wildcard` | Whether terms of prefix queries should be automatically
  analyzed or not. If `true` a best effort will be made to analyze the prefix. However,
  some analyzers will be not able to provide a meaningful results
  based just on the prefix of a term. Defaults to `false`.
  
  |`lenient` | If set to `true` will cause format based failures
  (like providing text to a numeric field) to be ignored.
  
  |`minimum_should_match` | The minimum number of clauses that must match for a
   document to be returned. See the
   <<query-dsl-minimum-should-match,`minimum_should_match`>> documentation for the
   full list of options.
  
  |`quote_field_suffix` | A suffix to append to fields for quoted parts of
  the query string. This allows to use a field that has a different analysis chain
  for exact matching. Look <<mixing-exact-search-with-stemming,here>> for a
  comprehensive example.
  
  |`auto_generate_synonyms_phrase_query` |Whether phrase queries should be automatically generated for multi terms synonyms.
  Defaults to `true`.
  
  |`all_fields` |  deprecated[6.0.0, set `fields` to `*` instead]
  Perform the query on all fields detected in the mapping that can
  be queried.
  
  |`fuzzy_prefix_length` |Set the prefix length for fuzzy queries. Default
  is `0`.
  
  |`fuzzy_max_expansions` |Controls the number of terms fuzzy queries will
  expand to. Defaults to `50`
  
  |`fuzzy_transpositions` |Set to `false` to disable fuzzy transpositions (`ab` -> `ba`).
  Default is `true`.
  |=======================================================================
  
  [float]
  ===== Simple Query String Syntax
  The `simple_query_string` supports the following special characters:
  
  * `+` signifies AND operation
  * `|` signifies OR operation
  
negative.code: <titleabbrev>Simple query string</titleabbrev>
  ++++
  
  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]
  --------------------------------------------------
  