Topic Maps

Top  Previous  Next

Topic Maps is a standard (ISO 13250) that defines a model and a syntax for the representation of knowledge. The standard defines three main constructs:

 

Topics - which represent the subjects that the topic map stores knowledge about
Associations - which represent the relationships between subjects
Names and Occurrences - which represent the other properties of subjects.

 

A Topic Map is a collection of topics with their names, occurrences and associations. Names and occurrences can either contain data values or they can point to other any other resources that have their own URI. As shown in the diagram below, this model gives us a clear separation between  conceptual or indexing information stored in the topic map and the information about those concepts that are managed in a separate resource space (this might be a content management system, a traditional relational database system, a website or the Internet).

 

ConceptualOverview

 

Topic Maps are often described as being subject-centric - a Topic Map provides information about a collection of subjects. A subject is literally anything that one might want to talk about - it may be a real physical object (a person, a place, a star  system) an imaginary thing (a fictional character) or something more conceptual (an emotion or a state of being or a state of mind) One of the goals of the Topic Maps standard is that in any given Topic Map there should be just one topic for any given subject which acts as the focus point for all that is known about that subject. To facilitate this the standard has a strong notion of subject identity and supports automatic merging of Topics and Topic Maps to try to achieve the goal of a single topic for each subject.

 

User Benefits

We believe that for many end-users, a good topic maps application will conceal much, if not all, of the topic maps mechanism, allowing users to instead concentrate on the domain model(s) that they work with. However, the topic maps model and the Topic Maps standard do provide a number of benefits that can be surfaced in applications and can be unique selling points.

 

Simple Organizational Metaphor

The core topic maps metaphor of topics, occurrences, and associations strikes a balance between being compact and easy to understand and providing enough basic infrastructure to allow users to translate their mental model of a domain into a topic map model. Other forms of data and information organization such as RDF and the relational model may have a simpler model still, but then require the user to create infrastructure for common procedures such as labeling an item with some names; defining a class structure or creating n-ary relationships between items.

 

Domain/Resource Separation

As already described above, the topic maps model has a clear distinction between the domain model, expressed as topics and associations between topics, and the indexed resources, expressed as occurrences that link topics to resources. Three major benefits can be derived from this structure:

 

The topic map can act as a high-level overview of the domain knowledge contained in a set of resources. In this way the topic map can serve not only as a guide to locating resources for the expert, but also as a way for experts to model their knowledge in a structured way. This allows non-experts to grasp the basic concepts and their relationships before diving down into the resources that provide more detail.

A topic map can be easily partitioned depending on the resources to be made available. Some publishers use a topic map-based index of large sets of resources, and then dynamically create the appropriate index when they publish a subset of those resources. With some thoughtful modeling it is even possible to create different layers of detail in a topic map, and to differentiate between information products based on the indexing and navigation features that they provide as well as the informational content of the products.

 

Topic maps that index different resource sets can be easily combined. This feature can be used to allow organizations to "import" third-party data and indexes and seamlessly integrate their own data and indexes.

 

No Fixed Ontology

As already noted, the Topic Maps standard does not come with a predefined ontology. There is no restriction on the domains to which topic maps can be applied and relatively few constraints even on the modeling approach taken. We have seen topic maps used to model temporal relationships between events; relationships between abstract concepts and their depictions; and forms of first order logic, as well as more traditional relationships such as thesauruses; controlled vocabularies, and business information.

 

XML Interchange Syntax

For many users, the fact that topic maps can be interchanged using a standard XML-based syntax provides a strong benefit in improving the portability of their data between applications and platforms. In addition, the XML interchange syntax allows easy integration of topic map information exchange within the Web services architecture.

 

Developer Benefits

There are three principal benefits that system architects and developers can gain from the application of the topic map paradigm, and they can be summed up as "Flexibility, Flexibility, and Flexibility."

 

Flexible Schema

Topic maps provide the meta-model on which a completely flexible application model can be built. Creating new types of business objects can be achieved by adding data to the ontology that constructs the topic map. Because the ontology is itself expressed as topics and associations between topics, extension of the ontology becomes an issue of adding data, not an issue of redesigning the underlying storage schema. This makes it possible to modify the data model used by an application without the need to upgrade deployed persistent stores.

 

Flexible Application Structure

With the application data stored in a standardized and extensible meta-model, the path is open to enable much simpler third-party application integration and extension. This model would allow a third-party developer to define his or her own data and code extensions to an application without relying on the core application's schema supporting the extension-specific data structures. This can become even more significant inside an organization as a topic map store original developed with one application and schema in mind can be easily extended to support another application that has different schema requirements and both applications can gain synergies from the overlap between them.

 

Flexible Extension

In addition to allowing third-party extensions to the application schema, the flexibility of the topic map structure can be used to allow users to create his or her own extensions. This has two effects:

 

It enables applications to be highly customizable: allowing much easier integration of customer-specific data systems, for example. We see this as being the key to vertical applications that can be more easily deployed for multiple customers. For example, one successful topic map application was produced by a publisher of legal information for the financial services market. The unique selling point of their topic-maps based product is that they can integrate their customers' marketing and procedures documentation with the legal information they provide.
It enables development of horizontal applications that can be integrated more easily into existing environments.