Knowledge meeting Topic Maps

/ en/ article /knowledge-meets-topicmaps_en.phpSubjects: topic maps, xtm, information source, relationship, semantic layer

Everyday we are submitted to an enormous amount of information, for example TV news items, newspaper articles, a scientific article, but also information from the conversations we have with friends. We are able to process this information because we give ‘meaning’ to this information. This ‘meaning’ we take from contextual information and from relationships with events and information from the past. For example, the information “unknown virus strikes the Netherlands” has a different meaning in a medical journal than that same sentence would have in a computer magazine. In the field of digital information processing there is now a model that builds on this way of adding meaning to information: Topic Maps?.

Charting information

Topic Maps is not a programming language, neither a meta language; it is a model to chart complex information structures. A topic map is a semantic layer on top of the information stored in databases and text documents or other storage applications. By means of a topic map we can get direct access to the information we need, and to all other relevant information. Topic Maps is able to do this because a topic map:

  • identifies the subjects – or concepts – that are stored in the information;

  • defines and describes the relationships between these concepts;

  • connects the concepts with the underlying information.

topic maps

Building blocks

The Topic Maps model has a number of important key concepts: topics, associations and occurrences. Here follows a short description of these building blocks.

Topics

Two topics with an association

A topic says something about an object or subject in the real world. That object could be a person, but also a painting or even a particular thought. A number of statements or assertions can be made about that topic. A topic could have a name: 'Stephen Fry' for example, and have certain characteristics like: 'actor' or 'writer' depending on the type of association that connects to another topic. These characteristics on their turn are also topics about which statements can be made. 'film', 'book', 'Hugh Laurie'; are other examples of topics.

Associations

An association describes a relationship between topics. The actor Stephen Fry played in 'The Discovery of Heaven' and the writer Stephen Fry wrote 'The liar'. An association is of a certain type. In the first example the relationship is of the type: 'plays in', and in the second example the relationship is of the type 'wrote'. Inside a topic map these association types on their turn are also topics about which statements can be made and that are related to other topics. In this way a meaningful layer develops, that is self-describing and easily to extend.

Occurrences

An occurrence connects a topic with an external information source. In the case of Stephen Fry you could think of:

  • a biography somewhere on the Internet

  • a film review on a film site

  • an ISBN-number of one of Fry's books in a library system

  • an interview in a magazine.

Just like associations occurrences are of a certain type. An occurrence type denotes the nature of a resource: biography, film review etc.

Occurrences are in a way like the page numbers of an index in the back of a book. Topic maps are often presented as a kind of digital index. That is true to a certain extent, but because of the interplay between topics, associations and occurrences a topic map is way more powerful than an index. A topic map could best be described as a combination of an index and a thesaurus, if a comparison would have to be made.

Scope and subject identity

These three concepts - topics, associations and occurrences - together form the heart of a topic map. Besides these concepts there are a number of characteristics that give the Topic Maps model enormous flexibility.

Scope

All statements – names, associations and occurrences – can be associated with a certain domain, a scope. The scope defines the context in which a statement is valid. The concept of scope is often used in multilingual applications. The name 'The Discovery of Heaven' is a valid name in the scope 'English', while the name 'De Ontdekking van de Hemel' is valid in the scope 'Dutch'. Scopes can also be used to refine statements. For example, the association 'plays in' could appear in one of the scopes: 'stage', 'film', 'TV series'. Such a refinement makes it possible for the end user to search highly specific information.

Subject identity

An other important concept is the concept of subject identity. Subject identity is the idea that a topic depicts a real world object which can often be identified by means of a subject indicator (a URI reference to a source with information about the subject). So if two topics share the same subject indicator they both deal with the same subject. Using this concept it is possible to merge two independently created topic maps.

XTM

A topic map can be written or exported as an XML document. The XML language that has been developed for this purpose is called XTM (XML Topic Maps). There is also an SGML version but because of the popularity of XML it is likely that XTM will be preferred by most users. The Stephen Fry example would roughly look like this in an XTM document:

<topic id="discovery-of-heaven"/>
<topic id="actor">
<topic id="movie"/>
<topic id="stephen-fry">
  <baseName>
    <baseNameString>Stephen Fry</baseNameString>
  </baseName>
  <occurrence>
    <instanceOf>
      <topicRef xlink:href="#biography">
    </instanceOf>
    <resourceRef xlink:href="...url for a biografy ..."/>
  </occurrence>
  <occurrence>
    <instanceOf>
      <topicRef xlink:href="#interview">
    </instanceOf>
    <resourceRef xlink:href="...url for an interview ..."/>
  </occurrence>
</topic>
<association>
  <scope>
    <topicRef xlink:href="movie"/>
  </scope>
  <member>
    <roleSpec>
      <topicRef xlink:href="#plays-in"/>
    </roleSpec>
    <topicRef xlink:href="discovery-of-heaven"/>
  </member>
  <member>
    <roleSpec>
      <topicRef xlink:href="#actor"/>
    </roleSpec>
    <topicRef xlink:href="#stephen-fry"/>
  </member>
</association>

Usages for Topic Map

So where can the principle of Topic Maps be applied? An obvious use of Topic Maps is the creation of a navigational layer on top of a collection of information. The information can be searched and browsed by means of a topic map. Complex queries become possible: 'find all TV series in which Stephen Fry co-performed with Hugh Laurie'. Portals and other web sites that offer lots of information in a wide variety could benefit from using topic maps in this way.

Because topic maps not only hold references to information but also say something about the subject itself topic maps could very well be used for knowledge management tools.

The characteristic of Topic Maps to merge independently created topic maps makes it possible to combine information from a variety of sources in one topic map. In this way you can integrate information coming out of systems that are not even aware of the other's existence.

Create a topic map? A how-to

As the short example about Stephen Fry shows it is not easy to create a topic map. The benefits of a well-designed topic map are evident: quick and meaningful extraction of information. In designing a topic map two fields of expertise come together: there should be expertise regarding the content of information to describe the meaning of the information and there should also be technical expertise to transform the knowledge about the information into a topic map.

XTM? documents, like all XML documents, can be written in a plain text editor. However, that is a hell of a job. Fortunately there are a number of authoring tools and frameworks available.

When a topic map is designed on top of structured information like XML documents it might be useful to use scripting. The scripts could automatically generate (parts of) a topic map. Finally there are so-called 'Virtual Topic Maps'. These are topic maps that lay on top of database and that can be managed automatically. Such a topic map is always up-to-date and could be merged dynamically with other topic maps to build a much broader topic map.

  • The concept Topic Maps is well explained in the article 'The TAO of Topic Maps'>>

  • Technical report and references on Topic Maps>>

  • The ISO standard ISO/IEC 13250:2002 Topic Maps>>

  • Manuals, suppliers and sources>>

Charting ...

Building ...

Scope ...

XTM ...

Usages ...

Create ...