Defining attribute composition rules in IBM Master Data Management

Create and manage rules to determine how an entity's attribute values get selected from its member records. You can define and customize sets of attribute composition rules for each entity type in your data type definitions.

For example, consider a person entity that is made up of two member records named "Joe Howell" and "Joseph Howell". The system uses the person entity type's attribute composition rules to determine which given name value ("Joe" or "Joseph") is selected to be shown as the entity's given name.

Attribute composition rules are scoped to either the entity type level or attribute level. Each entity type in your data type definitions has only one entity type level rule. Attribute level rules override the entity type rule on an attribute-by-attribute basis. Attribute level rules can also be configured to apply to a subset of fields within an attribute.

Important: The values of some attributes, known as entity attributes, are defined directly in the entity as opposed to being inherited from its member records. Entity attributes are defined in entity type definitions. Entity attribute values are not affected by attribute composition rules. To change the value of an entity attribute, you must edit the entity. Editing member records does not change an entity attribute value.

Required permissions
To configure attribute composition rules, you must be a member of the DataEngineer user group for the IBM Master Data Management service.

Filtering and sorting to define attribute composition

To configure how IBM Master Data Management selects the attribute values it will use to represent each entity, you can define attribute composition rules for each entity type. Each attribute composition rule includes filter and sorting conditions that you can prioritize according to your organization's requirements. For advanced attribute composition, define conditional logic rules that dynamically select values based on context.

Some rules use simple filters and sorting criteria, such as source preference, most recent, or most frequent. You can also define more complex field-level filtering and sorting logic to enable more accurate and business-aligned entity composition.

By defining high quality attribute composition rules, you can:

  • Improve data accuracy and consistency.
  • Control attribute composition at the field level with fine-grained precision.
  • Filter low-quality or irrelevant data from the entity composite view.
  • Construct high-quality, business-aligned composite entities.

Filter conditions

Optionally, you can define a filter condition that narrows the scope of records and record values that are considered during entity attribute composition.

You can define filters based on the following criteria:

  • Source preference - Define the list of trusted record sources that can contribute to attribute composition. Records from sources not in this list will not be considered.
  • Allowed values - Define a list of allowed field values that can contribute to attribute composition. IBM Master Data Management will only allow the values that you define to be surfaced to the entity level.
  • Disallowed values - Define a list of disallowed field values that cannot contribute to attribute composition. For example, you can disallow placeholder, unknown, or dummy values such as xxx, unknown, TBD, or N/A.

Sorting conditions

After applying any filters, your sorting conditions prioritize and select from the remaining values. After sorting, the highest priority values get surfaced to the composite entity's attributes.

You can define sorting conditions based on the following criteria:

  • Source preference - Use the attribute value from the most trusted record sources, in the order of priority that you define.
  • Most recent - Use the attribute value that was most recently updated.
  • Most frequent - Use the attribute value that appears most frequently across the member records.
  • Field value priority - Define the priority order of preferred field values. For example, you might prefer values for a credit card status in the following order: Active > Hold > Inactive.
  • Field value comparison - Compare field value characteristics against each other to determine how to sort the attributes. For example, you can sort by longest value to select the most complete first.name field.

Conditional logic

For advanced control over entity attribute composition, you can define more complex conditional logic rules. By using conditional logic, you can dynamically adjust sorting and selection logic depending on data conditions, enabling context-aware decision-making.

Important: Conditional logic is always applied after filtering and sorting conditions have already been applied.

When you define conditional logic, IBM Master Data Management evaluates the specified field and applies different attribute composition rules based on the field's value. Conditional logic uses the following flow:

  1. Evaluate - Check the value of a designated field.
  2. Match - Consider each conditional rule, in sequence, until a match is found.
  3. Apply - When a condition is satisfied, apply the corresponding sort rules.
  4. Fallback - If no conditions match, use the default sorting rules.

For example, for a mailing_address.state field, you might configure the following conditions:

  • If state equals CA, prioritize records from California offices.
  • If state starts with N, apply Northeast regional rules.
  • Otherwise, use standard national sorting rules.

Tiebreaker

As an ultimate tiebreaker, if the defined rule conditions cannot determine a single result, then the entity's attribute value is taken from the remaining member record with the lowest record number. The lowest record number generally indicates the earliest record in the entity.

Editing the default entity type-scoped rule

Each entity type in your data type definitions includes a default entity type-scoped rule. You can edit the default rule conditions, but cannot delete the rule or define additional entity type rules. The entity type rule determines how the system composites attributes for all entities of the selected type.

