Linkr
Accueil Ressources Outils Documentation Blog Démo
EN
  • Qu'est-ce que Linkr ?
  • Modes de déploiement
  • Démarrage rapide
  • Installation locale
  • Votre premier projet
  • Espace de travail, projet, plugin WIP
  • Le pipeline de données WIP
  • Versioning et collaboration WIP
  • Schémas WIP
  • Bases de données WIP
  • Qualité des données WIP
  • Pipelines ETL WIP
  • Présentation
  • Projets d'alignement
  • Vue d'ensemble
  • Concepts cibles
  • Éditeur d'alignements
  • Suggestions
  • Évaluation
  • Export
  • Catalogue de données WIP
  • Cohortes WIP
  • Données individuelles WIP
  • Jeux de données WIP
  • Collections de scripts WIP
  • IDE WIP
  • Tableaux de bord WIP
  • Rapports WIP
  • Wiki WIP
  • Versioning WIP
  • Installation en production WIP
  • Authentification et permissions WIP
  • Configuration WIP
  • Sauvegarde et restauration WIP
  • Créer un plugin WIP
  • Notes de version WIP
  • Glossaire WIP
Documentation Alignement de concepts Évaluation

Évaluation

Revue, validation, commentaires et vote multi-relecteur sur les alignements créés.

En résumé

L’onglet Évaluation est le tableau de bord de revue : tous les alignements créés y sont listés, avec leurs statuts, leurs commentaires, et les outils pour valider, signaler ou rejeter en équipe.

Client Disponible en mode client-only — tout fonctionne dans le navigateur, sans backend. Backend Backend (FastAPI) en cours de développement.

Le tableau

linkr-v2-b1800b.frama.io
Vocabulaire source
Nom concept source
Équivalence
Vocabulaire cible
Nom concept cible
Domaine
Classe de concept
Standard
Aligné par
✓
⚑
✗
Évaluation
ICCATA_systolique_invasiveExactSNOMEDInvasive systolic arterial pressureMeasurementObservable EntitySJohn Doe———
ICCAFC_bpmExactLOINCHeart rateMeasurementClinical ObservationSJane Smith1——
MIMIC-IVcreatinine_serumExactLOINCCreatinine [Mass/volume] in Serum or PlasmaMeasurementLab TestSClaude Opus 4.72——
MIMIC-IVfr_respExactLOINCRespiratory rateMeasurementClinical ObservationSMarie Dupont11—
MIMIC-IVpoids_kgExactLOINCBody weightMeasurementClinical ObservationSJane Smith3——
ICCADT2_sans_compliNarrowSNOMEDType 2 diabetes mellitus without complicationConditionDisorderSClaude Opus 4.7——1
REAIMCExactLOINCBody mass index (BMI) [Ratio]MeasurementClinical ObservationSPaul Bernard———
Le tableau des alignements : une ligne par alignement concept source → cible, avec son équivalence SKOS et ses compteurs de votes.

Chaque ligne représente un alignement concept source → cible. Les colonnes décrivent le concept source (vocabulaire, nom, code), l’équivalence SKOS choisie, le concept cible (vocabulaire, nom, domaine, classe, badge Standard), qui a proposé l’alignement, et trois compteurs de votes (approuvé, signalé, rejeté) avant la colonne Évaluation qui rassemble les actions.

La colonne Évaluation

Tout à droite de chaque ligne, une colonne Évaluation regroupe six boutons côte à côte. Leur disponibilité dépend du contexte : vous ne pouvez pas voter sur un alignement que vous avez vous-même posé.

Fonctionnalités

Les six boutons de la colonne Évaluation, dans l'ordre où ils apparaissent dans le tableau.

