Category Facet Inheritance Use Cases - Bloomreach Experience - Headless Digital Experience Platform

Category Facet Inheritance Use Cases

 These use cases demonstrate the effects of combining certain facet inheritance settings. Use these as a reference to help set up your own facet inheritance settings.

  • Use case 1: Turn off inheritance for a single child category

  • Use case 2: Turn off inheritance for an entire category branch

  • Use case 3: Multiple inheritance chains within a category branch

  • Use case 4: Unique inheritance chain within a category branch

  • Use case 5: Multiple parents

  • Use case 6: More examples of inheritance chains

 

Use Case 1: Turn off inheritance for a single child category

Suppose you want all categories in a branch to inherit facet customisations, except for a single category that does not. For example, all Shoes should inherit a boost rule for Price, but Running Shoes should only have a boost rule for Color.

 

Step 1 - Go to the Category Inheritance Manager

The Category Inheritance Manager is located under Configurations > Settings > Category Inheritance Manager. You should be able to see your categories, as well as the facet inheritance settings.

For an explanation of the file icons in the rightmost column, see Inheritance Preview.

Step 2 - Turn on Pass Down for Shoes

With the default facet inheritance settings, nothing is passed down. Select the button in the first column to turn on Pass Down for Shoes. Now, all categories in the Shoes category branch are inheriting facet rules from Shoes.

Note the inheritance preview in the rightmost column. If you select a category, the row will be highlighted in blue and the preview column will display the facet inheritance influences from that category. For example, we selected the Shoes category, so the preview is showing how facet rules from Shoes are being passed down.

The blue file icon indicates an internal change in the facet rules for Shoes. The light blue file icons indicate external influences, which are the facet rules passed down from Shoes. 

Step 3 - Turn off Receive From for Running Shoes

We want to set different customisations on Running Shoes instead of inheriting facet rules from Shoes. Select the button in the second column to turn off Receive From for Running Shoes. Now, Running Shoes will not inherit facet rules from Shoes.

If you select the Shoes category for preview, note that the light blue file icon is no longer present for Running Shoes.

 

Use Case 2: Turn off inheritance for an entire category branch

Suppose you want all categories in a branch to inherit facet customisations, except for a single category branch that does not. For example, all Sneakers should inherit a boost rule for Brand, but the Running Sneaker category branch should be controlled by the algorithm.

 

Step 1 - Go to the Category Inheritance Manager

The Category Inheritance Manager is located under Configurations > Settings > Category Inheritance Manager. You should be able to see your categories, as well as the facet inheritance settings.

Step 2 - Turn on Pass Down for Sneakers

With the default facet inheritance settings, nothing is passed down. Select the button in the first column to turn on Pass Down for Sneakers. Now, all categories in the Sneakers category branch are inheriting facet rules from Sneakers.

Step 3 - Turn off Receive From for Running Sneakers

We want the algorithm to control facet rules for Running Sneakers instead of inheriting facet rules from Sneakers. Select the button in the second column to turn off Receive From for Running Sneakers. Now, Running Sneakers will not inherit facet rules from Sneakers.

If you look at the inheritance preview for Sneakers, you can verify that Running Sneakers is no longer inheriting facet rules from Sneakers. Note that Wide Fit Running Sneakers is still inheriting facet rules from Sneakers, so we require one more step to turn off inheritance for the entire category branch.

Step 4 - Turn off Pass Through for Running Sneakers

We want the algorithm to control facet rules for the entire Running Sneakers category branch. Select the button in the third column to turn off Pass Through for Running Sneakers. Now, the inheritance chain from Sneakers will stop at Running Sneakers.

If you look at the inheritance preview for Sneakers, you will see that Running Sneakers and Wide Fit Running Sneakers are no longer inheriting facet rules from Sneakers. If there were additional category levels below Wide Fit Running Sneakers, they would also not inherit facet rules from Sneakers.

 

Use Case 3: Multiple inheritance chains within a category branch

In Use Cases 1 and 2, there was only one inheritance chain. That is, only a single category was passing down its facet rules. However, it is possible to configure multiple inheritance chains in a category branch.

Suppose you want all categories in a branch to inherit facet customisations and all categories in a subcategory branch to inherit another set of facet customisations. For example, all Shoes should inherit a boost rule for Price, and all Running Shoes should inherit a boost rule for Color.

 

Step 1 - Go to the Category Inheritance Manager

The Category Inheritance Manager is located under Configurations > Settings > Category Inheritance Manager. You should be able to see your categories, as well as the facet inheritance settings.

Step 2 - Turn on Pass Down for Shoes

With the default facet inheritance settings, nothing is passed down. Select the button in the first column to turn on Pass Down for Shoes. Now, all categories in the Shoes category branch are inheriting facet rules from Shoes.

