Adding Dynamic Attributes to Products using the Classification System

Objective

After completing this lesson, you will be able to demonstrate how business users can define new product attributes using the classification system.

Classification Introduction

Classification allows you to define dynamic product attributes, in contrast to the static attributes created when modifying or extending the product type. The terms dynamic and static refer to whether these attributes are always present in a given product. Static attributes can’t be added or removed while the system is running, but dynamic attributes can, using Backoffice. This is a typical Product Manager task.

Note

The simplicity of adding dynamic attributes to individual product items while SAP Commerce Cloud is running contrasts with modifications to the product type. Type modifications affect all items of that type and require a software developer's intervention, including redeployment of your commerce site.

We refer to classification-based attributes as features, but they're also called category features or classification attributes, all these terms mean the same thing.

Features are allocated to individual product items based on their position in a classification hierarchy. This hierarchy consists of classification categories, and features are assigned to them.

Products can now inherit these features in two ways:

Directly: A product is directly assigned to a classifying category and gains its features (classification attributes).

Indirectly: When assigning a classifying category as a parent to a product category, its features are assigned to all products in this category, and those products in its subcategories.

Regular Category Vs. Classifying Category

Let’s clarify the difference between a regular category and a classifying category.

A category is a logical group of products. For example, all staff pool cars can be found in the category "staff pool." Categories can be referenced in the storefront from the navigation bar, assigned a facet, or used in a discount rule.

A classifying category is, in simple terms, a container of attributes (features).

While products could be assigned directly to a classifying category, this isn’t typically done. Instead, a classifying category is assigned as the parent of a regular category, and all the products in that category (or its subcategories) inherit the classification attributes.

The only exception arises when a category inherits from two classifying categories, one of which is a direct parent and the other is inherited from higher up in the inheritance tree. In that case, direct classification overrides inherited classification.

The Classification Catalog

Classifying categories and their features are defined in a classification system, managed in their own catalog, and independent of the product catalogs. This facilitates frequent addition or removal of features.

The classification catalog, as other catalogs, can contain multiple versions, but it contains only one active version, identified as 1.0. It doesn’t need to be synchronized; synchronizing the product catalog will mirror the classification attribute values of Staged products to their Online counterparts.

The online documentation will often refer to the classification catalog as a Classification System.

The flexibility of being able to dynamically add or delete features limits the number of types allowed:

Feature Descriptor TypeAllows display of
StringDescriptions and values in text form
NumberNumerical values
BooleanBoolean values selectable via radio buttons (Yes, No, and N/A)
ValueListPredefined value(s) selectable via a drop-down menu.
The diagram shows that the Classification categories allow us to grant new features to products depending on where they appear in the hierarchy. We can assign a Classifying Category as a parent to any of the categories in our hierarchy, and any item below that category (or its subcategories) will gain that feature.

Note

Rule of thumb: Direct classification overwrites inherited classification.

Also remember: Features are only granted because an item falls under a certain Classifying Category. If you delete the item from that location, it loses these features.

Summary

  • Classification attributes can be assigned directly to a product or indirectly via a supercategory.
  • Classification attributes can be strings, numbers, boolean values, or a value list.
  • Classification categories hold attributes, whereas product categories are containers for products.
  • Classification categories inherit attributes from their parent categories.