anchor.diff:  is an indexed field. You have the flexibility to choose which fields to index
   and which ones to keep as runtime fields.
   
  +At its core, the most important benefit of runtime fields is the ability to
  +add fields to documents after you've ingested them. This capability simplifies
  +mapping decisions because you don't have to decide how to parse your data up
  +front, and can use runtime fields to amend the mapping at any time. Using
  +runtime fields allows for a smaller index and faster ingest time, which
  +combined use less resources and reduce your operating costs.
  +
   [discrete]
   [[runtime-use-cases]]
   === Use cases
  
positive.code: for each scripted field that is required for the query.
  
  NOTE: You can define a runtime field in the mapping definition without a
  script. If you define a runtime field without a script, {es} evaluates the
  field at search time, looks at each document containing that field, retrieves
  the `_source`, and returns a value if one exists.
  
  If <<dynamic-field-mapping,dynamic field mapping>> is enabled where the
  `dynamic` parameter is set to `runtime`, new fields are automatically added to
  
negative.code: <2> Each runtime field has its own field type, just like any other field.
  <3> The script defines the evaluation to calculate at search time.
  
  The `runtime` section can be any of these data types:
  
  * `boolean`
  * `date`
  * `double`
  * `geo_point`
  * `ip`
  * `keyword`
  * `long`
  
  Runtime fields with a `type` of `date` can accept the
  <<mapping-date-format,`format`>> parameter exactly as the `date` field type.
  
  [[runtime-updating-scripts]]
  .Updating runtime scripts
  