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.

ImagingStudy — détail : liaison DICOM

Pivot entre le PACS DICOM (Picture Archiving and Communication System) et FHIR REST. ImagingStudy expose un Study DICOM via l'API FHIR sans dupliquer les pixels.

Pivot DICOM <-> FHIR

ImagingStudy ne transporte pas les pixels. Elle porte uniquement la structure descriptive d'un Study DICOM : Study Instance UID, Series, Instance UID. Les pixels eux-mêmes restent dans le PACS et sont récupérés via WADO-RS (DICOMweb), QIDO-RS pour la recherche, STOW-RS pour le stockage.

Structure series/instance

  • ImagingStudy = niveau Study DICOM. Un identifiant urn:oid:UID.
  • series[] = niveau Series DICOM. Une modalité (MR, CT, US, XA, ...), une bodySite, un description.
  • series.instance[] = niveau SOP Instance DICOM. Un SOP Class UID + SOP Instance UID.

Accès WADO-RS

Pour récupérer les pixels :

  • GET {endpoint.address}/studies/{studyUID} — Study DICOM complet en multipart/related (MIME DICOM).
  • GET {endpoint.address}/studies/{studyUID}/series/{seriesUID}/instances/{instanceUID}/frames/1 — frame en JPEG/PNG/multipart.
  • GET {endpoint.address}/studies/{studyUID}/metadata — métadonnées DICOM en JSON.

Exemple : IRM cérébrale

json imagingstudy-mri-brain.json
{
  "resourceType": "ImagingStudy",
  "id": "study-mri-brain-001",
  "identifier": [{
    "system": "urn:dicom:uid",
    "value": "urn:oid:1.2.826.0.1.3680043.8.498.123456789"
  }],
  "status": "available",
  "modality": [{
    "system": "http://dicom.nema.org/resources/ontology/DCM",
    "code": "MR",
    "display": "Magnetic Resonance"
  }],
  "subject": { "reference": "Patient/marie-dupont" },
  "encounter": { "reference": "Encounter/enc-2026-05-18" },
  "started": "2026-05-18T10:30:00+02:00",
  "basedOn": [{ "reference": "ServiceRequest/sr-irm-cerebrale-001" }],
  "referrer": { "reference": "Practitioner/dr-neurologue" },
  "interpreter": [{ "reference": "Practitioner/dr-radiologue" }],
  "endpoint": [{ "reference": "Endpoint/pacs-wadors-acme" }],
  "numberOfSeries": 4,
  "numberOfInstances": 752,
  "description": "IRM cerebrale 3T avec injection",
  "series": [{
    "uid": "1.2.826.0.1.3680043.8.498.123456789.1",
    "number": 1,
    "modality": {
      "system": "http://dicom.nema.org/resources/ontology/DCM",
      "code": "MR"
    },
    "description": "T1 axial",
    "numberOfInstances": 180,
    "bodySite": {
      "concept": { "coding": [{
        "system": "http://snomed.info/sct",
        "code": "12738006",
        "display": "Brain"
      }] }
    }
  }]
}

Pièges courants

  • UID non OID — DICOM impose des UID OID. Toujours urn:dicom:uid + urn:oid: dans la value.
  • endpoint absent — sans Endpoint pointant vers le PACS WADO-RS, le client n'a aucun moyen d'accéder aux pixels.
  • modality manquante au niveau série — chaque series doit porter une modality, sinon les viewers ne savent pas la décoder.
  • numberOfInstances incohérent — vérifier la somme des series.instance contre le total déclaré.

Ressources liées