Introduced in Feature Pack 2

Content versioning

Use the content versioning feature to enable business users to create and manage historic versions of objects and restore previous versioned objects back to the active content. As a Category Manager or Product Manager, you can manage versions (create, list, view, compare, restore, delete) of business objects (sales catalog, category or catalog entry) in the Catalogs tool. For example, you can create a version of a product or SKU before making short-term changes, and then restore the previous version when the promotional period is over.

When you create a version, the version is based on the current state of the business object. If you modify a business object after creating a version, the version remains unchanged.

Note: The content versioning feature does not replace your content management system.
The following diagram shows the current product, Prod1023, and three versions of the product in the content version repository. If one of the versions is restored, it becomes the current version of the product.
Content versioning architectural overview
  • 1 Versions of business objects are stored in the version repository.
  • 2 Restore a version in the version repository.
You can list the versions of a business object, and preview the contents of a version. Also, you can compare versions of an object or compare the current object with its previous version.
Managing versions of a business object allows you to:
  • Rollback changes: Create a version of a business object, and test the changes. To back out unsatisfactory changes, restore a previous version.
  • Make seasonal changes: Create a version of an object before an event. For example, during Christmas season, you can create a version of a product. The product's image and description are changed to market it for the Christmas season. After the season is over, you can restore the version.
  • Make quick changes: If you do not want to restore the entire object, you can copy contents of previous version to the current object.
When you manage versions of your business objects you improve productivity by removing the need to manually redo changes.

The content versioning feature is currently enabled only for catalog objects. However, your Application developer can customize content versioning to support additional business objects, and to modify which parts of the business objects are saved when a version is created.

The following table lists the tasks you can perform on catalog object versions.
Business object Links to content versioning tasks ...
Sales catalog Working with sales catalog versions
Category (Master and Sales Catalog Categories) Working with category versions
Product Working with product versions
SKU Working with SKU versions
Bundles and kits Working with bundle and kit versions

Using content versioning in workspaces

Content versioning is available to business users who manage content requiring approval under a workspace. Business users can manage versions (create, list, compare, view, restore, delete) while working under a task within a workspace. See Working on version objects within a workspace for more information about using content versioning in workspaces.

When you create a version of an object while working on a task within a workspace, the version created contains changes made to the object within the workspace, and is stored in the version repository. This new version of the object within the workspace becomes the latest version of the object.

You can view a version from within a task in the workspace, or in approved content. When viewing a version from within a task in a workspace, the content of the version is displayed within the context of that workspace, and any references to other objects in the version are also displayed in the workspace.

While working on a task in a workspace, you can restore any version of the object in the version repository in the workspace. Also, you can copy parts of a version into the current object in the workspace. To be able to copy parts of a version or restore a version of an object within a workspace, the object cannot be locked by another task according to the workspace locking policy in place. Any modification to an object (for example, restoring an object version) will remain in the context of the workspace until the task group the object is modified in is approved.

Content versioning best practices

  • Create versions of your business objects before making any major changes.
  • Before restoring a previous version, you should create a version of the business object that includes all the latest changes.
  • Delete versions that are no longer needed. In general, a smaller number of versions is easier to manage and improves performance.

Limitations

  • The offer price of a catalog entry is not versioned when creating a catalog entry version.
  • If the list price of the catalog entry is enabled in the Catalog Filter and Pricing tool, the list price is not versioned when creating a catalog entry version.
  • For the catalog objects owned by the assets store, content versioning is not available in the extended sites store. However, your Application developer can customize content versioning to support catalog objects owned by assets store.

Additional notes

  • You cannot modify the contents of a version. However, you can modify the name or description of the version. Restoring a version means that you are replacing the object with its version and you can then modify the content once restored.
  • A version might reference an object but does not include the copy of the reference object itself. For example, a product version includes references to the images but not the images themselves.
  • When you are viewing an object version, the version can reference an object that no longer exists. In some cases, you will be able to restore the version. For example, if your product version includes a reference to an image, you can restore the version but the image will not be shown when displaying the product. In other cases, you will not be able to restore the version. For example, if the product version contains a reference to a parent category that does not exist, you will not be able to restore the product version.