The informative Topic Maps website maintained by
Michel Biezunski (InfoLoom) and
Steven R. Newcomb (Coolheads Consulting)

The Structure of Topic Maps Foundations

Michel Biezunski and Steven R. Newcomb

June 27, 2001

Contents

Introduction

Topic Maps Parsing versus Topic Maps Processing

The Topic Maps Graph Document Type Definitions


Introduction

The Topic Maps standard currently has two syntaxes:

  1. The ISO/IEC 13250 Document Type Definition, which is based on SGML/HyTime.
  2. The XTM 1.0 DTD, which has been designed to be optimized for the Web, and is expressed in XML.

These two syntaxes for expressing Topic Maps can be processed according to rules defined in the standard. These rules include:

  1. The name-based merging rule: two topics having the same name in the same scope merge.
  2. The subject-based merging rule: two topics declaring the same subject merge.
  3. The node demander rule: several constructs, including topic types, roles played in associations, occurrences, topic names, etc., resolve as topics, even if they are not declared syntactically as such.

These rules are mentioned in the standards, and are explicitly developed in Topicmaps.net's Processing Model for XTM 1.0, version 1.0.1 (March 20, 2001).

Topic Maps Parsing versus Topic Maps Processing

The development of Topic Maps and the project of developing new application layers has led to redefine the vocabulary. We therefore propose to reserve the term "Topic Maps parsing" to express the transformation from one of the syntaxes used for interchanging topic maps (Hytime-based and XML-based) to an exploded form, which can be described as a graph. "Topic Maps processing" would then be used as a generic term to express all kinds of manipulations that can be performed on the result of parsing, i.e., querying topic maps, expressing the rules for building topic maps, visualizing topic maps, etc.

The result of parsing topic maps can be best expressed as a graph (although this is not the only way to express it). The information granules contained in this graph, called a "Topic Maps Graph", is what applications understand and is the basis for the various processing applications mentioned above.

The Topic Maps Graph Document Type Definitions

Since the structure of the Topic Maps Graph is well defined, it seems natural to express it in the form of an XML structure. We have chosen the Document Type Definition formalism, but another formalism such as XML schemas, Relax, or any other formalism could be used instead. Transformation from one formalism to another is straightforward and there is no particular requirement here which would prevent another formalism to be used.

These DTDs express the foundations of the Topic Maps paradigm.

The simple Topic Maps Graph Document Type Definition

The purpose of the simple Topic Maps Graph Document Type Definition is to express the graph in a simple XML expression, which uses a minimal number of element types, and its main purpose is to help the XML community to understand quickly what the Topic Maps Foundations consist of.

No information is lost in the graph structure compared to the original syntax, even if the order and number of elements is different.

The Topic Maps Graph API Document Type Definition

In supplement from the simple graph DTD, we are providing another representation of the same information, optimized for building applications and can be built using standard XML-based approaches, such as DOM-based technologies. This DTD, called the "Topic Maps Graph API" DTD contains an Application Programming Interface to Topic Maps Graphs.

These two DTDs have no other status than informative. They are proposed as input for the discussion going on for establishing solid foundations for the Topic Maps standard. It is our hope that they will be considered useful in this process.