Catalogue Template

Site Map
Application Guide
Contact Whitebeam
Whitebeam Users

Catalogue Template


The Catalogue template primarily maintains information about the organisation of items and details of each item. Items could be considered as entities of an e-business portfolio of products and/or services that are available to internal and/or external consumers or indeed prospective customers.

The template supports a straightforward and comprehensive interface for easy manipulation of catalogue information in the database.


A catalogue can have any number of categories. Each category has a standard set of properties such as name and description and is assigned a unique identifier (nodeID) when created. A multi-level hierarchy of categories can be formed by linking each category to a parent identifier (parentID). Such links can be formed when a category is created or modified. When a category is created without a parentID or with a parent identifier of value zero, then it is considered a top-level category. Each top-level category is implicitly a sub-category of a virtual root category.

A catalogue can also have any number of items. An item has a standard set of properties such as item code, description and keywords. It can also have multiple prices and can be associated with multiple pre-existing files created by the File Object. Each price has a standard set of properties such as price order, base price, currency and description. Every item in the catalogue is automatically assigned a unique identifier (itemID) when it is created.

A newly created item is implicitly linked to or becomes a sub-item of the root category. This implicit link is removed when the item is explicitly linked to another category. An item can be explicitly linked to more than one category. The catalogue template also allows explicit links to be removed and will again implicitly link an item to the root node if the last explicit link is removed.

The catalogue template automatically maintains a marker (contentsMkr) to indicate the presence of a category’s sub-entities (i.e. sub-items and sub-categories). When the category is modified to change its parent, its hierarchy of sub-entities also ‘move’ to the new parent. If instead, a category is deleted from the catalogue, its parent category will automatically become ‘foster’ parent to its sub-entities.

Items can also be logically grouped in a non-hierarchical manner within a container item. The sub-items or contained items are all linked by the itemID of the container. Every item in the catalogue is assigned a marker (containerMkr) that denotes membership of a group. An item can belong to only one group otherwise it is a self-contained item. The catalogue template automatically maintains the integrity of each group of items by adjusting the container marker as appropriate. For example, when a container item is deleted, its contained items are automatically marked as self-contained.

The catalogue template allows categories, items and prices to have custom properties. Meta data properties allow the standard set of properties of Whtiebeam objects to be extended to cater for the specific requirements of the client.

The catalogue template allows an extensive set of search criteria to be specified for retrieving categories and items. Either of these searches can be orientated around a category or an item. For example, a search for the parent categories of an item can be conducted as can a search for the sub categories of a specified category. Similarly, all items linked to a particular category and that category’s sub categories can be retrieved, as can container items and/or contained items.

To narrow down the search results, keywords can additionally be specified along with the elements of each record in which to attempt a match. It is also possible to specify how much data is returned for all categories or items matching the search criteria. Reducing the amount of data returned may increase the overall turnaround time for the search.

It is also possible to specify the index of the first item to be retrieved from the set of results matching the set criteria.

Example Uses

The diagram below shows the type of relationships encapsulated by the Catalogue template:

  1. Consider a video rental outlet that has a library of films. The details of each film such as title, release date and rental price can be recorded as a catalogue item. Films in the catalogue can be divided into categories such as musical, comedy and thriller. Any film that is a musical comedy can be linked to both the comedy category and the musical category. Each film can have a regular price and perhaps a discount price for film club members.

    Also, it may also be appropriate to form a grouping of old films and another of newly released films through through items that have generic values such as discount or premium to the regular rental price.

    Films are sometimes promoted with other items (e.g. free T-shirts) and images of these along, with the box cover, can be recorded as files using the File template. A film can then be linked to as many of these images as is appropriate which can then be used as prompt when the film is being ordered.

  2. This application developers guide in its entirety can be considered a catalogue with items organised in a simple hierarchy of categories:

    • Whitebeam templates would occupy the first or top-level category in the catalogue.

    • Whitebeam objects through which template services are requested could occupy the second level of categories.

    • Each Whitebeam object has methods and/or aggregate types that could be the third level of categories.

    • The individual object methods and aggregate types can be items linked to the methods and aggregate types categories respectively.

  3. An example of a non-hierarchical group of items would be T-shirts of the same design but different sizes in an online clothes catalogue. A user browsing the catalogue would be presented with the container item that would contain all the generic details of the T-shirts; if they decided to order they could then be presented with the individually sized items within the container.

Whitebeam release 1.3.36
(loadtime : 16ms)