Step 3 - Turn on Pass Down for Running Shoes

We want to start another inheritance chain from Running Shoes. Select the button in the first column to turn on Pass Down for Running Shoes. Now, all categories in the Running Shoes category branch are inheriting facet rules from Running Shoes.

If you look at the inheritance preview for Running Shoes, you can verify that Marathon Running Shoes is inheriting from Running Shoes.


 

Use Case 4: Unique inheritance chain within a category branch

In Use Case 3, there were two inheritance chains running through a single category branch. What if you wanted to have one inheritance chain in one category branch, and a different inheritance chain in another category branch?

For example, suppose you want all Basketball Shoes to inherit a boost rule for Brand from Shoes, and all Running Shoes to inherit a boost rule for Color.

 

Step 1 - Go to the Category Inheritance Manager

The Category Inheritance Manager is located under Configurations > Settings > Category Inheritance Manager. You should be able to see your categories, as well as the facet inheritance settings.

Step 2 - Turn on Pass Down for Shoes

With the default facet inheritance settings, nothing is passed down. Select the button in the first column to turn on Pass Down for Shoes. Now, all categories in the Shoes category branch are inheriting facet rules from Shoes.

Step 3 - Turn off Receive From and Pass Through for Running Shoes

We do not want the Running Shoes branch to inherit facet rules from Shoes. Select the buttons in the second and third columns to turn off Receive From and Pass Through for Running Shoes.

If you look at the inheritance preview for Shoes, you can verify that Running Shoes and Marathon Running Shoes are no longer inheriting facet rules from Shoes.

Step 4 - Turn on Pass Down for Running Shoes

We want Running Shoes to start its own inheritance chain. Select the button in the first column to turn on Pass Down for Running Shoes. Now, all categories in the Running Shoes category branch are inheriting facet rules from Running Shoes.

You can look at the inheritance preview for Running Shoes to verify that Marathon Running Shoes is inheriting from Running Shoes.

You can also look at the inheritance preview for Shoes to verify that Running Shoes and Marathon Running Shoes still do not inherit facet rules from Shoes.

 

Use Case 5: Multiple parents

If a category has multiple parents, then it will attempt to inherit all facet customisations from parents with Pass Down = On. Facet inheritance from multiple parents follows these rules:

  1. If possible, merge all rules as a union. 

    • For example, if parent 1 has a boost rule for Price and parent 2 has a boost rule for Brand, then the child has boost rules for Price and Brand.

  2. Local customisations take priority over inherited customisations.

    • For example, if parent 1 has a boost rule for Price and the child has a bury rule for Price, then the child has a bury rule for Price.

  3. Nodes that are closer to the child category have higher priority than other parents.

    • For example, suppose the child has a level 1 node with a boost rule for Price, and a level 2 node with a bury rule for Price. The child will have a boost rule for Price since the level 1 node is closer.

  4. If conflicts cannot be resolved by any of the above rules, then the parent node with the most recent updates (that is, the latest saved/edited timestamp) will have priority.

You can also select a single parent to inherit from, which will limit inheritance to the selected parent’s category path. See Multiple Parents Conflict for details.

 

Let’s look at the following example:

Sneakers has two parents: Training Shoes and Slip-On. Each category has Pass Down = On and Pass Through = On, so every parent category will pass down its facet customisations to Sneakers. The final facet customisations for Sneakers are Block A, Boost B, Boost D, Block X, and Bury F. 

  • Sneakers has Receive From = On, so it inherits from both inheritance chains.

  • Sneakers has no local customisations, so all of its facet customisations come from its parents.

  • Facets D, X, and F only have one customisation among both chains, so their rules are simply merged into the facet customisations for Sneakers.

  • Facet B has a bury rule at Shoes and a boost rule at Training Shoes. Training Shoes is closer to Sneakers than Shoes is, so Sneakers inherits the boost rule from Training Shoes.

  • Facet A has a boost rule at Shoes, a bury rule at Sports Shoes and Formal Shoes, and a block rule at Slip-On. Slip-On is the closest parent to Sneakers, so Sneakers inherits the block rule from Slip-On.

  • Remember that Receive From = Off only affects what that category inherits. Sneakers inherits the block rule for X from Formal Shoes, even though Formal Shoes and Slip-On have Receive From = Off.

 

Use Case 6: More examples of inheritance chains

In these examples, Category A has a facet customisation of A, Category B has a facet customisation of B, etc. Pay attention to each of the inheritance settings and how they affect the inheritance chains.

Example 6-1

Example 6-2

Example 6-3

Example 6-4

Example 6-5

Did you find this page helpful?
How could this documentation serve you better?
On this page
    Did you find this page helpful?
    How could this documentation serve you better?