> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Normalization of values in data sets

> Normalize values in FlexiCapture data sets with Text and Alphanumeric code normalization so company names, addresses, and tax IDs compare reliably.

This article describes the types of normalization available when adding columns from an external database to a data set in a FlexiCapture for Invoices Document Definition, and their settings.

Normalization changes the format of values that are written differently but mean essentially the same thing, enforcing consistent formatting so they can be compared. For example, a company's name and address may be written in various ways. Since these values refer to the same company and address, they must be normalized so the program can compare them properly.

The type of normalization can be specified for each column in a data set when you map it to a column in an external database.

Normalization is only applied to values stored in the data set (the **Cache data** option must be enabled in the data set's properties). Values in the external database are not changed.

FlexiCapture for Invoices offers two types of normalization for values from the data set.

## Text normalization

This type of normalization is useful when comparing strings such as company names and addresses.

1. White space (including newline and tab characters) and separation symbols are replaced with regular spaces.
2. Periods used as separators (periods placed between words) are replaced with spaces, and periods in abbreviations are removed.
3. Conjunction symbols (`&`, `+`, `-`, `/`, `~`) are normalized:
   * Sets of words that begin with a single-letter word and are separated by the same conjunction symbol are joined into a single word. For example, `R & D` becomes `R&D`.
   * In all other cases, conjunction symbols are replaced with spaces. For example, `Procter&Gamble` becomes `Procter Gamble`.
4. Double spaces are removed.
5. A predefined list is used to split words. For example, `CoKG` is split into `Co KG`.
6. Spaces in recognized text are used to split it into separate words.
7. A predefined list is used to replace suffixes in each word. For example, you can replace the suffix `strasse` with the suffix `str`.
8. Strings of words are automatically replaced according to a predefined list. For example, you can replace the word `Limited` with the abbreviation `Ltd`.

Normalization parameters are specified in the `Normalization.xml` file, which is stored in the project's folder.

<Note>
  Significant changes may be made to the normalization algorithm in future versions of the program.
</Note>

### Modify the normalization settings

You can modify the `Normalization.xml` file after the data set has been created (separately for each data set). To modify the standard normalization settings:

<Steps>
  <Step title="Download the settings file">
    Download the settings file using the [DownloadNormalizationSettings](/flexi-capture/admin-guide/download-normalization-settings) FCAdminTools command.
  </Step>

  <Step title="Edit the settings">
    Make the appropriate changes.
  </Step>

  <Step title="Upload the settings file">
    Upload the settings file using the [UpdateNormalizationSettings](/flexi-capture/admin-guide/update-normalization-settings) FCAdminTools command.
  </Step>
</Steps>

<Warning>
  After updating the settings file, you need to update the data set. For more information, see [Updating data sets](/flexi-capture/invoice-reader/ir-data-set-update).
</Warning>

## Alphanumeric code normalization

This normalization type is useful when comparing alphanumeric codes such as tax ID numbers, bank accounts, and postal codes.

All symbols except numerals and letters are removed, letting you compare values while ignoring spaces, dashes, slashes, and other arbitrary characters they may contain.

When normalization is applied, the **Store normalized value** option becomes available while mapping the data set column to a column in an external database.

* When this option is enabled, normalized values are stored in the data set.
* When this option is disabled, original values from the external database are copied to the data set.

This option does not affect data extraction or automated checks, but it does determine which value is displayed when a user searches for an entry in a dictionary.
