(Continued from Topic Mapping Roundup
The idea of topic mapping
is just starting to become important for me, as other people (mainly Matt Mower
and Paolo Valdemarin
- see k-collector
) are putting together sites that collect weblog posts under topic headings, like my own Topic Exchange
, and, as expected, all the topic names are different.
Topic mapping is a simple concept: it's about showing how topics relate to each other - which ones are equivalent, and how they fit into a hierarchy (or multiple hierarchies). A topic is a sort of category
- a heading under which you can put stuff. Stuff
being weblog posts in this case.
tool (which is now part of k-collector) lets you maintain a whole bunch of topics and use them to categorise your weblog posts. My own blogging tool, bzero
, lets you put a line like %topics blogging tools, topic exchange, k-collector
in a post file and collates these topics into a local index (example
Now we have a problem: we have my topics
and Matt's topics
(OPML version - can't find the HTML one), except not all of our topic names coincide.
So, we make a topic map that shows which ones are equivalent. This can take many forms. Below is a very simple equivalence mapping of some topics within k-collector and some within the Topic Exchange.
kc: BlogTalk = te: blogtalk_conference.
kc: Emergent Democracy = te: emergent_democracy.
te: foaf_supplort = te: foaf_support.
kc: Google = te: google.
kc: Marc Canter = kc: Marc Canter.
kc: Matt Mower = kc: Matt Mower.
kc: Mikel Maron = kc: Mikel Maron.
kc: PlanetWork = te: planetwork_conference.
kc: RSS aggregators = te: agregateur_personnel_nouvelles.
kc: Social Software = te: social_software.
te: technology = kc: Technology and Society.
te: test = te: test_auto = te: test_autowithcaps = te: test_freebsd = te: test2 = kc: testing.
te: the_matrix = kc: The Matrix.... = te: thematrix.
te: topic_exchange = kc: TopicExchange.
This can be expressed in plain text format as follows:
Emergent Democracy http://k-collector.evectors.it/itentdirectory/wwwwtopic?dir=261
... (see whole file)
However, this sort of format is limited in what it can express - it only allows equivalences. We might also want to show some other things, i.e. whether something is a sub-topic of another topic, or whether two topics are related (but not equivalent).
So, we need something a little more complicated. Something a lot
more complicated would be too much, but we need to be able to express more than just equivalence.
I started writing a spec for Really Simple Topic Mapping
, but then found XFML
, which might be what we want. Topics would become
s, meta-topics would become
s, and we indicate equivalence with &code><connect>. It seems to enforce a rigid hierarchy
on things (I can't immediately see how to classify thematrix
as movies | wachowski brothers | the matrix
and religion | gnostic | the matrix
, for example). Hopefully we can work around this.
Now: question time. Has anyone reading this used XFML? Comments please. Would you want to export your data (or want me to export my data) in XFML format? Can you parse it?
Jon Udell: quick & dirty topic mapping
sells software to manipulate topic maps (?)