XTech 2005: XML, the Web and beyond.

Topic Maps: experiences from healthcare applications

Discuss this paper on the XTech wiki
View XML source for this paper

Keywords

Abstract

This presentation describes experiences in developing systems based on topic maps for projects in the domain of healthcare.

An initial project on Healthcare Associated Infection started in 2003, and the brief required a system to match the needs of diverse groups of users with a large body of reference resources on infection control. These requirements suggested an approach that would use a concept system to organise the sources, with multiple paths according to user profiles. A search for suitable technology turned up the emerging Topic Maps standard, and the match with the requirements was uncanny.

A small set of key source documents was processed to produce a starter list of domain concepts. An experienced healthcare ontology developer used the list to produce a first draft ontology. Mind mapping software was used to work with users on the further development of the ontology.

The Protégé ontology editor, with the TMTab plugin, produced the required XTM data to support a knowledge base. Server-side software was developed using Java, with the TM4J topic map engine as the basis for a web application. The project was a scoping study, so development stopped at what was required for a convincing demonstration.

The resulting system was well-received by our domain experts and the project stakeholders. The domain experts were also enthusiastic about the use of mind mapping as a development technique.

Following this first favourable application of topic mapping, further applications soon presented. By the end of 2004, these included: a system mapping the National Health Service in Scotland eHealth Strategy (developed to support both public browsing and project management); a system networking the World Health Organization's Collaborating Centres for Nursing Research (designed to replace an existing system based on periodic paper-based reports); and a system supporting communication of eHealth and health research activity in Scotland.

The presentation will show examples from these projects, along with 'lessons learnt'. The topic maps have tended to follow two distinct patterns, based on the shape of the underlying ontology. The first project had a large and diverse knowledge-base, reflected in the ontology. Subsequent projects used small highly-constrained ontologies, with large numbers of instances.

Our software has been re-factored to produce one web application that can run a number of topic map applications, with individualised skins, domain logic and constraint management. The software is well-suited to smaller applications with limited resources.

Further projects are under consideration, for example a user interface for a large Learning Object Repository as part of the Spoken Word project, which is marking up and making available the BBC audio recording archive. Topic mapping is under consideration to provide interfaces into the archive classification, which would be customised to suit particular user groups.

Topic mapping has been successfully applied to a number of applications which might previously have used RDBMS and/or dynamic web portal technology. A key factor has been the suitability for these applications to be 'model-driven', with user requirements being satisfied with well-structured data and easily-navigated relationships, rather than with extensive customised behaviour.

Introduction

This presentation describes experiences in developing systems based on topic maps for projects mostly in the domain of healthcare. Concept modelling is widely used in many information-related activities, and healthcare is no exception. Concept modelling is commonplace in systems development, but it is central to more recent approaches to standardisation of health terminology, in knowledge mapping, and, in education, it is now widely used both in teaching and by learners.

Topic mapping (in principle anyway) has therefore been readily understood and accepted by people involved in the projects described here.

First project: Healthcare Associated Infection

Requirements

An initial project on Healthcare Associated Infection started in 2003, and the brief required a prototype demonstrating a system to match the needs of multiple groups of users, for example: architects and construction industry users; facilities management staff, who manage cleaning; clinical users such as doctors and nurses; infection control specialists; and strategic planners.

There is a large and diverse body of reference resources on infection control. As with other scientific knowledge, the provenance is mixed, and the project stakeholders wanted a design that could differentiate between resources that were very strong, such as legal requirements and policy documents, and weaker resources such as newspaper articles.

These requirements suggested an approach that would use a concept system to organise the sources, with multiple paths according to user profiles. A search for suitable technology turned up the emerging Topic Maps standard, and the match with the requirements was uncanny.

Developing the Ontology

A small set of key source documents was processed to produce a starter list of domain concepts. Each document had its table of contents extracted, along with any other headings not otherwise included, and any summary. The results for all the documents were processed to build a term list. This was done using a text editor and macros. Some manual editing was required to rebuild terms which comprised more than one word. Though simple, this technique was perfectly satisfactory as a starter ontology.

An experienced healthcare ontology developer used the list to produce a first draft ontology. This ontology was then entered into mind mapping software (MindManager). This provided an easy medium to work with domain experts and get their agreement using a more familiar interface.

