So what the samhill are Topic Maps?
The new ISO standard ISO/IEC 13250 Topic Maps defines a model
and architecture for the semantic structuring of link
networks. Dubbed the "GPS of the information universe", topic
maps will become the solution for organising and navigating
large and continuously growing information pools, and provide
a "bridge" between the domains of knowledge representation and
information management.
Formally speaking, the ISO standard defines a model and
interchange syntax for Topic Maps. The basic concepts of the
standard are topics, occurrences of topics, and relationships
("associations") between topics. A topic map in its
interchange form is an SGML (or XML) document (or set of
documents) in which different element types are used to
represent topics, occurrences of topics, and associations
between topics.
Like most super geek XML/SGML technologies, they aren't as
frightfully complex as they first appear (my theory is that
SGML folks have long felt, perhaps justifiably, that
real programmers and CS-types look down on matters as
mundane as SGML, so they complexify unnecessarily to
compensate). What you really need to begin to understand Topic
Maps is example code in a clean elegant language. The
Python
implementation of a Topic Maps processor did the trick for
me. Most folks will need to see Perl code (<shudder/>).
Topic Maps are going to be one of the Next Big Things in the
SGML/XML world; that doesn't mean they'll actually be useful
(as these things go, actual usefulness can be very hard to
predict), but knowing what they are, and how to work with
them, will be profitable for anyone crazy enough to figure
them out.