En résumé
L’onglet Concepts cibles rassemble les concepts standard vers lesquels vous allez aligner vos codes sources. Deux sous-onglets : Concept Sets (dictionnaires de concepts) et Vocabulaires OHDSI (tous les concepts OMOP, téléchargés depuis ATHENA).
Pourquoi cette étape ?
Dans l’éditeur d’alignements, deux modes permettent de trouver un concept cible :
- Parcourir un concept set : rapide et ciblé, on choisit dans une liste déjà délimitée par thématique.
- Recherche libre parmi tous les concepts OHDSI : très puissant, mais le choix est plus difficile à cause du nombre de concepts disponibles.
Le sous-onglet Concepts cibles alimente ces deux modes.
Concept Sets
Qu’est-ce qu’un concept set ?
Un concept set rassemble plusieurs concepts standard sous une même étiquette clinique. Par exemple : « Bilirubine totale », « Sepsis », ou « Noradrénaline ». En pratique, chacun pointe vers les concepts LOINC, SNOMED ou RxNorm correspondants — souvent nombreux et techniques.
Le concept set, pont entre cliniciens et data scientists
Une même réalité clinique se décline souvent en dizaines voire centaines de codes dans une terminologie standard, selon la méthode de mesure, le contexte, la position du patient, l’appareil utilisé… La « fréquence cardiaque », par exemple, correspond à plusieurs centaines de codes LOINC distincts.
Or les cliniciens ne raisonnent pas en LOINC : ils raisonnent en « fréquence cardiaque ». Le concept set fait précisément ce travail de traduction : il regroupe tous les codes pertinents sous une étiquette parlante côté métier.
Variable clinique
« Il me faut la fréquence cardiaque. »
Concept Set
Relu, versionné
Compatible OHDSI
Concepts OMOP
« LOINC 8867-4 avec ses descendants. »
C’est la philosophie des dictionnaires de concept sets thématiques comme le INDICATE Data Dictionary (réanimation), ou demain les dictionnaires des sociétés savantes par spécialité (pédiatrie, cardiologie, oncologie…) : un travail collectif de définition réutilisable par tous.
Items et résolution
Un concept set est une liste d’items. Chaque item est un concept (avec un conceptId, un conceptName, un vocabularyId, un conceptCode, un domainId, un conceptClassId et un drapeau standardConcept) accompagné de trois options :
isExcluded— l’item est exclu de la liste (utile pour exprimer « tous les concepts X sauf Y »).includeDescendants— inclut automatiquement les concepts plus spécifiques (descendants dans la hiérarchie des concepts).includeMapped— inclut les concepts qui pointent vers cet item viaconcept_relationship.
Le concept set peut donc être vu comme une équation : une poignée d’items de base, modulés par ces options. Résoudre le concept set, c’est appliquer ces options pour obtenir la liste finale de tous les concepts retenus — un seul item avec includeDescendants peut ainsi se développer en plusieurs centaines de concepts. C’est cette liste résolue qui est utilisée dans l’éditeur d’alignements pour proposer des cibles.
Pour aller plus loin
- INDICATE — What are concept sets? — une introduction pédagogique aux concept sets, dans le cadre du dictionnaire INDICATE.
- OHDSI — Concept Set Specification — la spécification formelle du format JSON utilisé par OHDSI (et Linkr).
- ATLAS — Concept Sets wiki — la documentation de référence pour créer et gérer des concept sets dans ATLAS.
Tout concept set suivant le format OHDSI peut être importé dans Linkr — qu’il vienne d’un dictionnaire thématique comme le INDICATE Data Dictionary ou qu’il soit créé à la main dans ATLAS (l’outil de référence d’OHDSI pour la création de concept sets).
Importer et gérer les concept sets OHDSI utilisés pour les cibles d'alignement.
| Catégorie | Sous-catégorie | Nom du concept | Items | Version | Provenance | |
|---|---|---|---|---|---|---|
... | ... | ... | ... | ... | ||
| Observations cliniques | Évaluation neurologique | 3-minute Diagnostic Interview for CAM-defined Delirium (3D-CAM) | 1 | 1.0.0 | INDICATE Consortium | |
| Observations cliniques | Évaluation neurologique | Numeric Pain Rating Scale | 3 | 1.0.0 | INDICATE Consortium | |
| Médicaments | Antimicrobiens | Posaconazole | 1 | 1.0.1 | INDICATE Consortium | |
| Médicaments | Antimicrobiens | Rifampicin | 1 | 1.0.1 | INDICATE Consortium | |
| Médicaments | Antimicrobiens | Sulfamethoxazole | 1 | 1.0.1 | INDICATE Consortium | |
| Médicaments | Antimicrobiens | Teicoplanin | 1 | 1.0.1 | INDICATE Consortium | |
| Médicaments | Antimicrobiens | Tetracycline | 1 | 1.0.1 | INDICATE Consortium |
Importer un concept set
Cliquez sur Importer un Concept Set. Trois sources possibles :
- Référence — import en masse depuis un dictionnaire référencé, par exemple le INDICATE Data Dictionary : tous les concept sets du dictionnaire sont importés d’un coup.
- URL — un lien direct vers le fichier JSON d’un seul concept set (typiquement un fichier
raw.githubusercontent.com/.../concept_sets/X.json). Linkr conserve le lien : si la source évolue, vous pouvez mettre à jour le concept set en un clic. - Fichier — un
.jsonau format OHDSI ({ expression: { items: [...] } }).
Voir le détail d’un concept set
L’icône ⓘ en bout de ligne ouvre un panneau latéral avec quatre onglets :
- Description — la description longue rédigée par les auteurs du concept set. Quand le concept set vient d’un dictionnaire comme INDICATE, on y trouve typiquement la définition clinique, les choix de codes faits par les experts, et des conseils pour l’alignement de concepts.
- Statistiques — comptages d’enregistrements et de patients, graphiques de distribution.
- Concepts résolus — la liste des concepts retenus une fois le concept set résolu (voir plus haut).
- Expression — la liste brute des items du concept set, avec leur
conceptName,conceptId, vocabulaire, domaine, et trois colonnesEx/De/Ma(cochées si l’item est marquéisExcluded/includeDescendants/includeMapped).
Mettre à jour, supprimer
- Mettre à jour un concept set — l’icône de rafraîchissement sur une ligne re-télécharge le JSON depuis son URL d’origine.
- Tout mettre à jour — un bouton dédié rafraîchit en une fois tous les concept sets qui ont une
sourceUrl. - Supprimer des concept sets — passez en mode Édition pour faire apparaître des cases à cocher, sélectionnez les concept sets à supprimer, puis cliquez sur Supprimer la sélection.
Filtrer le tableau
Les concept sets sont classés par catégorie, sous-catégorie, provenance (organisation d’origine) et version. Chaque en-tête de colonne propose un filtre déroulant — pratique quand le catalogue dépasse plusieurs centaines d’entrées.
Vocabulaires OHDSI
Ce sous-onglet sert à charger l’ensemble des concepts standard OMOP, à partir d’une archive ATHENA.
Base de données vocabulaire de référence
Sélectionnez un dossier contenant les fichiers vocabulaire ATHENA (CSV ou Parquet). Au minimum, la table CONCEPT est requise.
Que faut-il télécharger ?
Sur ATHENA, sélectionnez les vocabulaires nécessaires (au minimum SNOMED, LOINC, RxNorm pour un usage standard) et lancez la génération de l’archive. Une fois prête, vous la téléchargez directement depuis le site sous forme de fichier ZIP qui contient les tables OHDSI :
concept— obligatoire, le catalogue complet des concepts utilisé par la recherche dans l’éditeur d’alignements.- Les autres tables livrées par ATHENA (
concept_ancestor,concept_relationship,concept_synonym,concept_class,domain,relationship,vocabulary,drug_strength) ne sont pas utilisées par la fonctionnalité d’alignement de concepts. Vous pouvez les conserver dans le dossier — elles serviront plus tard pour générer un ETL OMOP — mais elles ne sont pas nécessaires ici.
Charger le dossier
Décompressez l’archive, puis dans Linkr cliquez sur Sélectionner un dossier et indiquez le répertoire ATHENA. Linkr reconnaît automatiquement les fichiers connus et les indexe dans DuckDB.
Parcourir les vocabulaires
Une fois la référence chargée, vous pouvez explorer les concepts standard depuis ce sous-onglet : recherche, filtres par vocabulaire, domaine ou classe, et bouton « Standard uniquement ». Surtout, l’éditeur d’alignements active son mode « Recherche » dans le panneau de droite — c’est là que la référence prend tout son intérêt.
Stockage local
La référence ATHENA est stockée dans IndexedDB, comme n’importe quelle autre base. Selon les vocabulaires retenus, elle peut peser plusieurs centaines de Mo. Une fois chargée, elle est disponible pour tous les projets d’alignement du workspace : vous ne le faites qu’une fois.
Optimisez l'espace : convertissez les CSV en Parquet
La place est limitée quand vous travaillez dans le navigateur (quota IndexedDB). Les fichiers CSV livrés par ATHENA sont volumineux et redondants. Pour économiser de l’espace, il est conseillé de convertir les fichiers en Parquet avant de les charger dans Linkr — le format Parquet est compressé et beaucoup plus compact (parfois de 5 à 10 fois), tout en restant lisible directement par DuckDB.