ediverse Explorer la plateforme

À la une PEPPOL BIS Billing 3.0 L’obligation européenne d’e-invoicing arrive : France sept 2026, Belgique janv 2026, Allemagne 2025.

SpecimenDefinition — Spécification d'un prélèvement

Le « mode d'emploi » d'un prélèvement biologique. Une SpecimenDefinition décrit, pour un test ou un protocole donné, le type d'échantillon requis, le tube, le volume minimal, la préparation patient et les contraintes de conservation.

Objet de la ressource

Un test de laboratoire ne peut être exécuté que si le prélèvement arrive dans les bonnes conditions. SpecimenDefinition codifie ces conditions au niveau du catalogue : nature de l'échantillon (sérum, plasma, urine, biopsie…), conteneur attendu (tube sec, hépariné, EDTA…), volume minimal, préparation patient (à jeun, après effort, minutes après prise médicamenteuse…), conservation (température, durée), critères de rejet (hémolyse, ictère, lipémie).

Là où Specimen décrit le prélèvement réellement reçu par le laboratoire, SpecimenDefinition décrit le prélèvement requis par un acte de laboratoire ou un protocole d'étude. Le pré-analytique structuré est l'enjeu n°1 de la qualité en biologie médicale.

Champs clés

ChampTypeCardinalitéRôle
urluri0..1URL canonique de référencement.
identifierIdentifier0..1Identifiant métier (numéro catalogue).
versionstring0..1Version de la définition (sémantique de versioning).
statuscode1..1draft, active, retired, unknown.
experimentalboolean0..1Indique si la définition est expérimentale (non destinée à la prod).
subject[x]CodeableConcept | Reference0..1Population cible (espèce, groupe d'âge).
typeCollectedCodeableConcept0..1Type d'échantillon prélevé (SNOMED CT ou table HL7 0487).
patientPreparationCodeableConcept[]0..*Préparation du patient (à jeun, repos, abstinence…).
timeAspectstring0..1Aspect temporel narratif (matin, post-prandial, T+30 min…).
collectionCodeableConcept[]0..*Procédure de collecte (ponction veineuse, capillaire, biopsie…).
typeTestedBackboneElement[]0..*Échantillon(s) testé(s) (peut différer du prélevé : dérivation, aliquoting).
typeTested.preferencecode1..1preferred ou alternate.
typeTested.containerBackboneElement0..1Description du conteneur (matériau, type, capacité, capuchon, additif).
typeTested.requirementmarkdown0..1Exigences libres complémentaires (inversions, agitation…).
typeTested.retentionTimeDuration0..1Durée de conservation après réception.
typeTested.rejectionCriterionCodeableConcept[]0..*Critères de rejet (hémolyse, coagulation, contamination…).
typeTested.handlingBackboneElement[]0..*Conditions de conservation (température, durée max, instruction).
typeTested.testingDestinationCodeableConcept[]0..*Destination de test (plateau biochimie, plateau bactériologie…).

Exemple JSON

Catalogue d'un laboratoire de référence : tube SST gold de 5 mL pour sérum, à jeun 8 heures, conservation 2-8 °C pendant 7 jours, rejet si hémolyse.

json specimendefinition-example.json
{
  "resourceType": "SpecimenDefinition",
  "id": "2364",
  "url": "https://example.lab.org/SpecimenDefinition/serum-tube-gold",
  "version": "1.0",
  "name": "SerumTubeGold",
  "title": "Serum separator tube — gold cap",
  "status": "active",
  "experimental": false,
  "date": "2026-05-16",
  "publisher": "Acme Reference Lab",
  "typeCollected": {
    "coding": [{
      "system": "http://terminology.hl7.org/CodeSystem/v2-0487",
      "code": "SER",
      "display": "Serum"
    }]
  },
  "patientPreparation": [{
    "coding": [{
      "system": "http://snomed.info/sct",
      "code": "243753002",
      "display": "Fasting (8 hours)"
    }]
  }],
  "timeAspect": "Preferred sample collection time is morning, after at least 8 hours fasting.",
  "collection": [{
    "coding": [{
      "system": "http://snomed.info/sct",
      "code": "28520004",
      "display": "Venous blood specimen collection"
    }]
  }],
  "typeTested": [{
    "isDerived": false,
    "preference": "preferred",
    "container": {
      "material": {
        "coding": [{
          "system": "http://terminology.hl7.org/CodeSystem/container-material",
          "code": "plastic"
        }]
      },
      "type": {
        "coding": [{
          "system": "http://terminology.hl7.org/CodeSystem/v2-0916",
          "code": "SSTII",
          "display": "Serum separator tube II — gold cap"
        }]
      },
      "cap": {
        "coding": [{
          "system": "http://terminology.hl7.org/CodeSystem/container-cap",
          "code": "gold"
        }]
      },
      "minimumVolumeQuantity": { "value": 5, "unit": "mL", "system": "http://unitsofmeasure.org", "code": "mL" }
    },
    "requirement": "Inverter 5 fois après prélèvement.",
    "retentionTime": { "value": 7, "unit": "days", "system": "http://unitsofmeasure.org", "code": "d" },
    "rejectionCriterion": [{
      "coding": [{
        "system": "http://terminology.hl7.org/CodeSystem/rejection-criteria",
        "code": "hemolized",
        "display": "Hemolized specimen"
      }]
    }],
    "handling": [{
      "temperatureRange": {
        "low":  { "value": 2,  "unit": "Cel", "system": "http://unitsofmeasure.org", "code": "Cel" },
        "high": { "value": 8, "unit": "Cel", "system": "http://unitsofmeasure.org", "code": "Cel" }
      },
      "maxDuration": { "value": 7, "unit": "days", "system": "http://unitsofmeasure.org", "code": "d" },
      "instruction": "Conserver entre 2 et 8 °C, transport en triphasé."
    }]
  }]
}

Usages typiques

  • Catalogue laboratoire : référencer chaque analyte avec sa SpecimenDefinition pour automatiser l'étiquetage et le routage.
  • ActivityDefinition / PlanDefinition : protocole multi-actes qui embarque les SpecimenDefinitions à respecter.
  • ServiceRequest : l'ordre de laboratoire référence une SpecimenDefinition via specimenRequirement.
  • Études cliniques : protocole d'essai qui impose un tube et une préparation spécifiques.
  • Pré-analytique automatisé : les automates de tri d'étiquetage lisent la SpecimenDefinition pour générer les codes-barres et router les tubes.

Pièges courants

  • Confusion Specimen / SpecimenDefinition : Specimen est une instance réelle datée, SpecimenDefinition est un modèle catalogué. Ne pas générer une SpecimenDefinition à chaque prélèvement.
  • Volume minimal sans unité : minimumVolumeQuantity doit toujours porter unité UCUM (mL, uL). Omettre l'unité rend la valeur ininterprétable.
  • Cap et tube incohérents : la coding du cap (gold, lavender…) doit matcher le type de tube (SST, EDTA, citrate). Inconsistance = risque de mismatch d'analyte.
  • Plusieurs typeTested avec preference="preferred" : ambigu, un seul échantillon préféré par définition (les autres en alternate).
  • Rejection criterion sans terminologie : utiliser SNOMED CT ou un CodeSystem laboratoire homogène, pas du texte libre.
  • Versioning oublié : une modification du volume requis sans version bump crée une ambiguïté entre les ServiceRequest passés et le catalogue courant.

Ressources liées

  • Specimen — instance réelle d'un prélèvement reçu au laboratoire.
  • ServiceRequest — demande de laboratoire qui référence une SpecimenDefinition.
  • ActivityDefinition — définition d'activité réutilisable (un acte de labo).
  • PlanDefinition — protocole multi-actes (panel, profil, étude clinique).
  • ObservationDefinition — définition des observations attendues, pendant logique du prélèvement.

Voir aussi : Specimen — l'instance prélevée et ServiceRequest — la demande de laboratoire.