The Topic Map

When a topic map is to be used as the basis for a working system, then it must operate at the level of the user interface. The ontology as developed was, in effect, a classification and contained a number of concepts that were 'abstract', in the sense that they were based on principles of division, and effectively organised the classification, but were not meaningful in the domain. As an example, the ontology contained an important concept of equipment which included things like: gloves, gowns, footwear, bed linen, wash basins, taps, cleaning agents etc. These were classified as types of device, and the hierarchy went: Topthing - Structure (abstract and concrete) - Artefact - Device. The concepts Structure and Artefact would not have been meaningful in the interface of the system, so Device was moved to the top level of the 'application ontology', and renamed Equipment.

A second useful enhancement was to model the requirement for different users to have their own interfaces into the topic map. This was initially modelled by having a user concept in the concept map, with sub-types to represent each user group. Each user type then had links to a top set of concepts that would form their user interface. In a production system, these user types would be used to scope the associative links in the model to represent alternative paths within it, but this was beyond the scope of this project.

With the starting ontology agreed, the next step was to move it into XTM format. The Protégé ontology editor, with the TMTab plugin, produced the required XTM data to support the application. TMTab contains a set of starter classes which form the basis of a topic map. The process of entering the topic map data was done by hand. The process of using TMTab is a little arcane, but once mastered, the data entry went smoothly. It should be possible to automate this process, but it was beyond the scope of the project.

Organiser topics were added to model the alternative user interfaces described above, and the Protégé facility of handling multiple parents was used to form the alternative paths in the topic map.

Building the System

Server-side software was developed using Java with the Struts application framework. Page templates were developed using Velocity and based on the TM4Web/Velocity templates. The TM4J topic map engine was used as the data layer, with a helper object in the domain layer acting as topic map manager for all access.

The project was a scoping study, so development stopped at what was required for a convincing demonstration.

The Resulting System

The resulting system was well-received by our domain experts and the project stakeholders, and by a library scientist who evaluated it positively. It was considered suitable to form the basis of further development.

The domain experts were also enthusiastic about the use of mind mapping as a development technique, and found it easy to visualise the topic map as an 'animated mind map'. This was a simplistic view, as the mind map did not include the network formed by associations as it would have made the map too complex.

Further Projects

Following this first favourable experience of topic mapping, further applications soon presented.

Glass Recycling

The first of these was not in healthcare, but part of a Sustainable Urban Environment project which addressed Knowledge Mapping for the Glass Recycling industry.

The project produced maps at three levels: a top level 'road map', which was a simple graphic organiser of an industry process model; a second level 'knowledge map' which expanded the road map with detail on how knowledge was used by or produced by processes, and considered user roles and other resources; and the most detailed level where anything that could be said about glass recycling could be made accessible and cross-linked to related information.

For mapping at this third level of detail, with its arbitrary degree of complexity, topic mapping was considered a useful technique. Domain experts used MindManager directly to develop their mind maps, which were then used to produce a draft ontology.

eHealth Strategy

The first production system followed: a system mapping the National Health Service in Scotland eHealth Strategy. The strategy supports hundreds of eHealth projects, and it can be difficult even for those directly involved to be aware of all the cross-linking between these.

The ontology for this project was quite different from those above. The domain contained a small number of topic types, with large numbers of instances, and each typing topic required constraints to control appropriate occurrence types and associations. This pattern, of a small but tightly constrained ontology, was quite different to the previous projects, where the ontology itself was very large and 'free-form'. It therefore led to a different approach.

As the application required 'through-the-web' editing anyway, a small topic map was built using a text editor, and the application then supported the entering of all the instance data.

The existing server-based software was re-factored and developed to support the new functionality. XTM 1.0 does not explicitly support constraints, but the topic map could have been extended to include constraint descriptions. However, this was considered overly-complex, and a simpler mechanism was used whereby constraints were marked up in an XML configuration file and read by the application.

As before, a helper object in the domain layer provided the required functionality. On creating a new topic, the helper object would provide a map of appropriate occurrence types which were used by a page template to offer the user the required fields. Associations were managed in the same way.

