Faceted Classification

A faceted classification system is one in which each resource is classified according to several separate hierarchical classification systems, called facets. [Murray02] provides a good overview of this form of classification and its applicaiton in organising information. Using a faceted classification system it should be possible to retrieve any instance by drill-down through one of the facets until you reach the entry under which the instance is classified. The power of a faceted classification though is that a user can combine facets to effectively filter the set of all instances far more rapidly. In addition, the facets can be used to address multiple classification criteria. For example a restaurant might be classified by location, cuisine and price range. By expressing these as three separate facets, one enables a user to drill down using the facet of most interest to them.

Faceted Classification Pattern

Each separate facet can be easily modelled using the hierarchical classificaiton pattern already described. However in order to really make use of a faceted classification system it is important to be able to determine what facets are defined in the classification system, and the type or types of association which define the hierarchical relationship between classes in each facet.

In this pattern, we represent each facet with a topic. Doing this enables us to use that topic to provide labels for the facet (for creating the user interface) and also allows us to make further assertions about the topics which define the classes for that facet.

For an application to present a facet, it must be able to determine for each facet:

  1. Which topic represents the root of the facet classification.

  2. What type of association is used to construct the classification hierarchy.

These two pieces of information can be provided by associating the topic which represents the root of the facet's classification and the topic used to type the hierarchical association between facet's classes with the topic which represents the facet itself. The classification hierarchy for the facet must then be constructed from associations of the specified type. For the hierarchy to be properly recognised, such association types must themselves be instances of the Hierarchical Relation Type as defined in the site map pattern.

Figure 12 shows this pattern in detail.

Figure 12 - The Faceted Classification Pattern

PSIs For The Faceted Classification Pattern

Published Subject Indicators For Modelling Faceted Classification

Facet Has Root

http://www.techquila.com/psi/faceted-classification/#facet-has-root

A type of binary association between an topic of type Facet (playing the role Facet) and another topic of any type (playing the role Facet-Root) which is the root class of the facet's classification hierarchy.

Facet Has Hierarchy Type

http://www.techquila.com/psi/faceted-classification/#facet-has-hierarchy-type

A type of binary association between a topic of type Facet which plays the role Facet, and a topic of type Hierarchical Relation Type playing the role of Facet Hierarchy Type. This association asserts that the classification hierarchy used by the player of the Facet role is defined by associations of the type specified by the player of the Facet Hierarchy Type role.

Up: Topic Map Patterns For Information Architecture
Previous: Hierarchical Classification Systems Next: Bibliography