Catalog and Relationship policies

Current version: 10.3

The Catalog plugin contributes catalog and catalog relationship policies that define behavior for the functionality provided by the plugin.

Note

Do not extend or inherit from out-of-the-box policies; instead, create your own.

You can change the values of default policies by modifying the PolicySet JSON or the Environment JSON, depending on where the policy is defined, and then re-running Bootstrap.

The following policies can be configured through the Catalog plug-in.

Policy

Description

Properties / Default Values

CatalogCachePolicy

Defines cache settings for some catalog lists.

Expiration / 300000 (this represent miliseconds)

AllowCaching/ true

CatalogsCacheName/ "Catalogs"

CategoriesCacheName/ "Categories"

RelationshipsCacheName/ "Relationships"

SellableItemsCacheName/"SellableItems"

AssociatedCatalogsCacheName/"AssociatedCatalogs"

NonAssociatedCatalogsCacheName/ "NonAssociatedCatalogs"

ProductCachePolicy

Defines the caching policy for catalogs and products.

GlobalCatalogPolicy

Defines global settings for catalogs.

MaxCatalogLength/ 128

MaxSellableItemLength/ 50

MaxSellableItemVariationLength/ 50

MaxCategoryLength/ 50

MaxRelationshipDefinitionLength/ 50

AllowPromotionsToBeReturnedWithSellableItem - returns promotion information with the sellable item. To improve performance, set the property to false so that no promotion information is returned even if it is asked for. Default is false.

ReturnPriceAndInventoryWithFreeGiftSelections - retrieves price and stock information for the Free Gift Selection when the GetCart method is executed. To improve performance, set the property to false. Default is true.

ProductLoggingPolicy

Defines the logging policy for products.

VariationOptionPolicy

Defines the sellable item variation policy.

KnownBundleTypePolicy

Defines the known type of the product bundle.  Currently, supported type is static

KnownCatalogActionsPolicy

Defines the catalog and category action names (e.g., add, edit, delete).

AddCatalog / "AddCatalog"

DeleteCatalog / "DeleteCatalog"

EditCatalog / "EditCatalog"

AddCategory / "AddCategory"

EditCategory / "EditCategory"

SelectCategoryDeleteOption / "SelectCategoryDeleteOption"

ReparentItem / "Reparent"

AddSellableItemVariant / "AddSellableItemVariant"

DisableSellableItemVariant / "DisableSellableItemVariant"

DeleteSellableItemVariant / "DeleteSellableItemVariant"

ReparentItemConfirmation / "ReparentConfirmation"

AddSellableItem / "AddSellableItem"

DeleteSellableItem / "DeleteSellableItem"

AssociateSellableItemToCatalog / "AssociateSellableItemToCatalog"

AssociateSellableItemToCategory / "AssociateSellableItemToCategory"

AssociateCategoryToCategoryOrCatalog / "AssociateCategoryToCategoryOrCatalog"

EditSellableItemDetails / "EditSellableItemDetails"

EditSellableItemIds / "EditSellableItemIds"

EditSellableItemDisplayInformation / "EditSellableItemDisplayInformation"

EditSellableItemCustomerReviews / "EditSellableItemCustomerReviews"

EditSellableItemSpecifications / "EditSellableItemSpecifications"

EditSellableItemPricing / "EditSellableItemPricing"

AddSellableItemListPrice / "AddSellableItemListPrice"

EditSellableItemListPrice / "EditSellableItemListPrice"

RemoveSellableItemListPrice / "RemoveSellableItemListPrice"

AddSellableItemImage / "AddSellableItemImage"

RemoveSellableItemImage / "RemoveSellableItemImage"

PaginateCategoryList / "PaginateCategoryList"

DeleteCategory / "DeleteCategory"

DisassociateItem / "DisassociateItem"

ManageItemDefinitions / "ManageItemDefinitions"

SelectCatalogToAssociateComposerTemplateToItemDefinitions / "SelectCatalogToAssociateComposerTemplateToItemDefinitions"

AssociateComposerTemplateToItemDefinitions / "AssociateComposerTemplateToItemDefinitions"

KnownCatalogListsPolicy

Defines the names for lists of catalogs, catalog products, categories, sellable items, relationship types.

CatalogProducts / "CatalogProducts"

CatalogItems / "CatalogItems"

Catalogs / $"{CommerceEntity.ListName<Catalog>()}"

Categories / $"{CommerceEntity.ListName<Category>()}"

SellableItems /$"{CommerceEntity.ListName<SellableItem>()}"

PurgeCategories / "PurgeCategories"

PurgeCatalogs / "PurgeCatalogs"

KnownCatalogViewsPolicy

Defines the names of the views for catalogs, categories, sellable items.

MerchandisingDashboard /"MerchandisingDashboard"

PickParentCategory /"PickParentCategory"

Catalogs /"Catalogs"

Categories /"Categories"

PickParentConfirmation /"PickParentConfirmation"

CategoryToAssociate /"CategoryToAssociate"

SellableItemVariants /"SellableItemVariants"

SellableItemPricing /"SellableItemPricing"

SellableItemListPricing /"SellableItemListPricing"

Variant /"Variant"

SellableItems /"SellableItems"

SellableItem /"SellableItem"

DeleteSellableItem /"DeleteSellableItem"

ConnectCatalog /"ConnectCatalog"

ConnectCategory /"ConnectCategory"

ConnectSellableItem /"ConnectSellableItem"

Master /"Master"

Summary /"Summary"

Details /"Details"

AddSellableItemImage /"AddSellableItemImage"

DeleteCategory /"DeleteCategory"

ManageItemDefinitions /"ManageItemDefinitions"

AssociateComposerTemplateToItemDefinitions /"AssociateComposerTemplateToItemDefinitions"

VariationPropertyPolicy

Displays facets such as color or size variants on the Storefront product details page.

PropertyNames / Enumerable.Empty<string>()

SitecoreCatalogIndexingPolicy

Defines the settings for Sitecore catalog item indexing.

Name / string.Empty

IncrementalListName / string.Empty

DeletedListName / string.Empty

EntityTypeNames / List<string>()

The following table describes the relationship policies:

Policy

Description

Properties/Default

RelationshipPolicy

Defines the available relationship in the system.

Type / string.Empty

AllowedTargetTypes / Enumerable.Empty<string>()

AllowedViews / Enumerable.Empty<string>()

KnownRelationshipViewsPolicy

Defines the names of the relationship definition entity views.

RelationshipsDashboard / "RelatioshipDasboard"

RelationshipDefinitions / "RelationshipDefinitions"

RelationshipEntities / "RelationshipEntities"

CustomRelationship / "CustomRelationship"

AssociateEntity / "AssociateEntity"

Summary / "Summary"

Details / "Details"

Master / "Master"

KnownRelationshipListsPolicy

Defines the names of the relationship definition transient and entity indexes lists.

DefaultRelationshipDefinitions / "DefaultRelationshipDefinition"

CustomRelationshipDefinitions / "CustomRelationshipDefinitions"

KnownRelationshipActionsPolicy

Defines the names of the relationship definitions entity view actions.

AddRelationshipDefinition \ "AddRelationshipDefinition"

EditRelationshipDefinition \ "EditRelationshipDefinition"

AssociateEntity \ "AssociateEntity"

DisassociateEntity \ "DisassociateEntity"

Note

Do not extend or inherit from out-of-the-box policies; instead, create your own.

You can change the values of default policies by modifying the PolicySet JSON or the Environment JSON, depending on where the policy is defined, and then re-running Bootstrap.

Do you have some feedback for us?

If you have suggestions for improving this article,