The Role of the Topic Map Schema

Top  Previous  Next

An NPCL topic map schema can be defined using the TMCore topic map editor and allows developers to define a set of topic, association, occurrence and association role types that can be used by authors to create the topic map data. The schema allows you to define which types of topic can be used in associations of a particular type and to control which types of occurrences can appear on topics of a particular type. The schema information is then used by the Topic Map tab to guide end-users when they classify pieces of content. The User Guide provides more information on the use of the Topic Map Tab.

As well as guiding end users in how to classify content of a particular type, the topic map schema also provides guidance to developers who are going to use the topic map data to create better navigation and links as part of the EPiServer site.

The basic structure for an EPiServer site using TMCore EPiServer Module is that each EPiServer page is represented by a topic in the topic map, referred to as the page topic. The page template that displays this content can then query the topic map to find related topics, and either directly or indirectly other pages that are themselves topics. For example, when viewing an ecology report page that is connected to the environmental theme 'Deforestation' it is possible using the topic map to pull out all other topic pages that are also about deforestation and render them as links on the final page.

It should be noted at this point that the addition of Topic Maps to the EPiServer product does not replace any existing working practices. Content is still created in the same way; documents are still versioned and go through the normal approval process to publication on a live site. What is replaced are the navigation controls that form menus, or fill left and right screen collateral. The topic map is used to better link together the set of content pages via concepts rather than hard coded links or a single navigation hierarchy.

The main role of the EPiServer developer is to integrate the controls that are part of the standard package into EPiServer page templates to fetch and display relevant information onto pages of each different type.