Manage Attribute Inheritance

Summary

 

Attribute Inheritance helps simplify how users manage product data across large, complex catalogs.

If you're a retailer, manufacturer, or distributor with a wide range of components or products, organizing your products in a structured, hierarchical way can significantly improve efficiency. This approach is especially beneficial for businesses with multiple brands, categories, or business units, as it allows for common product information (i.e. attributes) to be defined once at a higher level.

Attribute Inheritance allows you to define shared attributes once and reuse them across multiple product families to:

  • Achieve a faster PIM implementation and an easier catalog evolution with a visual hierarchy
  • Provide a more flexible product organization to simplify and standardize complex product catalogs

 

 

 

Your Professional Services consultant and/or Partner can also help you transition to this new structure of data model.

 

 

Key capabilities

With Attribute Inheritance, users can define:

A parent family (i.e., ‘Accessories’)
One or several child families (i.e., ‘Belts’, ‘Scarves’, ‘Sunglasses’) that will inherit all attributes from the parent family
Users can add specific attributes to each children family as needed

 

Permissions

We've added a new Access Control List (ACL) permission specifically to access and edit the ‘Attribute Inheritance’ feature. It is located under 'Edit family hierarchy' under System > Roles.

By default, this ACL is enabled for all administrator roles.
 

 

Functional specifications

  • What happens when I assign a parent to a family?

When you assign a parent to a family, you are creating a hierarchy, turning them into a parent and child relationship. The child family will then inherit attributes and their completeness requirements from the parent.

You have a few ways to link families together in the Settings > Families section of your PIM:

  • Drag and drop: Simply drag the family you want to make a child family onto its desired parent family.
     
  • Assign it directly on a child family properties page: By going to the Settings > Families, select the family you want to make a child family, and then assign its parent family directly under the 'Hierarchy' section.
     
  • Create a new sub-family: By hovering your mouse over a family, you will see a 'New sub-family' button appear. Clicking this button will automatically create a new child family nested under the parent family you hovered over.

 

Please note that:

  • You can not override the parent's completeness requirements at the child family level.
  • While child families keep their existing attributes, their completeness may change based on the parent's requirements.
  • A "change summary" pop-up screen will appear to guide you each time you nest a child family under a parent.
 

 

 

  • What happens if I delete an attribute that exists in a parent family and its child families?

In that case, deleting it from the parent will trigger a notification, informing you that it will also be removed from all related child families. If you change your mind, you will have the possibility to re-add this attribute manually to the parent family or to any of its child families as required.

 

 

  • How should I move attributes up or down in the hierarchy?

    - To assign attributes down in the hierarchy (from a parent family to one of its child families), you will have two options that we can recommend:


    • To proceed with an import. In your import file, if you would like to make an attribute specific to a child family instead of its parent, you can delete the attribute from the parent family and then add it directly to the child families where you want it.

       
    • To proceed manually. Here’s an example to help you visualize this manual drill down process.

      If an attribute 'battery_type’ is currently defined at the parent family level ‘Bike’, but you would like to move it to your E-bike children family (and not the other children family):

      1. You can temporarily set the ‘E-bike’ family as a root family (i.e. without any parent) so it no longer inherits from the ‘Bike’ family.
      2. Then, remove the ‘battery_type’ attribute from the ‘Bike family’, as it should no longer be shared across all ‘Bike’ related children families.
      3. Add the ‘battery_type’ attribute directly to the ‘E-bike’ family, now that it is independent.
      4. Once the attribute is added, you can reposition the ‘E-bike’ family as a sub-family under the ‘Bike’ family, to restore their hierarchical relationship.

      By temporarily making the child family independent, you prevent the attribute from spreading to other sub-families. This way, you can assign specific attributes to one family without affecting other products.

      Please note, that if you want to drill down this ‘battery_type’ attribute to other families, you will need to this process for every child families. 
       

When changing a parent family, attributes inherited from the initial parent family will be kept inherited in the child family. If you want to remove these attributes, we can suggest to check the dedicated section What happens if I delete an attribute that exists in a parent family and its child families?’

 

 

- To assign attributes up in the hierarchy (from a child family to its parent family), you will have two options that we can recommend:

  • To proceed with an import. In your import file, you'll need to include it under that parent family in your import file.
  • To proceed manually in the UI, by adding the attribute to the parent family.

 

  • Can I revert to a flat family structure if needed or detach some child families from their parent?

To transition back to your old ‘flat’ structure with attributes that only have their own characteristics and requirements (and that do not inherit from any parent family attributes), you can go to your children family in the Properties tab and the ‘Hierarchy’ section.

To revert a child family back to a "flat" structure, meaning its attributes only have their own characteristics and don't inherit from any parent family attributes, you can follow these steps:

  1. Navigate to the ‘Properties’ tab of your child family, and locate the ‘Hierarchy’ section.

     

 

2. You will be redirected to a pop-in window where you can, either change its parent family or remove an existing inheritance by selecting the cross symbol.

Once you save this change, your child family will no longer be linked to its former parent family.

 

Please note that any attributes previously inherited from the parent family will remain in the child family. To remove of keep these attributes if needed, you can go to the Attributes tab. This ensures minimal impact from this change, as it won't affect existing products, product models, or product variant values.

 

 

Packaging

The ‘Attribute Inheritance’ feature offers two different packaging depending on your own Akeneo commercial packaging.

  • For Growth & Advanced Packages: users will be able to define a parent family with one or several child families.
    • Users can define a parent family (i.e. ‘Bike’).
    • Children families (i.e. ‘Ebike’, ‘Mountain Bike’ and ‘Road bike’) that will inherit all attributes from the parent family.
    • Users can add specific attributes to each child family as needed.
    • Completeness is calculated based on both inherited and specific attributes.

Here is an example of what the hierarchy could look like for a ‘Bike’ family that will be the parent family, with ‘E-Bike’, ‘Mountain Bike’ and ‘Road Bike’ as their child families.

 

For Premium Packages: users will be able to define multiple parent families with their child families, that could themselves be parent families for other child families.

For businesses with more complex structures, as the ones with multiple Business Units or different brands operating within the same PIM instance, our Premium packages offer extended flexibility.

You will benefit from up to 20 levels of family hierarchy. This means you can have a parent family, with a child family, that has its own child family, and so on, for up to 19 nested levels below the initial parent.

Here is an example of what the hierarchy could look like for a ‘Painting & Decorating’ family that will be the parent family, with ‘Brushes & Rollers’, ‘Surface Preparation’ and ‘Paint & Primers’ as their children families. Under ‘Paint & Primers’, you will be able to nest several children families ‘Exterior Paints’, ‘Interior Wall Paints’ and ‘Wood Primers’ for example:

 

Compatibility with Onboarder

Attribute Inheritance is not currently compatible with Onboarder.