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.

Task — Activité opérationnelle FHIR

Là où ServiceRequest dit quoi, Task dit où on en est : reçue, acceptée, en cours, terminée. La ressource pivot du workflow opérationnel.

Objet de la ressource

Task décrit une activité à exécuter ou en cours d'exécution : traiter une demande, livrer un médicament, faire approuver une prescription, exécuter un questionnaire. Là où ServiceRequest porte la demande, Task porte le suivi opérationnel : qui exécute, quand, dans quel état, avec quelles entrées et quelles sorties.

Le pattern type : un ServiceRequest est créé par un médecin ; un Task focus = ServiceRequest/... est créé pour notifier le laboratoire qu'il doit l'exécuter. Le laboratoire fait progresser le Task de receivedacceptedin-progresscompleted.

Champs clés

ChampTypeCardinalitéRôle
statuscode1..1Obligatoire. Cycle de vie : draft, requested, received, accepted, rejected, ready, cancelled, in-progress, on-hold, failed, completed, entered-in-error.
statusReasonCodeableReference0..1Raison du statut courant.
businessStatusCodeableConcept0..1Statut métier libre — finer-grained que status.
intentcode1..1Obligatoire. unknown, proposal, plan, order, original-order, reflex-order, filler-order, instance-order, option.
prioritycode0..1routine, urgent, asap, stat.
codeCodeableConcept0..1Nature de la tâche (souvent fulfill, abort, replace, change).
focusReference(Any)0..1Ressource sur laquelle agit la tâche.
forReference(Any)0..1Bénéficiaire (typiquement Patient).
encounterReference(Encounter)0..1Contexte de soin.
requestedPeriodPeriod0..1Période demandée.
executionPeriodPeriod0..1Période réelle d'exécution.
authoredOndateTime0..1Date de création.
lastModifieddateTime0..1Dernière modification — clé pour les listes de tâches.
requesterReference(Device | Organization | Patient | Practitioner | PractitionerRole | RelatedPerson)0..1Demandeur.
ownerReference(...)0..1Exécutant assigné.
partOfReference(Task)0..*Tâche parente (décomposition).
inputBackboneElement[]0..*Données d'entrée.
outputBackboneElement[]0..*Résultats produits.

Statuts et transitions

Le diagramme de transitions canonique : draftrequestedreceivedaccepted ou rejected. Une tâche acceptée passe par readyin-progresscompleted en cas de succès, ou failed / cancelled. on-hold est réversible.

Exemple JSON

Tâche de fulfill d'une NFS, assignée au laboratoire central :

json task-fulfill-nfs.json
{
  "resourceType": "Task",
  "id": "fulfill-labtest-001",
  "status": "in-progress",
  "intent": "order",
  "priority": "routine",
  "code": {
    "coding": [{
      "system": "http://hl7.org/fhir/CodeSystem/task-code",
      "code": "fulfill",
      "display": "Fulfill the focal request"
    }]
  },
  "description": "Exécution de la demande de NFS pour M. Doe",
  "focus": { "reference": "ServiceRequest/sr-nfs-001" },
  "for": { "reference": "Patient/doe-john" },
  "encounter": { "reference": "Encounter/enc-2026-05-15" },
  "executionPeriod": {
    "start": "2026-05-15T08:30:00+02:00"
  },
  "authoredOn": "2026-05-15T08:25:00+02:00",
  "lastModified": "2026-05-15T09:10:00+02:00",
  "requester": { "reference": "Practitioner/dr-smith" },
  "owner": { "reference": "Organization/lab-central" },
  "businessStatus": {
    "coding": [{
      "system": "http://example.org/CodeSystem/lab-status",
      "code": "in-analyzer"
    }]
  },
  "input": [{
    "type": { "text": "Échantillon" },
    "valueReference": { "reference": "Specimen/spec-001" }
  }]
}

Pièges courants

  • Confondre Task et ServiceRequest — ServiceRequest = la demande, Task = le suivi d'exécution. Un ServiceRequest peut générer plusieurs Tasks (par étape, par exécutant).
  • Transition de statut non valide — passer de completed à in-progress n'est pas autorisé sans entered-in-error.
  • Pas de owner — sans propriétaire, la tâche est orpheline : aucune liste de travail ne la remontera.
  • Confusion requestedPeriod vs executionPeriod — la première est planifiée, la seconde réelle. Mélanger les deux fausse les indicateurs de délai.
  • Polling au lieu de Subscription — pour des listes de tâches actives, un Subscription sur Task?owner=...&status=ready,in-progress évite la charge serveur d'un polling.

Ressources liées

  • ServiceRequest — la demande que Task fulfill.
  • MedicationRequest — Task fulfill en pharmacie hospitalière.
  • Questionnaire — Task qui demande au patient de remplir un formulaire.
  • TaskList — conteneur de tâches (Bundle ou Composition).
  • Provenance — traçabilité des changements de statut.