Value Mapping

Summary

Overview

The purpose of value mapping is to match source file values that do not correspond to any options of a boolean or select attribute.

Interface and Use Cases

Everything is in our dedicated guide

 

The list of the selects and booleans attributes is displayed with information about the status. NB : If there is no field displayed, uncheck the default filter “Unmapped fields only”.

When editing a field, the values to be mapped are on the right, and the list of available options is on the left. To map the columns, drag and drop the desired value onto the corresponding target on the right..

NB. When multiple values are selected, all mapped values remain on the right with a blue border.

Configuration

The configuration outlined in this document aims at providing a more digestable version of what is presented in the API docs. However the API docs are always up to date and should remain a source of truth. It is recommended to double check the info presented here against it.

 
  • keep_unmapped : For unmapped values, if it is set to true, the value is retained; otherwise, it is set to null.
  • map_empty: Show null values from empty columns in the input file and allow mapping them.
  • max_prop: there is a Levenshtein algorithm that calculates the distance between 2 strings to try to auto-match the column. This value is the max Levenshtein distance that can be used to try to auto-match (value between 0 and 1).
  • block_learning : Prevents saving the value mappings for the demo because otherwise, we would have problems for the next demo. False by default.
  • fields, groups, include_fields, exclude_fields, max_requirement_level: Standard configuration options.

Limitations

  • The UI can be cluttered when there are a ton of options for a field.
  • Performance: when there are a ton of options, every single small change will send the entire payload to the backend. Avenues of improvement:
    • Patch of attributes instead of entire object, or at least just the non-empty values. Nobody uses Value Mapping from the API.