Attribute Groups

Attribute groups are use to logically group attributes in grin and in the product details in PDX UI. Each attribute can be added to multiple attribute groups. If it’s not added to any group, it will be visible in the “Ungrouped attributes” section.

Attribute is added to a group by setting groupIds property.

Generic properties

Attribute type idType specific restriction parameters
idAttribute group id - used internally by PDX. Attribute id can not be blank and can only contain alphanumeric characters, plus specific special characters: “ -_#:” (including space).
nameAttribute group name visible in the PDX UI. Can not be blank.
descriptionAttribute group description. Not mandatory.

Special attribute groups

There is a number of special predefined attribute groups which have a special function in PDX UI.

List view

List view attribute group (id: __LISTVIEW) - attributes from this group can be selected to be visible in list view. There should be at least 5 such attributes as this is the number of columns available in list view.

📘

While not required, it makes the most sense for all selected attributes to belong to the root category because list view always shows the same attributes regardless of the category.

Packaging identifiers

Packaging identifiers attribute group (id: __PACKAGING_IDENTIFIERS) - attributes from this group are visible “Packaging identifiers” section in packaging details section.

Attribute filter

Attribute filter attribute group (id: __ATTRIBUTE_FILTER) - attributes from this group can be used to filter products in the grid.

Product identifiers

Product identifiers attribute group (id: __PRODUCT_IDENTIFIERS) - attributes that can be used as identifiers in retrieval process.

Code Example

AttributeGroup attributeFilterAttributeGroup = AttributeGroupBuilder.attributeFilterAttributeGroup().build();
AttributeGroup listViewAttributeGroup = AttributeGroupBuilder.listViewAttributeGroup().build();
AttributeGroup reguralAttributeGroup = AttributeGroupBuilder.regularAttributeGroup("REGULAR", "Regular attribute group").build();
[ {
  "id" : "__ATTRIBUTE_FILTER"
}, {
  "id" : "__LISTVIEW"
}, {
  "id" : "REGULAR",
  "name" : "Regular attribute group"
} ]