This system has gone live within the National Health Service, but is expected to be made available publicly in the future. The application has been developed to offer some useful project management functions, such as the ability for project managers to be given write access to only their own projects, and a function to email subsets of the topic map data to lists of stakeholders for periodic updates.

Future Projects

A number of projects are now being prototyped, or are under discussion. They are described here to inform potential users of topic maps.

A system to network the World Health Organization's Collaborating Centres for Nursing Research is under discussion. This would replace an existing system based on periodic paper-based reports. Another system supporting communication of eHealth and health research activity in Scotland is now being prototyped. Both these applications would again use the pattern described above, of a small, tightly-constrained ontology, with large numbers of instances, created, edited and deleted through-the-web.

A further (non-healthcare) project is under consideration, to improve the user interface for a large Learning Object Repository as part of the Spoken Word project, which is marking up and making available the BBC audio recording archive. This looks a particularly useful application of topic mapping, as the archive classifications are large and unwieldy for users in a particular domain, and the Learning Object Repository only supports a keyword approach to classification.

Topic mapping would be most useful in the development and use of smaller classifications, more finely-tuned to a particular subject, and capable of supporting the associative links that would be so useful, but are not present in the large classifications.

Lessons Learnt

The Devil in the Detail

As with other technologies, and even XML itself, topic mapping is seductively simple on first contact. However, the three 'details' that caused most head scratching were constraints, scope and merging. These are well-described elsewhere now, and the email support lists are always there to provide support. Ontology was less of a problem, given previous experience in concept modelling for terminology systems.

Ontology

The topic maps described above have tended to follow two distinct patterns, based on the shape of the underlying ontology. The first project had a large and diverse knowledge-base, reflected in the ontology. Subsequent projects used small highly-constrained ontologies, with large numbers of instances.

It is likely that projects currently under discussion will require a hybrid approach. For example, a topic map to support use of a Learning Object Repository will use the 'small ontology' pattern to map a small set of topic types, each with a requirement to strictly constrain occurrence data, for example, metadata. However, the classification dimension will require a more free-form concept map. See Rath for an example of multi-dimensional classification that would meet this hybrid requirement.

'Small' Ontology Systems

Topic mapping has been successfully applied to a number of applications which might previously have used RDBMS and/or dynamic web portal technology. A key factor has been the suitability for these applications to be 'model-driven', with user requirements being satisfied with well-structured data and easily-navigated relationships, rather than with extensive customised behaviour.

There seems to be a market niche for small but flexible applications like this where an RDBMS is a clumsy solution. See for example Jotspot, which is based on a customised Wiki. Johannesen gives a good description of a use case like this which demonstrates the advantages of topic mapping over an RDBMS.

Running Multiple Topic Maps: 'TopiCat'

As the number of topic map applications grew, the project server hosting them then had multiple applications each of which used the same or similar tools. This made it more difficult to maintain software and manage version control.

The topic map software was therefore re-factored to produce one web application that ran a number of topic map applications, with individualised skins, domain logic and constraint management. This software, called 'TopiCat', is well-suited to smaller applications requiring limited resources.

In-House and Commercial Tools

In-house development was initially due to the first project having resources covering time and skills, but not software purchase. On reflection, using Open Source tools meant spending more time on development, but resulted in better understanding. It is certainly worth considering for 'cutting your teeth' with topic mapping, or for small projects or prototyping.

Commercial suppliers are more suited where: in-house skills are limited, especially in ontology-related skills, for which consultancy can be bought in; or for larger projects where ongoing maintenance over a longer and more expensive life-cycle is a bigger factor.

Conclusion

This paper describes largely positive experiences of using topic mapping for a number of useful applications. The field is still developing and the standards currently under development need time to mature, but they will address the issues of constraints and querying. With development of the market, it may be that topic mapping will become the standard approach to particular user requirements.

Bibliography

[Johannesen] Here is a How to Topic Maps, Sir!
2004
[Rath] Topic Maps are Emerging – Why Should I Care?
2004

Biography

Derek Hoy

Research Fellow, Glasgow Caledonian University

Derek Hoy is a consultant in Health Informatics. He has been involved in all aspects of health system development, from national procurements through to software development and implementation. He is an advisor to the NHS in Scotland on information strategy. He has been involved in international health information standards development, mainly in terminology.