De gauche à droite :

  • Voir le détail — ouvre la fiche complète de l’alignement (voir ci-dessous).
  • Commentaires — ouvre le fil de discussion attaché à l’alignement (voir ci-dessous). Une pastille indique le nombre total de commentaires.
  • Avis — liste les votes de tous les relecteurs (approuvé, signalé, rejeté), avec date et commentaire éventuel. Le bouton est entouré quand vous avez vous-même voté ; une pastille indique le nombre total de votes.
  • Approuver — pose votre vote « approuvé » sur l’alignement. Le bouton devient vert plein une fois votre vote enregistré. Désactivé sur vos propres alignements.
  • Rejeter — pose votre vote « rejeté » (vous estimez que la cible est incorrecte). Le bouton devient rouge plein une fois votre vote enregistré. Désactivé sur vos propres alignements.
  • Signaler — pose votre vote « à revoir » : vous voulez attirer l’attention de l’équipe sans trancher. Le bouton devient orange plein une fois votre vote enregistré. Utile pour les cas litigieux qui méritent une discussion avant décision.

Cliquer une action met immédiatement à jour l’alignement. En mode édition (bouton Édition en haut), des cases à cocher apparaissent vous permettant de supprimer les alignements sélectionnés.

Fiche de détail de l’alignement

linkr-v2-b1800b.frama.io
TA_systolique_invasive→Invasive systolic arterial pressure
ExactApprouvé· John Doe· 14/05/2026 14:32
1 / 7

Concept source

Vocabulaire sourceICCA
Nom concept sourceTA_systolique_invasive
Code concept sourceM0118
Patients1 842
Lignes24 380

Statistiques

Min60
P25108
Médiane122
P75138
Max220

Boxplot (mmHg)

Concept cible

Vocabulaire cibleSNOMED
ID concept cible4353843
Nom concept cibleInvasive systolic arterial pressure
Code concept cible251071003
DomaineMeasurement
Classe de conceptObservable Entity
StandardS

Métadonnées de l'alignement

ÉquivalenceExact
StatusApprouvé
Score de correspondance—
Aligné parJohn Doe
Créé le14/05/2026 14:32
Dernière modification14/05/2026 14:32

Avis (1)

Jane SmithApprouvé

14/05/2026 15:08

La fiche de détail occupe la zone principale. Le corps est divisé en deux colonnes : concept source à gauche (libellé, code, patients, lignes, statistiques), concept cible et métadonnées de l'alignement à droite (équivalence, statut, méthode, dates, avis posés).

Le bloc Statistiques sous le concept source est généré à partir des métadonnées du concept source si elles existent. Le rendu complet (tableau de statistiques étendu, boxplot, histogramme, distributions, propriétés) est décrit dans Métadonnées du concept.

Fil de commentaires

linkr-v2-b1800b.frama.io

Commentaires

TA_systolique_invasive → Invasive systolic arterial pressure

Jane Smith
15/05/2026 09:42

Pourquoi pas le LOINC 8480-6 plutôt que le SNOMED ? Plus de standardisation côté labo.

John Doe
16/05/2026 14:47

Le SNOMED 251071003 précise « invasive », ce que le LOINC 8480-6 ne fait pas. Source plus spécifique → broadMatch côté LOINC.

Ajouter un commentaire

Le panneau Commentaires s'ouvre à droite. Liste des commentaires existants (date et auteur en en-tête, corps en dessous) avec icônes modifier / supprimer sur vos propres commentaires. En bas, un bloc « Ajouter un commentaire » avec textarea libre.

Avis

linkr-v2-b1800b.frama.io

Avis

TA_systolique_invasive → Invasive systolic arterial pressure

Jane SmithApprouvé

14/05/2026 15:08

Mon avis (John Doe)

Le panneau Avis s'ouvre à droite. Liste des avis posés par les autres relecteurs (auteur, date, verdict en badge coloré). En dessous, un bloc « Mon avis » avec textarea facultative et trois boutons pour Approuver, Rejeter ou Signaler.

Vote multi-relecteur

