télécharger cette publication

Transcription

télécharger cette publication
Le projet CoMeDIAS : accès à des bases de données
médicales hétérogènes au moyen de services Internet
Michel Joubert1, Jean-Charles Dufour1, Sylvain Aymard1,
Laurent Falco1, Pascal Staccini2, Marius Fieschi1
1
LERTIM, Faculté de Médecine, Université de la Méditerranée, Marseille, France
2
Département STIC, Faculté de Médecine, Université de Nice – Sophia Antipolis, France
Abstract
The aim of the project CoMeDIAS is to provide health care professionals with a
homogeneous access to different heterogeneous sources of medical data inside an
information system. Since the evolution of health information systems cannot be
synchronous because partners cannot evolve at the same time, it is difficult to respect
coherency and wholeness when building patient-centered information systems. This
research work proposes a software architecture able to establish a mediation layer
between users and databases. This solution is based on Web services and standard
communication protocols. The general idea is to reach a sufficient level of abstraction in
communication processes to be independent of technical choices.
Keywords
Medical informatics; Information system; Information retrieval; Knowledge; Internet.
1
Introduction
Ces vingt dernières années les concepteurs en informatique médicale ont expérimenté et
implémenté un nombre important de systèmes d’information hospitaliers dans le monde
entier. Il apparaît que beaucoup de questions qui se posaient dans les années 80 n’ont pas
encore de réponses aujourd’hui [1]. Les systèmes d’information ont eu des difficultés à
évoluer. Leur devenir dépend de leur capacité à faire évoluer leur architecture [2], ou
d’intégrer de nouvelles fonctionnalités comme l’accès à la connaissance, l’aide à la
décision ou les guides de bonne pratique clinique [3]. Des expériences encourageantes ont
été menées par les IAIMS ( integrated advanced information management system ) [4-7].
Aujourd’hui l’accent est mis sur la sécurité du patient, l’aide à la décision et la médecine
basée sur les niveaux de preuve. De nouveaux outils et de nouvelles approches devraient
améliorer la qualité des soins. Dans cette voie, la notion de système d’information en santé
devrait étendre la notion plus retreinte de système d’information hospitalier [8]. De
nouveaux concepts et de nouvelles techniques devraient coopérer pour faire progresser des
systèmes d’information centrés sur le patient et orientés sur les processus de prise en
charge [9].
Des efforts ont été faits pour réaliser des systèmes de gestion de données cliniques, de
laboratoires et d’imagerie. Toutefois, l’hétérogénéité des données est un réel problème du
fait de leur éparpillement. D’un point de vue technique, l’hétérogénéité est due aux [10] :
• technologies des réseaux, des appareillages et des systèmes d’exploitation ;
• moyens de communication et aux solutions adoptées ;
• technologies utilisées pour les interfaces ;
• langages de programmation ;
• architectures des systèmes ;
• formats des données et des documents.
D’un point de vue informationnel, quand des applications échangent des données, des
problèmes apparaissent dus à des différences de codage. Les règles de codification et les
possibilités de transcodage sont donc d’une grande importance. En outre, les évolutions de
différents systèmes d’information dans une même zone géographique, une région par
exemple, ne peuvent pas être synchrones. Certains systèmes hospitaliers évoluent plus
rapidement que d’autres, c’est aussi le cas des systèmes informatiques des médecins de
ville. La question qui se pose est alors de savoir comment construire un système
d’information de santé centré sur le patient qui puisse évoluer de manière cohérente.
L’hétérogénéité actuelle est inévitable. L’objectif du projet CoMeDIAS ( Computerized
Medical Data through Internet Access Services ) est de proposer une plate-forme capable
de fournir aux professionnels de la santé un moyen d’accès homogène aux sources de
données hétérogènes par nature. Les technologies utilisées sont issues de l’Internet,
connues sous le nom de Web services1, qui facilitent l’intégration de différents services.
L ‘emploi de nomenclatures standards facilite les échanges de données.
2
Le contexte
L’information utile aux soins n’est pas seulement stockée dans des bases de données, elle
est aussi enregistrée dans des systèmes documentaires sur les pratiques et les protocoles,
des banques de données sur les médicaments, etc. Des informations concernant les patients
sont aussi présentes dans des documents textuels, comme des rapports des lettres
d'admission, des lettres de sortie. A la suite des travaux de la Dublin Core Initiative [11],
un ensemble de champs ont été identifiés pour caractériser des documents dans le domaine
biomédical [12] et permettre ainsi de les identifier et de les retrouver. Parallèlement, les
logiciels de bureautique offrent aujourd’hui la possibilité d’indexer les documents au
moyen d’un sous-ensemble de ces champs : nom d’auteur, date de création, sujet, motsclés, etc. Des documents bureautiques peuvent ainsi être retrouvés dans des répertoires
appropriés et n’ont pas besoin d’être stockés dans des bases de données structurées. De
cette façon, les informations relatives à un patient peuvent être diffusées sur un réseau
hospitalier et accessibles au moyen des fonctionnalités offertes par les logiciels de
bureautique standard sous différents systèmes d’exploitation.
D’autres informations utiles sont diffusées hors du lieu d’exercice des praticiens. C’est le
cas des sites Internet. Ce sont, par exemple, des guides de bonne pratique, des informations
sur les médicaments, de la bibliographie pertinente. Les moteurs de recherche des sites
1
“A Web service is a software system identified by a URI, whose public interfaces and bindings are defined
and described using XML. Its definition can be discovered by other software systems. These systems may
then interact with the Web service in a manner prescribed by its definition, using XML based messages
conveyed by internet protocols” ( W3C, Web Services Architecture Group, Nov. 2002 ).
Internet permettent de retrouver l’information souhaitée. Cependant, le succès de la
recherche n’est pas garanti du à leur manque de spécificité. C’est pourquoi différentes
institutions servent de portails en indexant les documents publiés sur l’Internet à l’aide de
termes MeSH [13-15]. Les procédures de stockage et de recherche d’information
nécessitent l’emploi de nomenclatures et de thesauri standard qui constituent le référentiel
grâce auquel des applications peuvent coopérer efficacement. Les développements que
nous effectuons actuellement dans le cadre du projet européen WRAPIN2 en sont une
illustration.
3
Les objectifs du projet CoMeDIAS
Des bases de données existent dans les hôpitaux depuis de nombreuses années. L’accès à
celles-ci est administré par la technologie utilisée quand elles furent implémentées. Les
contraintes sont dues aux protocoles de communication, comme IBM-SNA et d’autres. De
plus, les bases de données ne sont pas toutes relationnelles, mais peuvent être
implémentées avec des logiciels propriétaires. L’objectif principal du projet CoMeDIAS
est de fournir une plate-forme qui s’affranchisse de ces problèmes et facilite l’intégration
de nouvelles bases de données.
L’idée de base pour intégrer des bases de données hétérogènes est de construire un
middleware utilisant les protocoles de communication de l’Internet, comme HTTP, et des
Web services pour afficher les données. Les données peuvent être celles d’un patient :
données cliniques, données de laboratoire, imagerie médicale, etc. Elles peuvent aussi être
liées à un problème clinique rencontré : guides de bonne pratique, protocoles opératoires
ou de soins, prescriptions médicamenteuses, etc. Dans ce sens, CoMeDIAS n’est pas une
application, mais un ensemble de services à partir desquels il est possible de construire des
interfaces permettant à des utilisateurs de naviguer « intelligemment » au sein des bases de
données et de collecter de l’information utile facilement dans des bases de données
externes à leur institution. Cette navigation est rendue possible par l’emploi de
nomenclatures standards aussi bien pour le codage de l’information que lors des processus
de recherche.
3.1
Un scénario
Imaginons le scénario suivant illustré par la Figure 1. Un médecin identifie un de ses
patients dans le champs approprié d’une page affichée par son navigateur Internet. Après
validation, cet identificateur est inclus dans un fichier XML ( extensible markup language )
[16] envoyé au service Web qui gère les accès aux patients. Ce service renvoie un fichier
XML, traité au moyen d’un fichier XSL, qui permet d’afficher des données dans une
nouvelle fenêtre du navigateur. Des informations comme les codes diagnostiques et les
noms de médicaments ont été automatiquement traitées. Elles sont affichées à l’écran sous
forme d’hyperliens, des scripts leurs sont attachés et activés par un clic. Par exemple, un
clic sur le nom d’un médicament provoque l’ouverture d’une nouvelle fenêtre présentant
des recommandations : indications, contre-indications, posologie, etc. Ces connaissances
sont automatiquement extraites d’une base de données sur les médicaments par le service
Web approprié.
De la même manière un clic sur un code diagnostique peut invoquer un service dédié à la
gestion d’une nomenclature. Des données de laboratoire peuvent aussi être produites par
2
WRAPIN ( worldwide online reliable advice to patients and individuals ). EU programme IST-2001-33260,
2001, http://www.wrapin.org.
un service Web dédié à l’accès aux serveurs des laboratoires. Dans chaque cas, les résultats
fournis par les serveurs concernés sont dans des fichiers XML dont le traitement est opéré
au moyen de fichiers XSL avant d’être affichés.
Figure 1. Navigation d’un dossier patient vers un browser de la CIM-10 et une base de
données sur les médicaments.
3.2
Implémentation
La programmation en composants ( component-based ) fournit un mécanisme de
communication entre les utilisateurs et les bases de données. Suivant cette approche, un
service Web est un système dont l’interface publique est publiée dans un fichier XML. La
définition d’un tel service peut ainsi être découverte par d’autres logiciels. Ceux-ci peuvent
ainsi interagir avec le service Web au moyen de fichiers XML échangés au moyen des
protocoles Internet. Cette vue générale de l’usage des services Web est schématisée par la
Figure 2, où ils apparaissent comme des médiateurs entre les utilisateurs et les sources de
données.
Données
Base de
Données
SQL
Données au format
HTML ou XML
à afficher
SQL-XML
Interface
utilisateur
Services
Web
XML-XML
Données
accessibles
en XML
Tex-te-XML
Documents
bureautiques
Client
Médiation
XML
Requête soumise
dans un fichier
au format XML
Nomenclatures
Standard
Figure 2. Les trois niveaux (client, médiation et données) impliqués dans l’architecture
logicielle de CoMeDIAS.
Les services Web échangent des fichiers XML qui contiennent du texte balisé incluant les
requêtes véhiculées. Une requête est une chaîne de caractères envoyée à un serveur de
bases de données, un moteur de recherche, ou une API ( application programmatic
interface ) d’un serveur Internet. Une requête est construite par des composants qui opèrent
des transformations successives sur une requête initiale pour la formuler dans le langage
d’interrogation de la source d’information sélectionnée. Par exemple, un composant peut
remplacer un code diagnostique par le vocable généralement utilisé pour désigner la
pathologie concernée dans cette base de données. Un autre composant exploite la
description de la syntaxe utilisée pour interroger la source concernée et l’exprime
conformément à celle-ci. Inversement, quand des résultats sont envoyés par une source
interrogée, des séquences de transformations sont effectuées sur ces résultats. La Figure 3
illustre ces processus. L’enchaînement de ces transformations constitue le cœur d’un
service Web. L’ensemble de ces services Web constitue le middleware CoMeDIAS.
Service Web
CoMeDIAS
Requête soumise
dans un fichier XML
Requête traduite dans
le langage d’interrogation
de la base de données
Transformations
Interface
utilisateur
Nomenclatures
standard
Base de
Données
Transformations
Données à afficher
Résultats au format
XML ou HTML
Figure 3. Un service Web de CoMeDIAS fait de transformations basées sur des
nomenclatures standards.
La Figure 4 montre une copie d’écran réalisée lors de l’organisation de telles
transformations au moyen d’un logiciel diffusé sur le marché3. La partie gauche de l’écran
montre le schéma commun à toute requête quelle que soit la base interrogée. La partie
droite de l’écran est le schéma général d’une requête envoyée à une base de données : une
chaîne de caractères englobée dans des balises. La partie centrale présente un
enchaînement de composants, activés de la gauche vers la droite, utilisés pour réaliser les
transformations. Les résultats produits par un ou des composants sont exploités par les
suivants, et ainsi de suite. Ces composants ont été préalablement conçus et stockés dans
une bibliothèque de composants, de telle sorte qu’un concepteur de service Web puisse les
réutiliser à volonté. La Figure 5 illustre le processus inverse de mise en forme des résultats
obtenus d’une base de données ( Medline dans cet exemple) grâce à un schéma standard de
3
Microsoft BizTalk
présentation. Cet exemple montre en particulier comment des éléments organisés en
ensembles ( auteurs, mot-clés, … ) sont transformés en listes pour être affichés.
Figure 4. Enchaînement de composants pour effectuer des transformations sur les requêtes.
Figure 5. Transformation des éléments de résultat produits par PubMed ( schéma en partie
gauche ) dans le format standard dont le schéma est en partie droite.
4
Discussion
Intégration et interopérabilité de services dans un système d’information sont une affaire
d’architecture [10]. Partant de ce principe, la solution que nous proposons est un
middleware bâti sur un ensemble de services Web qui coopèrent avec des applications
existantes. Les avantages de cette approche sont nombreux. Parmi ceux-ci, nous
retiendrons que :
• les services Web sont construits à l’aide de composants dont les fonctionnalités sont
d’un niveau de granularité suffisant pour pouvoir être réutilisés dans la construction
d’autres services ;
• quand des documents et des données sont échangés entre applications hétérogènes, des
transformations sont opérés pour adapter des entités propriétaires des sources dans les
formats attendus par les récepteurs ;
• au niveau des couches de communication, les services Web facilitent l’intégration
d’applications dans des réseaux dont la technologie est celle de l’Internet.
Suivant cette méthode, les objectifs du projet CoMeDIAS favorisent l’emploi de
nomenclatures standards. En effet, les services Web sont conçus pour échanger des
données et des documents. Le fait d’avoir des règles de codage partagées est une nécessité.
L’expérience que nous avons acquise pour construire des services Web avec un outil
logiciel du marché nous amène à conclure que cette approche est très prometteuse. La
principale difficulté que nous avons rencontrée a été de définir le niveau de granularité
suffisant des composants pour qu’ils puissent être réutilisés efficacement dans la
réalisation de nouveaux services. Jusqu’à présent, nos expérimentations ont porté sur des
bases de données interrogeables par le protocole HTTP. Ces sources de données sont entre
autres CISMeF [14], Medline [17], Drug Information ( Medline plus ) [18] et
ClinicalTrials.gov [19]. Ceci fait que nous avons développé un nombre restreint de
composants.
Dans un futur proche, nous allons expérimenter cette méthode avec des bases de données
accessibles par d’autres protocoles de communication. Notre estimation est que le nombre
total de composants nécessaires ne devrait pas être important au vu des sources
d’information envisagées : annuaires, bases de données cliniques, données de laboratoires,
etc. Puisque de telles bases de données existantes sont implémentées depuis longtemps,
elles ne communiquent pas via HTTP et ne fournissent pas des résultats formatés en
HTML, et encore moins en XML. Leur intégration se fera au moyen de « connecteurs »
chargés d’établir les connexions, de formater les requêtes à ces bases, et en retour, de
formater les résultats obtenus en fichiers XML.
Références
[1] Ball MJ. Hospital Information Systems: perspectives on problems and prospects, 1979
and 2002. Int J Med Inf 2003; 69(2-3): 83-9.
[2] Borst F, Appel R, Baud R, Ligier Y, Scherrer JR. Happy birthday DIOGENE: a
hospital information system born 20 years ago. Int J Med Inf 1999; 54 (3): 157-67.
[3] Pryor TA, Gardner RM, Clayton PD, Warner HR. The HELP system. J Med Syst
1983; 7(2): 87-102.
[4] Clayton PD. Integrated Advanced Medical Information Systems (IAIMS): payoffs and
problems. Methods Inf Med 1994; 33(4): 351-7.
[5] Hripcsak G. IAIMS architecture. J Am Med Inform Assoc 1997; 4(2): 20-30.
[6] Stead WW, Olsen AJ, Benner SA, Blackwelder M et al.. The IAIMS - an essential
infrastructure for increasing the competitiveness of health care practices. J Am Med
Inform Assoc 1997; 4(2): 73-6.
[7] Cimino JJ. The Columbia Medical Informatics Story: from clinical system to major
department. MD Comput. 1999; 16(2): 31-4.
[8] Khun KA, Giuse DA. From Hospital Information Systems to Health Information
Systems. Methods Inf Med. 2001; 40: 275-87.
[9] Staccini P, Joubert M, Quaranta JF, Fieschi M. Towards elicitation of users
requirements for hospital information system: from a care process modelling technique
to a web based collaborative tool. Proc AMIA Symp. 2002: 732-6.
[10] Stal M. Web Services: beyond component-based computing. Comm ACM 2002;
45(10): 71-6.
[11] Dublin Core Metadata Initiative. The Dublin Core Metadata Element Set.
http://dublincore.org/documents/dces/.
[12] Malet G, Munoz F, Appleyard R, Hersh WR. A Model for Enhancing Internet Medical
Document Retrieval with « Medical Core Metadata ». J Am Med Inform Assoc 1999;
6: 163-72.
[13] Health On the Net. http://www.hon.ch.
[14] Centre Hospitalier Universitaire de Rouen. CISMeF. http://www.chu-rouen.fr/cismef.
[15] Hersh WR, Brown KE, Donohoe LC, Campbell EM, Horacek AE. Cliniweb :
managing clinical information on the world wide web. J Am Med Inform Assoc 1996;
3: 273-80.
[16] World Wide Web Consortium. Extensible Markup Language.
http://www.w3.org/XML/.
[17] National Library of Medicine. PubMed.
http://www.ncbi.nlm.nih.gov/entrez/query.fcgi?db=PubMed
[18] National Library of Medicine and National Institutes of Health. Medline Plus, Drug
Information. http://www.nlm.nih.gov/medlineplus/druginformation.html
[19] National Institutes of Health. Clinical Trials. http://clinicaltrials.gov/ct/gui
Adresse de correspondance
Michel JOUBERT
LERTIM - Faculté de Médecine
27, boulevard Jean Moulin
13385 Marseille Cedex 5
France
E-mail : [email protected]
Web : http://cybertim.timone.univ-mrs.fr

Documents pareils