Pinned or Ignored Attributes Merges

You can define whether pinned/ignored or unpinned/unignored statuses (flags) should survive when two attributes with the same value but with different flags get merged.

Overview

For a pinned value, survivorship rules are not applied to attribute values if one of those values is pinned. All pinned values become OVs, and all attribute’s survivorship rules are just ignored. For an ignored value, the values are not participating in OV calculation, just as those attributes don’t exist.

You can define whether pinned/ignored or unpinned/unignored statuses (flags) should survive in the case when two attributes with the same value but with different flags get merged. You can configure these settings using the "pinIgnoredPriority" meta-configuration property. This allows you to be sure that an existing pinned/ignored flag is not removed during dataload or entities merge if it has a higher priority than the flag in the contributing entity. The property is set on the global level of business configuration and applied to all entity and relation types.

Table 1. Properties
Property Name Required Description Type
pinIgnoredPriority No
Defines the priority of Pin/Ignored flags for the attribute in the case of a merge. The value must be an array of three items ("ignored", "pin", "neutral") in any order.
Note: "neutral" means that "pin" and "ignored" flags are not defined.
The left-most position in this array means the highest priority.

Default value is ["ignored", "pin", "neutral"].

Array of three Strings: "ignored", "pin", "neutral"
Important: It is highly recommended to use the default priority order of ["ignored", "pin", "neutral"] as the most suitable for all cases.

Defining Behavior

The "pinIgnoredPriority" property is available to use to define the behavior for the following cases:

  Pinned No flag exists
Ignored X X
No flag exists X X
  • profile A has attribute 1 (Pinned) & profile B has attribute 1 (Ignored)
  • profile A has attribute 1 (Pinned) & profile B has attribute 1 without any Pinned/Ignored flag
  • profile A has attribute 1 (Ignored) & profile B has attribute 1 (Pinned)
  • profile A has attribute 1 (Ignored) & profile B has attribute 1 without any Pinned/Ignored flag

Examples

Example 1: "pinIgnoredPriority": ["ignored", "pin", "neutral"], merging Ignored and Pinned

Profile A:

Name: Johnny (Ignored): most Recently updated

Profile B:

Name: Johnny (Pinned): least Recently updated

Johnathan

Profiles A and B merged:

Name: Johnny (Ignored): OV = false

Johnathan: OV = true

Example 2: "pinIgnoredPriority": ["pin", "ignored", "neutral"], merging Ignored and Pinned

Profile A:

Name: Johnny (Ignored): most Recently updated

Profile B:

Name: Johnny (Pinned): least Recently updated

Johnathan

Profiles A and B merged:

Name: Johnny (Pinned): OV = true

Johnathan: OV = false

Example 3: "pinIgnoredPriority": ["pin", "ignored", "neutral"], merging Ignored and Neutral

Profile A:

Name: Johnny (Ignored): most Recently updated

Profile B:

Name: Johnny (): least Recently updated

Johnathan

Profiles A and B merged:

Name: Johnny (Ignored): OV = false

Johnathan: OV = true: survivorship rules were applied to a single attribute value; it wins in any case

Example 4: "pinIgnoredPriority": ["pin", "ignored", "neutral"], merging Neutral and Pinned

Profile A:

Name: Johnny (): most Recently updated

Profile B:

Name: Johnny (Pinned): least Recently updated

Johnathan

Profiles A and B merged:

Name: Johnny (Pinned): OV = true

Johnathan: OV = false