Linkr est conçu pour le travail en équipe. Chaque relecteur enregistre son propre vote (approved, flagged, rejected) sur un alignement donné. Tous les votes sont conservés dans l’historique de l’alignement.

Le statut effectif affiché dans le tableau et utilisé pour les exports est calculé à la majorité des votes :

  • Si plus de votes pour approuvé que pour rejeté → effectif approuvé.
  • Si égalité ou majorité de rejeté → effectif rejeté.
  • En cas d’ambiguïté → priorité approuvé > rejeté > à revoir.

Vous ne pouvez pas vous auto-relire

Si vous avez créé l’alignement, Linkr vous empêche de poser un vote. C’est un garde-fou simple pour éviter qu’un alignement soit auto-validé par son auteur.

Import / export des alignements

Au-dessus du tableau, deux boutons permettent de sortir et réinjecter des alignements au format Linkr interne (mappings.json). Pour des exports vers d’autres formats (SSSOM, OMOP STCM, Usagi), passez par l’onglet Export.

Exporter

Le bouton Exporter télécharge un fichier mappings.json contenant tous les alignements du projet courant, dans le format décrit plus bas.

Importer

linkr-v2-b1800b.frama.io

Importer des alignements

Choisissez la source des alignements à importer.

Le dialog Importer des alignements propose deux sources : un fichier mappings.json précédemment exporté, ou un import depuis d'autres projets du workspace.

Le bouton Importer ouvre un dialog avec deux options :

  • Depuis un fichier — charge un mappings.json exporté précédemment. Linkr déduplique automatiquement : un alignement (source, target) qui existe déjà n’est pas réimporté.
  • Depuis d’autres projets — pioche dans les alignements créés dans les autres projets du workspace. Pratique pour réutiliser un travail déjà fait sur un vocabulaire commun.
linkr-v2-b1800b.frama.io

Importer depuis d'autres projets

Importe localement tous les alignements identifiés comme « déjà mappés ailleurs » (pastille bleue) en provenance des projets sélectionnés. Statut, évaluations et commentaires sont préservés.

2 466 / 2 466 alignement(s) après filtres (100 affichés)
Projet sourceVocabulaire sourceNom concept sourceÉquivalenceVocabulaire cibleNom concept cibleStatut
Labo MIMIC-IVICCAcreatinine_serumExactLOINCCreatinine [Mass/volume] in Serum or PlasmaApprouvé
IMPACTICCAcreatinine_serumExactLOINCCreatinine [Mass/volume] in Serum or PlasmaApprouvé
PROSPERICCAcreatinine_serumExactLOINCCreatinine [Moles/volume] in Serum or PlasmaSignalé
OASISICCAFC_bpmExactLOINCHeart rateApprouvé
Labo MIMIC-IVICCAFC_bpmExactLOINCHeart rateApprouvé
PROSPERICCAfr_respExactLOINCRespiratory rateNon vérifié
IMPACTICCAfr_respExactLOINCRespiratory rateRejeté
OASISICCApoids_kgExactLOINCBody weightApprouvé
Le dialog Importer depuis d'autres projets. Tableau filtrable avec une ligne par alignement candidat (projet source, vocabulaires et noms source/cible, équivalence, statut), barre de recherche libre, filtres en colonne, sélection multiple via cases à cocher, et boutons Tout cocher / Tout décocher. Le statut, les avis et les commentaires du projet d'origine sont préservés à l'import.

Structure de mappings.json

Le fichier exporté est un tableau JSON d’objets, un par alignement. Voici un exemple complet :

