Aller au contenu

Modèle de licence (open-core)

🟢🔵 La règle qui structure tout Messier :

On peut redistribuer des identifiants (codes) issus de sources libres ; on ne redistribue jamais le contenu sous licence.

Exemple concret : un SCTID (255082000) est un identifiant → redistribuable ; le libellé « Adenocarcinoma of colon (disorder) » est du contenu SNOMED → jamais persisté ni livré.

🔵 Le déployeur, titulaire de ses propres licences, fournit ses dumps (SNOMED RF2, UMLS Metathesaurus). Côté Messier ils sont :

  • montés en volumes RO (jamais bakés dans une image) ;
  • gitignorés (jamais commités) ;
  • reliés par symlinks vers le stockage local.

La séparation est physique : ce qui est licencié n’existe que sur le volume du déployeur.

🔵 Mécanique clé (cf. Pont terminologique & émission (Mondo→SNOMED)) : les snapshots d’émission stockent des identifiants seuls. Pour l’affichage, api/snomed_labels.py hydrate les libellés depuis un index licencié au moment de la lecture, gated par la présence de SNOMED, avec la mention légale (clause 8.3). En base, rien de licencié.

4. Mentions légales (SNOMED Affiliate, UMLS, NCIt)

Section intitulée « 4. Mentions légales (SNOMED Affiliate, UMLS, NCIt) »

🟢🔵

Clause / licenceObligation
SNOMED 8.3mention légale affichée avec tout libellé SNOMED
SNOMED 2.4éditions officielles (pas de traduction maison)
SNOMED 6.2fenêtre de mise à jour 180 j (fraîcheur, cf. dashboard)
UMLS MLAusage interne, carte dérivée non redistribuée
NCItCC0 — libre

🟢 Le validateur est transformé en curator_<sha256(user_id)[:8]> déterministe, appliqué à la sortie (pas de colonne pseudonyme en base). 0 PII dans les livrables → conformité nLPD même si le fichier quitte l’institution. → Imports & exports (interop).

🔵 La lib MC (moteur compositionnel + recettes de build kb_builders) est publiable ; le contenu produit (index, cartes, KB) reste hors-repo. Ce qui est open = la recette, jamais le contenu. Décision D22 (MC DECISIONS.md). → ADR-005.