To edit the entity type rule:

  1. From the Master data navigation menu, click the Data types icon data types icon, then click Entity types and matching. Select the entity type that you want to work with.

  2. From the entity type page, go to the Match settings tab, then choose Attribute composition.

  3. Ensure that the correct entity type from your data type definitions is selected in the entity type selection menu.

  4. In the list of attribute composition rules, locate the rule that has "Entity type" in the Scope column.

  5. Hover your mouse over the rule and click the Edit icon edit rule icon.

  6. Under Set the maximum number of values, select the maximum number of values that can be selected for inclusion in the entity. This setting is only used for attributes that can potentially include more than one value, such as a list.

    Configure the rule to use single or list values or a single value only. The default behavior, single or list values, selects multiple values for inclusion in the entity when there is more than one value listed in the record.

  7. Under Include source system identifier, indicate whether this entity's attribute values should include the source system identifiers of the originating records. When enabled, each composited entity data value will include source system identifiers from all of the entity's member records.

    For more information about source system identifiers, see Data concepts in IBM Master Data Management.

  8. Under Define conditions, select a filter condition (optional) and up to three sorting conditions for the system to use when selecting which value to use for the entity view. You must select at least one sorting condition.

  9. Under Filter conditions (optional), if you choose to define a filter condition, you can filter based on source preference, allowed values, or disallowed values. Select and define a filter condition:

    Filter conditions
    Filter type Details
    Source preference Use the source preference filter to select certain record sources. The rule considers only records from the selected sources when it composes this attribute. To define a source preference filter:
    1. Select Source preference as your filter condition.
    2. Click + to select one or more record sources from your data that you consider to be trusted sources.
    3. Optional: Click New source to enter the name of a custom record source that is not yet added to your master data. If you add a custom source, the name must exactly match the record source name as defined in a future data asset.
    4. Click Add.
    Allowed values Use the allowed values filter to define certain allowed field values. When you specify allowed values, the system considers only records that include the specified field values. To define an allowed values filter:
    1. Select Allowed values as your filter condition.
    2. Click Configure field-value pairs.
    3. Click Add condition.
    4. Specify the field and values that you want to allow. Add as many allowed value conditions as needed.
    5. Click Add.
    Disallowed values Use the disallowed values filter to define certain disallowed field values. When you specify disallowed values, the system ignores records that have the specified field values. To define a disallowed values filter:
    1. Select Disallowed values as your filter condition.
    2. Click Configure field-value pairs.
    3. Click Add condition.
    4. Specify the field and values that you want to disallow. Add as many disallowed value conditions as needed.
    5. Click Add.
  10. Under Sorting conditions, define at least one sorting condition. Click Add sorting option to create a sorting condition. You can sort by most frequent, last updated, source preference, field value priority, or field value comparison.

    Sorting conditions
    Sorting type Details
    Last update date Sort based on how recently the record was updated.
    Most frequent Sort based on how often the value appears across records.
    Source preference Sort based on preferred sources.
    1. Select Source preference.
    2. Click Add to select the record source or sources from your data that you consider to be trusted sources.
    3. If you also have a filter condition set, some sources might not be available to select, and you cannot define a new source.
    4. Drag and drop the sources in the Source preference panel to put them in priority order.
    5. Click Add.
    Field value priority Sort based on specified field value preferences.
    1. Select Field value priority.
    2. Define the field.
    3. Define a list of values in the preferred order.
    4. To define additional fields and values, click Set value priority for a field to add as many conditions as needed.
    5. Click Add.
    Field value comparison Sort based on comparisons of value characteristics.
    1. Select Field value comparison.
    2. Select the field that you want to sort.
    3. Sort values based on the following comparator functions:
    longest - Selects the longest value.
    shortest - Selects the shortest value.
    earliest - Selects the earliest value.
    latest - Selects the latest value.
    minimum - Selects the minimum value.
    maximum - Selects the maximum value.
    4. To define additional fields and values, click Set value comparison for a field to add as many conditions as needed.
    5. Click Add.
  11. Click Add sorting option again to add as many sorting conditions as needed.

  12. Under Sort by conditional logic, optionally define conditional rules that sort based on field values and complex logic. You can define one or more conditions to compare field values, and then dynamically apply different types of sorting based on the comparison result. To define a conditional logic rule:

    1. Click Add condition.
    2. Define the field value comparison that triggers the conditional logic. This is the "if" statement.
    3. Define the priority order to use for sorting if the condition is met. This is the "then" statement.
    4. To add another rule, click Add condition. You can add as many conditions as you need.

    IBM Master Data Management processes conditional rules in order.

  13. In the Deciding condition area, review the rule summary to ensure that it meets your expectations.

  14. In the Attributes area, review the list of attributes that this entity level rule applies to. By default, it applies to all attributes unless there are attribute-level rules in place.

  15. When you are satisfied with your rule, click Save.

Creating or editing an attribute-scoped rule

In addition to the default entity type-scoped rule, each entity type can also include attribute-scoped rules that override the default rule, but apply to only one attribute (or a selection of fields within an attribute). This is useful if you want to handle attribute composition differently for certain attributes.

You can also use attribute-scoped rules to exclude a given attribute from appearing in the entity detail view at all, while still keeping the underlying attribute values in the member record views.