[
  {
    "id": "map_3f2c9a",
    "projectId": "icca-rea-2026",
    "sourceVocabularyId": "ICCA",
    "sourceConceptCode": "M0118",
    "sourceConceptName": "TA_systolique_invasive",
    "sourceDomainId": "Measurement",
    "sourceFrequency": 24380,
    "sourceCategoryId": "Hémodynamique",
    "targetConceptId": 4353843,
    "targetConceptCode": "251071003",
    "targetConceptName": "Invasive systolic arterial pressure",
    "targetVocabularyId": "SNOMED",
    "targetDomainId": "Measurement",
    "targetConceptClassId": "Observable Entity",
    "equivalence": "exactMatch",
    "status": "approved",
    "matchScore": 0.97,
    "comment": "Mesure invasive en réanimation.",
    "mappedBy": "John Doe",
    "mappedOn": "2026-05-14T14:32:11Z",
    "reviewedBy": "Jane Smith",
    "reviewedOn": "2026-05-14T15:08:00Z",
    "createdAt": "2026-05-14T14:32:11Z",
    "updatedAt": "2026-05-14T15:08:00Z"
  }
]
CléTypeObligatoireDescription
idchaîneouiIdentifiant unique de l’alignement (généré par Linkr à la création).
projectIdchaîneouiIdentifiant du projet d’alignement auquel l’alignement appartient.
sourceVocabularyIdchaîneouiVocabulaire du concept source (ex. ICCA, MIMIC-IV).
sourceConceptCodechaîneouiCode du concept source dans son vocabulaire d’origine.
sourceConceptNamechaîneouiLibellé du concept source.
sourceDomainIdchaîneouiDomaine OMOP attendu (Measurement, Condition, Drug, Observation…).
sourceFrequencynombrenonNombre d’enregistrements observés pour ce concept dans la source.
sourceCategoryIdchaînenonCatégorie clinique du concept source (issue du dictionnaire).
sourceSubcategoryIdchaînenonSous-catégorie clinique.
sourceConceptClassIdchaînenonClasse de concept source (si OMOP).
targetConceptIdnombreouiconcept_id OMOP du concept cible.
targetConceptCodechaîneouiCode dans le vocabulaire cible (ex. LOINC 2160-0, SNOMED 251071003).
targetConceptNamechaîneouiLibellé du concept cible.
targetVocabularyIdchaîneouiVocabulaire cible (LOINC, SNOMED, RxNorm…).
targetDomainIdchaîneouiDomaine OMOP du concept cible.
targetConceptClassIdchaînenonClasse de concept cible (Lab Test, Observable Entity…).
equivalencechaîneouiÉquivalence SKOS : exactMatch, closeMatch, narrowMatch, broadMatch, relatedMatch.
statuschaîneouiStatut de revue : unchecked, approved, flagged, rejected, invalid, ignored.
matchScorenombrenonScore combiné (0–1) hérité du pré-classement, si disponible.
commentchaînenonCommentaire principal de l’alignement.
commentstableaunonFil de commentaires structurés (alignement et avis).
conceptSetIdchaînenonIdentifiant du concept set utilisé pour proposer cet alignement, le cas échéant.
mappedBychaînenonNom de l’auteur de l’alignement (ou de la méthode automatique : Syntactic, BioLORD, Claude Sonnet…).
mappedOnchaînenonDate ISO 8601 de création de l’alignement.
assignedReviewerchaînenonRelecteur assigné explicitement à cet alignement. Conservé principalement pour la compatibilité Usagi (colonne du CSV d’export OHDSI).
reviewedBychaînenonDernier relecteur ayant voté.
reviewedOnchaînenonDate du dernier vote.
reviewCommentchaînenonCommentaire associé au dernier vote.
createdAtchaîneouiDate ISO 8601 de création (jamais modifiée).
updatedAtchaîneouiDate ISO 8601 de dernière modification.
PrécédentSuggestionsSuivantExport

Produit

  • Accueil
  • Démo

Ressources

  • Documentation
  • Ressources
  • Outils
  • Blog

Communauté

  • Code source Framagit
  • Code source Github

À propos

  • InterHop.org
  • Contact

2021–2026 InterHop — CC BY-NC-SA 4.0 (site) · GPLv3 (logiciel)