Wednesday, 16 May 2007

RDF - An alternative to Topic Maps?

In my last post I described how Topic Maps appeared to be a possible mechanism for creating a flexible database, capable of storing a range of different, and possibly unrelated, items - a heterogeneous database. However, as I also mentioned previously, a couple of things worried me about Topic Maps; namely that work in the area seems to have gone a bit quiet in the last couple of years and, secondly, that there appears to be quite a large European bias to the companies and institutions working in the field - not that this is a bad thing, but what are everyone else up to?

These two things were playing on my mind, so rather than rushing headlong into Topic Maps, I decided to take a step back and spend a bit more time investigating other possible solutions. This search revealed that there is another possible solution to the problem - RDF - the Resource Description Framework (I'd already suggested in my last post that this could be a possibility). Indeed RDF and Topic Maps appear to cover very similar ground and, from an initial study of the available information, it's hard to decide between the two. It may be that subtle differences exist between the two technologies but my initial impression is that they are pretty much going head-to-head against each other – another VHS versus Betamax, but with probably slightly less interest from the general public.

So what are the actual differences between RDF and Topic Maps and which technology is the most suitable for my purposes? As with Topic Maps, the documentation for RDF is rather sparse and also seems to mostly be a couple of years old - the only book I could find that described both subjects was The Explorer's Guide to the Semantic Web, published in 2004. While this provided a good overview of both technologies, it didn't really cover them at a low enough level for my needs and, by the end, I was still left uncertain of the differences in the two. In addition, RDF has other related technologies - namely RDFS (RDF Schema) and OWL (Web Ontology Language - which surely should be called WOL, although this would have reduced the oportunities to publish books with bird covers) and I felt that these weren't covered in enough detail. The only thing for it was to dig a bit deeper into each subject.

RDF, RDFS and OWL
The definitive (and about the only) text on RDF is Shelley Power's Practical RDF. This book did give low level descriptions of RDF, RDFS and OWL and I'd definitely recommend it for anyone interested in RDF. My only criticism would be that the chapters describing RDF tools are now a bit out of date (the book was published in 2003) and I found quite a few typos and mistakes in the RDF examples - a new edition of the book is surely required. However, by the end, I felt that I'd gained enough knowledge to pursue RDF a bit further.

I think I now understand how RDF, RDFS and OWL fit together. My interpretation is that RDF is a mechanism that can describe simple relationships (subject-predicate-object expressions, known as triples e.g. apples have the colour green). RDF can be serialized using RDF\XML (i.e. an XML based language can be used to describe the RDF relationships). RDF Schema can then be used, in much the same way as XML Schema (XSD) are used with XML, to describe the contents and structure of the RDF, allowing relationships to be created. OWL is effectively built on top of RDFS, extending it to allow the generation of complex class and sub-class relationships.

I'm still not sure about the differences in Topic Maps and RDF (the RDF book didn't cover Topic Maps), so I think the only thing for it is to play with the two technologies. I'll let you know how it goes in the next post.

5 comments:

meejies said...

Greetings Steve,

I found this post while googling for information about Topic Maps and RDF, and I just wanted to comment on your remark about how work on Topic Maps has gone quiet.

You may be interested to know that while work on Topic Maps is quiet, it is also currently active. It is my understanding that several updates to ISO 13250 are slated to be posted on July 2nd.

In addition, Patrick Durusau is teaching a distance course in Topic Maps at the University of Illinois Graduate School of Library and Information Science this summer. I am a masters candidate in UIUC's LIS distance program, and a student in said class. This may be indicative of a trend of renewed interest in Topic Maps, but I cannot say for sure.

Regards,
Marijane White

Steve said...

Hi Marijane - thanks for your comment (it's nice to know that someone is actually out there!). As you rightly point out, research into Topic Maps is still continuing, it's just that it seems to have lost a bit of momentum over the last couple of years.

However, I think that this is a trend that is often shown in many new areas of technology - a flurry of initial activity, followed by a gradual decline in interest. The same appears to have happened to RDF and OWL, although both these technologies are also still progressing.

The downside of course is that the documentation and tools that are available can become outdated and, in some cases, even obsolete. Since my area of expertise is in C# and ASP.NET I'd like to able to work with RDF or Topic Maps using these technologies - however, since the majority of RDF and Topic Maps were written before the widespread adoption of C#, there are very few tools available in this language (especially when compared against the number available in Java) and, in the end, I think that my choice of technology will actually be directly related to the tools available. Hopefully I'll be posting more on this in the near future.

Thanks again for taking the time to comment and good luck with the course.

Steve

Lars Marius Garshol said...

I find this discussion a bit odd, to say the least. Topic Maps are not in some sort of decline, very far from it. They are seeing more commercial use than they ever did before, and there's definitely no lack of research into the subject.

There are four annual conferences with Topic Maps content: the Oslo user conference, the academic TMRA conference in Leipzig, the AToMS conference in Asia, and the Extreme Markup conference in Canada. The TMRA proceedings are published as a book by Springer every year.

There is also a lot of commercial activity on Topic Maps. To take one example, the company I work for, Bouvet, sold 4M USD worth of man-hours on Topic Maps last year. It will be more this year, and we are definitely not alone.

So if you don't see Topic Maps activity it's because you are looking in the wrong places.

Steve said...

This discussion refers to the fact that there hasn't been a single book (other than conference proceedings) published on the subject of Topic Maps since 2002 (this was from a search of Amazon UK - a reasonable place to look for a book).

In terms of tools for Topic Maps, the only .NET implementation I could find was by Networked Planet. This is a highly priced commercial application. Disappointingly there don't appear to be any open-source .NET Topic Maps tools available. As I’ve touched on in some of my blog posts, I do think that Topic Maps sound like a very useful and powerful technology and if anyone could point me in the direction of some then I’d happily take a look.

I'm sure that research into Topic Maps is continuing and that commercial activity is taking place in the area – however I don’t think anyone could describe it as being a hot bed of activity.

Lars Marius Garshol said...

There's an open source Topic Maps engine in progress here: http://code.google.com/p/sharptm/

This project is porting TMAPI to .NET: http://sourceforge.net/projects/tmapinet/

Also, this engine has C# support: http://tmplusplus.sourceforge.net/