To create an attribute-scoped rule:

  1. From the Master data navigation menu, click the Data types icon data types icon, then click Entity types and matching. Select the entity type that you want to work with.

  2. From the entity type page, go to the Match settings tab, then choose Attribute composition.

  3. Ensure that the correct entity type from your data type definitions is selected in the entity type selection menu.

  4. Click New attribute rule to start defining the conditions for this rule.

  5. Under Select an attribute, choose the attribute that you want to define a rule for.

  6. Under Define inclusion in the entity, define whether this attribute should be included or excluded for entities of this type.

  7. Under Set the maximum number of values, select the maximum number of values that can be selected for inclusion in the entity. This setting is only used for attributes that can potentially include more than one value, such as a list.

    Configure the rule to use a single value, all values, or a custom number of values from each member record to use when composing this attribute for an entity.

  8. Under Define conditions, select a filter condition (optional) and up to three sorting conditions for the system to use when deciding which value to select for the entity view. You must select at least one sorting condition.

  9. Under Filter conditions (optional), if you choose to define a filter condition, you can filter based on source preference, allowed values, or disallowed values. Select and define a filter condition:

    Filter conditions
    Filter type Details
    Source preference Use the source preference filter to select certain record sources. The rule considers only records from the selected sources when it composes this attribute. To define a source preference filter:
    1. Select Source preference as your filter condition.
    2. Click + to select one or more record sources from your data that you consider to be trusted sources.
    3. Optional: Click New source to enter the name of a custom record source that is not yet added to your master data. If you add a custom source, the name must exactly match the record source name as defined in a future data asset.
    4. Click Add.
    Allowed values Use the allowed values filter to define certain allowed field values. When you specify allowed values, the system considers only records that include the specified field values. To define an allowed values filter:
    1. Select Allowed values as your filter condition.
    2. Click Configure field-value pairs.
    3. Click Add condition.
    4. Specify the field and values that you want to allow. Add as many allowed value conditions as needed.
    5. Click Add.
    Disallowed values Use the disallowed values filter to define certain disallowed field values. When you specify disallowed values, the system ignores records that have the specified field values. To define a disallowed values filter:
    1. Select Disallowed values as your filter condition.
    2. Click Configure field-value pairs.
    3. Click Add condition.
    4. Specify the field and values that you want to disallow. Add as many disallowed value conditions as needed.
    5. Click Add.
  10. Under Sorting conditions, define at least one sorting condition. Click Add sorting option to create a sorting condition. You can sort by most frequent, last updated, source preference, field value priority, or field value comparison.

    Sorting conditions
    Sorting type Details
    Last update date Sort based on how recently the record was updated.
    Most frequent Sort based on how often the value appears across records.
    Source preference Sort based on preferred sources.
    1. Select Source preference.
    2. Click Add to select the record source or sources from your data that you consider to be trusted sources.
    3. If you also have a filter condition set, some sources might not be available to select, and you cannot define a new source.
    4. Drag and drop the sources in the Source preference panel to put them in priority order.
    5. Click Add.
    Field value priority Sort based on specified field value preferences.
    1. Select Field value priority.
    2. Define the field.
    3. Define a list of values in the preferred order.
    4. To define additional fields and values, click Set value priority for a field to add as many conditions as needed.
    5. Click Add.
    Field value comparison Sort based on comparisons of value characteristics.
    1. Select Field value comparison.
    2. Select the field that you want to sort.
    3. Sort values based on the following comparator functions:
    longest - Selects the longest value.
    shortest - Selects the shortest value.
    earliest - Selects the earliest value.
    latest - Selects the latest value.
    minimum - Selects the minimum value.
    maximum - Selects the maximum value.
    4. To define additional fields and values, click Set value comparison for a field to add as many conditions as needed.
    5. Click Add.
  11. Click Add sorting option to add as many sorting conditions as needed.

  12. Under Sort by conditional logic, optionally define conditional rules that sort based on field values and complex logic. You can define one or more conditions to compare field values, and then dynamically apply different types of sorting based on the comparison result. To define a conditional logic rule:

    1. Click Add condition.
    2. Define the field value comparison that triggers the conditional logic. This is the "if" statement.
    3. Define the priority order to use for sorting if the condition is met. This is the "then" statement.
    4. To add another rule, click Add condition. You can add as many conditions as you need.

    IBM Master Data Management processes conditional rules in order.

  13. Under Select fields, choose which fields within this attribute are selected by using this attribute composition rule. By default, all fields are selected.

  14. In the Deciding condition area, review the rule summary to ensure that it meets your expectations. If so, click Save.

To edit a rule:

  1. Hover your mouse over the row in the list of attribute composition rules.
  2. Click the edit rule icon edit rule icon.
  3. Change the conditions as needed, then click Save.

Deleting an attribute-scoped rule

You can delete only attribute-scoped rules. Deleted rules are permanently removed and cannot be recovered.

To delete a rule:

  1. From the Master data navigation menu, click the Data types icon data types icon, then click Entity types and matching. Select the entity type that you want to work with.
  2. From the entity type page, go to the Match settings tab, then choose Attribute composition.
  3. In the list of attribute composition rules, select the rule that you want to delete.
  4. Click Delete delete rule icon and then confirm your decision.

Next steps

Learn more