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.

PractitionerRole — Rôle d'un praticien dans une organisation

L'union centrale des annuaires de santé. Un Practitioner (l'identité de la personne) peut exercer plusieurs rôles dans plusieurs organisations à plusieurs adresses avec plusieurs spécialités. PractitionerRole capture chaque combinaison.

Objet de la ressource

Un même praticien — par exemple un cardiologue parisien — peut être employé par l'Assistance Publique-Hôpitaux de Paris (APHP) pour des consultations à l'Hôpital Cochin trois jours par semaine, exercer en libéral le mardi à Saint-Cloud, et superviser une plateforme de téléconsultation le samedi matin. Trois rôles, une seule identité Practitioner. Chaque rôle est modélisé par un PractitionerRole distinct.

PractitionerRole porte le contexte d'exercice : organisation employeuse, lieu(x) physique(s), spécialité(s), disponibilités, identifiants spécifiques au rôle (n° AGV employeur, code service), endpoint technique pour la communication.

Champs clés

ChampTypeCardinalitéRôle
identifierIdentifier[]0..*Identifiants spécifiques au rôle.
activeboolean0..1Rôle actif.
periodPeriod0..1Période d'exercice.
practitionerReference(Practitioner)0..1Praticien.
organizationReference(Organization)0..1Organisation employeuse.
codeCodeableConcept[]0..*Rôle (doctor, nurse, midwife, dentist…).
specialtyCodeableConcept[]0..*Spécialités.
locationReference(Location)[]0..*Lieux d'exercice.
healthcareServiceReference(HealthcareService)[]0..*Services rattachés.
telecomContactPoint[]0..*Coordonnées pro spécifiques au rôle.
availableTimeBackboneElement[]0..*Plages d'ouverture.
notAvailableBackboneElement[]0..*Absences (congés, formation…).
availabilityExceptionsstring0..1Exceptions narratives.
endpointReference(Endpoint)[]0..*Endpoints techniques.

Exemple JSON

Dr Jones, cardiologue à l'Hôpital Cochin, consultation lundi-mercredi-vendredi 9h-13h :

json practitionerrole-example.json
{
  "resourceType": "PractitionerRole",
  "id": "dr-jones-cardio-cochin",
  "identifier": [{
    "system": "http://annuaire.sante.fr/role",
    "value": "PR-RPPS10003629305-CARDIO-COCHIN"
  }],
  "active": true,
  "period": { "start": "2020-09-01" },
  "practitioner": { "reference": "Practitioner/dr-jones" },
  "organization": { "reference": "Organization/hop-cochin" },
  "code": [{
    "coding": [{
      "system": "http://terminology.hl7.org/CodeSystem/practitioner-role",
      "code": "doctor",
      "display": "Doctor"
    }]
  }],
  "specialty": [{
    "coding": [{
      "system": "http://snomed.info/sct",
      "code": "394579002",
      "display": "Cardiology"
    }]
  }],
  "location": [{ "reference": "Location/cochin-cardio-floor" }],
  "healthcareService": [{ "reference": "HealthcareService/cardio-consult" }],
  "telecom": [{
    "system": "phone",
    "value": "+33 1 58 41 22 35",
    "use": "work"
  }, {
    "system": "email",
    "value": "dr.jones@aphp.fr",
    "use": "work"
  }],
  "availableTime": [{
    "daysOfWeek": ["mon", "wed", "fri"],
    "availableStartTime": "09:00:00",
    "availableEndTime": "13:00:00"
  }],
  "notAvailable": [{
    "description": "Congés annuels",
    "during": { "start": "2026-07-15", "end": "2026-08-15" }
  }],
  "endpoint": [{ "reference": "Endpoint/aphp-fhir-prod" }]
}

Usages typiques

  • Annuaires de santé : ANS Annuaire Santé (RPPS+, ADELI), NPPES (US), NHS Spine, NL.
  • Prise de RDV : filtrer les praticiens par spécialité + lieu + plage horaire.
  • Référencement multi-employeur : un praticien exerçant en CHU + libéral + télémédecine.
  • Communication inter-systèmes : routage de message via l'endpoint.
  • Identité forte de prescripteur : chaque prescription référence le PractitionerRole précis (et non juste le Practitioner).

Pièges courants

  • Pas de practitioner : practitioner est 0..1 mais en pratique toujours nécessaire pour un usage métier.
  • Confusion Practitioner / PractitionerRole : Practitioner = identité, PractitionerRole = exercice. Toute donnée contextuelle (organisation, lieu, spécialité, dispos) va dans PractitionerRole.
  • Spécialité dupliquée : indiquer la même spécialité dans code ET specialty brouille la sémantique. code = type de rôle, specialty = spécialité médicale.
  • Pas de period : un rôle expiré non clos pollue la recherche d'annuaire. Toujours fermer period.end à la cessation.
  • Téléphone d'un rôle confondu avec téléphone perso : les telecoms perso vont sur Practitioner, les telecoms pro vont sur PractitionerRole.

Ressources liées

  • Practitioner — identité du praticien.
  • Organization — employeur.
  • Location — lieu d'exercice.
  • HealthcareService — service rattaché.
  • Schedule — agenda technique.
  • Endpoint — endpoint technique.

Voir aussi : Practitioner — l'identité et HealthcareService — le service.