FHIR Release 3 (STU) CI-Build

This page is part of the FHIR Specification (v3.0.2: STU 3). The current version which supercedes this version is 5.0.0 . For a full list Continuous Integration Build of available versions, see FHIR (will be incorrect/inconsistent at times).
See the Directory of published versions icon . Page versions: R5 R4B R4 R3

8.5 Resource PractitionerRole - Content

Responsible Owner: Patient Administration icon Work Group   Normative Maturity Level : 2   Trial Use Security Category : Individual Compartments : Practitioner

A specific set of Roles/Locations/specialties/services that a practitioner may perform at an organization for a period of time.

Note to Implementers: The display property has been added as a denormalized representation of the various core properties of this resource. The expected usage would be for easily populating the display field in references to this resource. We request feedback on whether implementers have a need for this property and if that need aligns with the proposed element definition.

Feedback is welcome here icon.

The PractitionerRole covers the recording of describes the location and types of services that Practitioners are able to practitioners provide for an organization. organization at specific location(s).

The PractitionerRole resource can be used in multiple contexts including:

  • Provider Registries where it indicates what a practitioner can perform for an organization (may indicate multiple healthcareservices, locations, and roles)
  • In a Clinical system where it indicates the role, healthcareservice and location details associated with a practitioner that are applicable to the healthcare event (e.g. Observation, Appointment, Condition, CarePlan)
  • In a Clinical system as a point of reference rather than an event, such as a patient's preferred general practitioner (at a specific clinic)

The role, specialty, Location telecom and HealthcareService properties can be repeated if required in other instances of the PractitionerRole. Some systems record a collection of service values for a single location, others record the single service and the list of locations it is available. Both are acceptable options for representing this data.
Where availability, telecom, or other details are not the same across all healthcareservices, or locations a separate PractitionerRole instance should be created.

Many resource types have a choice of a reference to either a Practitioner resource or a PractitionerRole resource. The latter provides organizational context for the practitioners participation when it is required, otherwise a direct reference to the practitioner may be used.
Many implementations may choose to profile the PractitionerRole to a single location/role/healthcareservice for their specific usage.
As the property that references a PractitionerRole typically has a specific context, the code on the PractitionerRole having duplicate code values is not a big concern (and is used for discovery where required).
e.g. These references are all very context specific: Patient.GeneralPractitioner, CarePlan.reported, CarePlan.contributor, Appointment.participant (through the participant.role), Immunization.informationSource, Immunization.performer (through the performer.function property)

For use cases where an organization has activities where a practitioner is not defined/pre-allocated for a specific role (e.g. an un-named surgeon at XYZ Hospital), a PractitionerRole resource can be used with an empty Practitioner property, and the other relevant role properties populated - i.e. code, organization.

Qualifications (from the Practitioner resource) do not imply a Role, but might be considered when an Organization allocates practitioners to roles within their organization, and could provide useful information (such as expiry information) which could need to be tracked in some situations to ensure they continue to be eligible for a specific role.

The CareTeam resource is also often used to provide details of a role that a practitioner is allocated to perform, but is usually scoped to a much finer granularity of care, and often within the specific context of a Patient , or functional role (e.g. Crisis planning team). In contrast the PractitionerRole is used in a more general sense to cover all the places that the practitioner is allocated to work (and specific details relevant to that role - such as a specific contact number, or electronic services endpoint).

When referencing a practitioner from clinical (or other) content where the organization and role are important to the context of the reference to the practitioner, then a reference to the PractitionerRole should be used.

Practitioner performs different roles within the same or even different organizations. Depending on jurisdiction and custom, it may be necessary to maintain a specific Practitioner Resource for each such role or have a single Practitioner with multiple roles. The role can be limited to a specific period, after which authorization for this role ends. Note that the represented organization need not necessarily be the (direct) employer of a Practitioner.

This resource is referenced by

Structure

Business The location(s) at which this The list of healthcare Σ Contact mon | tue | wed | thu | fri | sat | sun Always available? e.g. 24 hour service availableStartTime Reason presented to the user explaining why time not available during Service not availablefrom Technical endpoints providing access to services operated
Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . PractitionerRole N DomainResource Roles/organizations the practitioner is associated with

Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension
. . . identifier Σ 0..* Identifier Identifiers that are specific to for a role/location

. . . active Σ 0..1 boolean Whether this practitioner's practitioner role record is in active use
. . . period Σ 0..1 Period The period during which the practitioner is authorized to perform in these role(s)
. . . organization Σ 0..1 Reference ( Organization ) Organization where the roles are role is available
. . code . network Σ 0..* Reference ( Organization ) The network in which the PractitionerRole provides the role's services (if defined) at the indicated locations (if defined)

... code Σ 0..* CodeableConcept Roles which this practitioner may perform
PractitionerRole Binding: Practitioner Role ( Example )

. . specialty . display Σ 0..1 string Denormalized practitioner name, role, organization and location
0..*
. . . specialty Σ 0..* CodeableConcept Specific specialty of the practitioner
Binding: Practice Setting Code Value Set ( Preferred Example )

. . . location Σ 0..* Reference ( Location ) Location(s) where the practitioner provides care

. . . healthcareService 0..* Reference ( HealthcareService ) Healthcare services that this worker provides provided for this role's Organization/Location(s)

. . . telecom contact 0..* ContactPoint ExtendedContactDetail Official contact details that are specific relating to the role/location/service this PractitionerRole
availableTime 0..* BackboneElement Times the Service Site is available
. . daysOfWeek . characteristic 0..* code CodeableConcept Collection of characteristics (attributes)
DaysOfWeek Binding: Service Mode ( Required Example )

. . allDay . communication 0..1 0..* boolean CodeableConcept A language the practitioner (in this role) can use in patient communication
Binding: All Languages ( Required ) 0..1 Opening time of day (ignored if allDay = true) availableEndTime Closing time of day (ignored if allDay = true) notAvailable 0..* BackboneElement
time Additional Bindings Purpose
Common Languages 0..1 time Starter

Not available during this time due to provided reason
. . description . availability 1..1 string 0..1 Period Availability Times the Practitioner is available at this date availabilityExceptions 0..1 string location and/or healthcare service (including exceptions)
Description of availability exceptions
. . . endpoint 0..* Reference ( Endpoint ) Endpoints for interacting with the practitioner with in this role


doco Documentation for this format icon

See the Extensions for this resource

UML Diagram ( Legend )

PractitionerRole ( DomainResource ) Business Identifiers that are specific to a role/location identifier : Identifier [0..*] Whether this practitioner's practitioner role record is in active use. Some systems may use this property to mark non-active practitioners, such as those that are not currently employed active : boolean [0..1] The period during which the person is authorized to act as a practitioner in these role(s) for the organization period : Period [0..1] Practitioner that is able to provide the defined services for the organation organization practitioner : Reference [0..1] « Practitioner » The organization where the Practitioner performs the roles associated this role is available organization : Reference [0..1] « Organization » The network in which the PractitionerRole provides the role's services (if defined) at the indicated locations (if defined) network : Reference [0..*] « Organization » Roles which this practitioner is authorized to perform for the organization code : CodeableConcept [0..*] « The role a person plays representing an organization null (Strength=Example) PractitionerRole ?? » Specific specialty A value that describes the intersection of the practitioner, organization, and the role of the practitioner within the organization. This is not the human name of the practitioner, though the textual representation of that human name may be a part of this property specialty display : CodeableConcept string [0..*] [0..1] Specific The specialty associated with of a practitioner that describes the agency (Strength=Preferred) functional role they are practicing at a given organization or location Practice Setting Code Value specialty : CodeableConcept [0..*] « S... null (Strength=Example) PracticeSettingCodeValueSet ? ?? » The location(s) at which this practitioner provides care location : Reference [0..*] « Location » The list of healthcare services that this worker provides for this role's Organization/Location(s) healthcareService : Reference [0..*] « HealthcareService » Contact The contact details that are specific of communication devices available relevant to the role/location/service specific PractitionerRole. This can include addresses, phone numbers, fax numbers, mobile numbers, email addresses and web sites telecom contact : ContactPoint ExtendedContactDetail [0..*] A description Collection of site availability exceptions, e.g. public holiday availability. Succinctly describing all possible exceptions to normal site availability as details in the available Times and not available Times characteristics (attributes) availabilityExceptions characteristic : string CodeableConcept [0..1] [0..*] « Technical endpoints providing access to services operated for the practitioner with this role null (Strength=Example) endpoint : Reference [0..*] Endpoint ServiceMode ?? » AvailableTime Indicates which days of A language the week practitioner can use in patient communication. The practitioner may know several languages (listed in practitioner.communication), however these are available between the start and end Times languages that could be advertised in a directory for a patient to search daysOfWeek communication : code CodeableConcept [0..*] « The days of the week. null (Strength=Required) DaysOfWeek AllLanguages ! » Is this always available? (hence times are irrelevant) e.g. 24 hour service allDay : boolean [0..1] The opening time A collection of day. Note: If times the AllDay flag practitioner is set, then available or performing this time is ignored availableStartTime : time [0..1] The closing time of day. Note: If role at the AllDay flag is set, then this time is ignored location and/or healthcareservice availableEndTime availability : time Availability [0..1] NotAvailable The reason that can be presented Technical endpoints providing access to services operated for the user as to why practitioner with this time is not available description : string [1..1] Service is not available (seasonally or role. Commonly used for a public holiday) from this date locating scheduling services, or identifying where to send referrals electronically during endpoint : Period [0..1] A collection of times that the Service Site is available availableTime Reference [0..*] The HealthcareService is not available during this period of time due to the provided reason notAvailable « Endpoint » [0..*]

XML Template

<

<PractitionerRole xmlns="http://hl7.org/fhir"> doco

 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <</identifier>
 <

 <identifier><!-- 0..* Identifier Identifiers for a role/location --></identifier>
 <active value="[boolean]"/><!-- 0..1 Whether this practitioner role record is in active use -->

 <period><!-- 0..1 Period The period during which the practitioner is authorized to perform in these role(s) --></period>
 <</practitioner>
 <</organization>

 <practitioner><!-- 0..1 Reference(Practitioner) Practitioner that provides services for the organization --></practitioner>
 <organization><!-- 0..1 Reference(Organization) Organization where the role is available --></organization>
 <network><!-- 0..* Reference(Organization) The network in which the PractitionerRole provides the role's services (if defined) at the indicated locations (if defined) --></network>

 <code><!-- 0..* CodeableConcept Roles which this practitioner may perform --></code>
 <</specialty>
 <</location>
 <</healthcareService>
 <</telecom>
 <
  <
  <
  <
  <
 </availableTime>
 <
  <
  <</during>
 </notAvailable>
 <
 <</endpoint>

 <display value="[string]"/><!-- 0..1 Denormalized practitioner name, role, organization and location -->
 <specialty><!-- 0..* CodeableConcept Specific specialty of the practitioner --></specialty>
 <location><!-- 0..* Reference(Location) Location(s) where the practitioner provides care --></location>
 <healthcareService><!-- 0..* Reference(HealthcareService) Healthcare services provided for this role's Organization/Location(s) --></healthcareService>
 <contact><!-- 0..* ExtendedContactDetail Official contact details relating to this PractitionerRole --></contact>
 <characteristic><!-- 0..* CodeableConcept Collection of characteristics (attributes) --></characteristic>
 <communication><!-- 0..* CodeableConcept A language the practitioner (in this role) can use in patient communication --></communication>
 <availability><!-- 0..1 Availability Times the Practitioner is available at this location and/or healthcare service (including exceptions) --></availability>
 <endpoint><!-- 0..* Reference(Endpoint) Endpoints for interacting with the practitioner in this role --></endpoint>

</PractitionerRole>

JSON Template

{doco
  "resourceType" : "",

  "resourceType" : "PractitionerRole",

  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "
  "
  "
  "
  "
  "
  "
  "
  "
  "
  "
    "
    "
    "
    "
  }],
  "
    "
    "
  }],
  "
  "

  "identifier" : [{ Identifier }], // Identifiers for a role/location
  "active" : <boolean>, // Whether this practitioner role record is in active use
  "period" : { Period }, // The period during which the practitioner is authorized to perform in these role(s)
  "practitioner" : { Reference(Practitioner) }, // Practitioner that provides services for the organization
  "organization" : { Reference(Organization) }, // Organization where the role is available
  "network" : [{ Reference(Organization) }], // The network in which the PractitionerRole provides the role's services (if defined) at the indicated locations (if defined)
  "code" : [{ CodeableConcept }], // Roles which this practitioner may perform
  "display" : "<string>", // Denormalized practitioner name, role, organization and location
  "specialty" : [{ CodeableConcept }], // Specific specialty of the practitioner
  "location" : [{ Reference(Location) }], // Location(s) where the practitioner provides care
  "healthcareService" : [{ Reference(HealthcareService) }], // Healthcare services provided for this role's Organization/Location(s)
  "contact" : [{ ExtendedContactDetail }], // Official contact details relating to this PractitionerRole
  "characteristic" : [{ CodeableConcept }], // Collection of characteristics (attributes)
  "communication" : [{ CodeableConcept }], // A language the practitioner (in this role) can use in patient communication
  "availability" : { Availability }, // Times the Practitioner is available at this location and/or healthcare service (including exceptions)
  "endpoint" : [{ Reference(Endpoint) }] // Endpoints for interacting with the practitioner in this role

}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:PractitionerRole;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from 
  # from 
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
    fhir:
    fhir:
    fhir:
    fhir:
  ], ...;
  fhir:
    fhir:
    fhir:
  ], ...;
  fhir:
  fhir:

  # from Resource: fhir:id, fhir:meta, fhir:implicitRules, and fhir:language
  # from DomainResource: fhir:text, fhir:contained, fhir:extension, and fhir:modifierExtension
  fhir:identifier  ( [ Identifier ] ... ) ; # 0..* Identifiers for a role/location
  fhir:active [ boolean ] ; # 0..1 Whether this practitioner role record is in active use
  fhir:period [ Period ] ; # 0..1 The period during which the practitioner is authorized to perform in these role(s)
  fhir:practitioner [ Reference(Practitioner) ] ; # 0..1 Practitioner that provides services for the organization
  fhir:organization [ Reference(Organization) ] ; # 0..1 Organization where the role is available
  fhir:network  ( [ Reference(Organization) ] ... ) ; # 0..* The network in which the PractitionerRole provides the role's services (if defined) at the indicated locations (if defined)
  fhir:code  ( [ CodeableConcept ] ... ) ; # 0..* Roles which this practitioner may perform
  fhir:display [ string ] ; # 0..1 Denormalized practitioner name, role, organization and location
  fhir:specialty  ( [ CodeableConcept ] ... ) ; # 0..* Specific specialty of the practitioner
  fhir:location  ( [ Reference(Location) ] ... ) ; # 0..* Location(s) where the practitioner provides care
  fhir:healthcareService  ( [ Reference(HealthcareService) ] ... ) ; # 0..* Healthcare services provided for this role's Organization/Location(s)
  fhir:contact  ( [ ExtendedContactDetail ] ... ) ; # 0..* Official contact details relating to this PractitionerRole
  fhir:characteristic  ( [ CodeableConcept ] ... ) ; # 0..* Collection of characteristics (attributes)
  fhir:communication  ( [ CodeableConcept ] ... ) ; # 0..* A language the practitioner (in this role) can use in patient communication
  fhir:availability [ Availability ] ; # 0..1 Times the Practitioner is available at this location and/or healthcare service (including exceptions)
  fhir:endpoint  ( [ Reference(Endpoint) ] ... ) ; # 0..* Endpoints for interacting with the practitioner in this role

]

Changes since DSTU2 from both R4 and R4B

PractitionerRole
PractitionerRole.network
  • Added Element
PractitionerRole.display
  • Added Element
PractitionerRole.contact
  • Added Element
PractitionerRole.characteristic
  • Added Element
PractitionerRole.communication
  • Added Element
PractitionerRole.availability
  • Added Element
PractitionerRole.telecom
  • Deleted (-> PractitionerRole.contact.telecom)
PractitionerRole.availableTime
  • Deleted (-> PractitionerRole.availability.availableTime)
PractitionerRole.notAvailable
  • Deleted (-> PractitionerRole.availability.notAvailableTime)
PractitionerRole.availabilityExceptions
  • Deleted (-> PractitionerRole.availability.notAvailableTime.description)

This resource did not exist in Release 2 See the Full Difference for further information

This analysis is available for R4 as XML or JSON and for R4B as XML or JSON .

Structure

Business The location(s) at which this The list of healthcare Σ Contact mon | tue | wed | thu | fri | sat | sun Always available? e.g. 24 hour service availableStartTime Reason presented to the user explaining why time not available during Service not availablefrom Description of availability exceptions Technical endpoints providing access to services operated
Name Flags Card. Type Description & Constraints      Filter: Filters doco
. . PractitionerRole N DomainResource Roles/organizations the practitioner is associated with

Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension
. . . identifier Σ 0..* Identifier Identifiers that are specific to for a role/location

. . . active Σ 0..1 boolean Whether this practitioner's practitioner role record is in active use
. . . period Σ 0..1 Period The period during which the practitioner is authorized to perform in these role(s)
. . . organization Σ 0..1 Reference ( Organization ) Organization where the roles are role is available
. . code . network Σ 0..* Reference ( Organization ) The network in which the PractitionerRole provides the role's services (if defined) at the indicated locations (if defined)

... code Σ 0..* CodeableConcept Roles which this practitioner may perform
PractitionerRole Binding: Practitioner Role ( Example )

. . specialty . display Σ 0..1 string 0..* Denormalized practitioner name, role, organization and location
. . . specialty Σ 0..* CodeableConcept Specific specialty of the practitioner
Binding: Practice Setting Code Value Set ( Preferred Example )

. . . location Σ 0..* Reference ( Location ) Location(s) where the practitioner provides care

. . . healthcareService 0..* Reference ( HealthcareService ) Healthcare services that this worker provides provided for this role's Organization/Location(s)

. . . telecom contact 0..* ContactPoint ExtendedContactDetail Official contact details that are specific relating to the role/location/service this PractitionerRole
availableTime 0..* BackboneElement Times the Service Site is available
. . daysOfWeek . characteristic 0..* code CodeableConcept Collection of characteristics (attributes)
DaysOfWeek Binding: Service Mode ( Required Example )

. . allDay . communication 0..1 0..* boolean CodeableConcept A language the practitioner (in this role) can use in patient communication
Binding: All Languages ( Required ) 0..1 Opening time of day (ignored if allDay = true) availableEndTime Closing time of day (ignored if allDay = true) notAvailable 0..* BackboneElement
time Additional Bindings Purpose
Common Languages 0..1 time Starter

Not available during this time due to provided reason
. . description . availability 1..1 string 0..1 Period Availability Times the Practitioner is available at this date availabilityExceptions 0..1 string location and/or healthcare service (including exceptions)
. . . endpoint 0..* Reference ( Endpoint ) Endpoints for interacting with the practitioner with in this role


doco Documentation for this format icon

See the Extensions for this resource

UML Diagram ( Legend )

PractitionerRole ( DomainResource ) Business Identifiers that are specific to a role/location identifier : Identifier [0..*] Whether this practitioner's practitioner role record is in active use. Some systems may use this property to mark non-active practitioners, such as those that are not currently employed active : boolean [0..1] The period during which the person is authorized to act as a practitioner in these role(s) for the organization period : Period [0..1] Practitioner that is able to provide the defined services for the organation organization practitioner : Reference [0..1] « Practitioner » The organization where the Practitioner performs the roles associated this role is available organization : Reference [0..1] « Organization » The network in which the PractitionerRole provides the role's services (if defined) at the indicated locations (if defined) network : Reference [0..*] « Organization » Roles which this practitioner is authorized to perform for the organization code : CodeableConcept [0..*] « The role a person plays representing an organization null (Strength=Example) PractitionerRole ?? » Specific specialty A value that describes the intersection of the practitioner, organization, and the role of the practitioner within the organization. This is not the human name of the practitioner, though the textual representation of that human name may be a part of this property specialty display : CodeableConcept string [0..*] [0..1] Specific The specialty associated with of a practitioner that describes the agency (Strength=Preferred) functional role they are practicing at a given organization or location Practice Setting Code Value specialty : CodeableConcept [0..*] « S... null (Strength=Example) PracticeSettingCodeValueSet ? ?? » The location(s) at which this practitioner provides care location : Reference [0..*] « Location » The list of healthcare services that this worker provides for this role's Organization/Location(s) healthcareService : Reference [0..*] « HealthcareService » Contact The contact details that are specific of communication devices available relevant to the role/location/service specific PractitionerRole. This can include addresses, phone numbers, fax numbers, mobile numbers, email addresses and web sites telecom contact : ContactPoint ExtendedContactDetail [0..*] A description Collection of site availability exceptions, e.g. public holiday availability. Succinctly describing all possible exceptions to normal site availability as details in the available Times and not available Times characteristics (attributes) availabilityExceptions characteristic : string CodeableConcept [0..1] [0..*] « Technical endpoints providing access to services operated for the practitioner with this role null (Strength=Example) endpoint : Reference [0..*] Endpoint ServiceMode ?? » AvailableTime Indicates which days of A language the week practitioner can use in patient communication. The practitioner may know several languages (listed in practitioner.communication), however these are available between the start and end Times languages that could be advertised in a directory for a patient to search daysOfWeek communication : code CodeableConcept [0..*] « The days of the week. null (Strength=Required) DaysOfWeek AllLanguages ! » Is this always available? (hence times are irrelevant) e.g. 24 hour service allDay : boolean [0..1] The opening time A collection of day. Note: If times the AllDay flag practitioner is set, then available or performing this time is ignored availableStartTime : time [0..1] The closing time of day. Note: If role at the AllDay flag is set, then this time is ignored location and/or healthcareservice availableEndTime availability : time Availability [0..1] NotAvailable The reason that can be presented Technical endpoints providing access to services operated for the user as to why practitioner with this time is not available description : string [1..1] Service is not available (seasonally or role. Commonly used for a public holiday) from this date locating scheduling services, or identifying where to send referrals electronically during endpoint : Period [0..1] A collection of times that the Service Site is available availableTime Reference [0..*] The HealthcareService is not available during this period of time due to the provided reason notAvailable « Endpoint » [0..*]

XML Template

<

<PractitionerRole xmlns="http://hl7.org/fhir"> doco

 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <</identifier>
 <

 <identifier><!-- 0..* Identifier Identifiers for a role/location --></identifier>
 <active value="[boolean]"/><!-- 0..1 Whether this practitioner role record is in active use -->

 <period><!-- 0..1 Period The period during which the practitioner is authorized to perform in these role(s) --></period>
 <</practitioner>
 <</organization>

 <practitioner><!-- 0..1 Reference(Practitioner) Practitioner that provides services for the organization --></practitioner>
 <organization><!-- 0..1 Reference(Organization) Organization where the role is available --></organization>
 <network><!-- 0..* Reference(Organization) The network in which the PractitionerRole provides the role's services (if defined) at the indicated locations (if defined) --></network>

 <code><!-- 0..* CodeableConcept Roles which this practitioner may perform --></code>
 <</specialty>
 <</location>
 <</healthcareService>
 <</telecom>
 <
  <
  <
  <
  <
 </availableTime>
 <
  <
  <</during>
 </notAvailable>
 <
 <</endpoint>

 <display value="[string]"/><!-- 0..1 Denormalized practitioner name, role, organization and location -->
 <specialty><!-- 0..* CodeableConcept Specific specialty of the practitioner --></specialty>
 <location><!-- 0..* Reference(Location) Location(s) where the practitioner provides care --></location>
 <healthcareService><!-- 0..* Reference(HealthcareService) Healthcare services provided for this role's Organization/Location(s) --></healthcareService>
 <contact><!-- 0..* ExtendedContactDetail Official contact details relating to this PractitionerRole --></contact>
 <characteristic><!-- 0..* CodeableConcept Collection of characteristics (attributes) --></characteristic>
 <communication><!-- 0..* CodeableConcept A language the practitioner (in this role) can use in patient communication --></communication>
 <availability><!-- 0..1 Availability Times the Practitioner is available at this location and/or healthcare service (including exceptions) --></availability>
 <endpoint><!-- 0..* Reference(Endpoint) Endpoints for interacting with the practitioner in this role --></endpoint>

</PractitionerRole>

JSON Template

{doco
  "resourceType" : "",

  "resourceType" : "PractitionerRole",

  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "
  "
  "
  "
  "
  "
  "
  "
  "
  "
  "
    "
    "
    "
    "
  }],
  "
    "
    "
  }],
  "
  "

  "identifier" : [{ Identifier }], // Identifiers for a role/location
  "active" : <boolean>, // Whether this practitioner role record is in active use
  "period" : { Period }, // The period during which the practitioner is authorized to perform in these role(s)
  "practitioner" : { Reference(Practitioner) }, // Practitioner that provides services for the organization
  "organization" : { Reference(Organization) }, // Organization where the role is available
  "network" : [{ Reference(Organization) }], // The network in which the PractitionerRole provides the role's services (if defined) at the indicated locations (if defined)
  "code" : [{ CodeableConcept }], // Roles which this practitioner may perform
  "display" : "<string>", // Denormalized practitioner name, role, organization and location
  "specialty" : [{ CodeableConcept }], // Specific specialty of the practitioner
  "location" : [{ Reference(Location) }], // Location(s) where the practitioner provides care
  "healthcareService" : [{ Reference(HealthcareService) }], // Healthcare services provided for this role's Organization/Location(s)
  "contact" : [{ ExtendedContactDetail }], // Official contact details relating to this PractitionerRole
  "characteristic" : [{ CodeableConcept }], // Collection of characteristics (attributes)
  "communication" : [{ CodeableConcept }], // A language the practitioner (in this role) can use in patient communication
  "availability" : { Availability }, // Times the Practitioner is available at this location and/or healthcare service (including exceptions)
  "endpoint" : [{ Reference(Endpoint) }] // Endpoints for interacting with the practitioner in this role

}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:PractitionerRole;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from 
  # from 
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
  fhir:
    fhir:
    fhir:
    fhir:
    fhir:
  ], ...;
  fhir:
    fhir:
    fhir:
  ], ...;
  fhir:
  fhir:

  # from Resource: fhir:id, fhir:meta, fhir:implicitRules, and fhir:language
  # from DomainResource: fhir:text, fhir:contained, fhir:extension, and fhir:modifierExtension
  fhir:identifier  ( [ Identifier ] ... ) ; # 0..* Identifiers for a role/location
  fhir:active [ boolean ] ; # 0..1 Whether this practitioner role record is in active use
  fhir:period [ Period ] ; # 0..1 The period during which the practitioner is authorized to perform in these role(s)
  fhir:practitioner [ Reference(Practitioner) ] ; # 0..1 Practitioner that provides services for the organization
  fhir:organization [ Reference(Organization) ] ; # 0..1 Organization where the role is available
  fhir:network  ( [ Reference(Organization) ] ... ) ; # 0..* The network in which the PractitionerRole provides the role's services (if defined) at the indicated locations (if defined)
  fhir:code  ( [ CodeableConcept ] ... ) ; # 0..* Roles which this practitioner may perform
  fhir:display [ string ] ; # 0..1 Denormalized practitioner name, role, organization and location
  fhir:specialty  ( [ CodeableConcept ] ... ) ; # 0..* Specific specialty of the practitioner
  fhir:location  ( [ Reference(Location) ] ... ) ; # 0..* Location(s) where the practitioner provides care
  fhir:healthcareService  ( [ Reference(HealthcareService) ] ... ) ; # 0..* Healthcare services provided for this role's Organization/Location(s)
  fhir:contact  ( [ ExtendedContactDetail ] ... ) ; # 0..* Official contact details relating to this PractitionerRole
  fhir:characteristic  ( [ CodeableConcept ] ... ) ; # 0..* Collection of characteristics (attributes)
  fhir:communication  ( [ CodeableConcept ] ... ) ; # 0..* A language the practitioner (in this role) can use in patient communication
  fhir:availability [ Availability ] ; # 0..1 Times the Practitioner is available at this location and/or healthcare service (including exceptions)
  fhir:endpoint  ( [ Reference(Endpoint) ] ... ) ; # 0..* Endpoints for interacting with the practitioner in this role

]

Changes since DSTU2 from both R4 and R4B

PractitionerRole
PractitionerRole.network
  • Added Element
PractitionerRole.display
  • Added Element
PractitionerRole.contact
  • Added Element
PractitionerRole.characteristic
  • Added Element
PractitionerRole.communication
  • Added Element
PractitionerRole.availability
  • Added Element
PractitionerRole.telecom
  • Deleted (-> PractitionerRole.contact.telecom)
PractitionerRole.availableTime
  • Deleted (-> PractitionerRole.availability.availableTime)
PractitionerRole.notAvailable
  • Deleted (-> PractitionerRole.availability.notAvailableTime)
PractitionerRole.availabilityExceptions
  • Deleted (-> PractitionerRole.availability.notAvailableTime.description)

This resource did not exist in Release 2 See the Full Difference for further information

This analysis is available for R4 as XML or JSON and for R4B as XML or JSON .

 

Alternate Additional definitions: Master Definition ( XML , + JSON ), , XML Schema / Schematron (for ) + JSON Schema , ShEx (for Turtle ) + see the extensions , the spreadsheet version & the dependency analysis

PractitionerRole.availableTime.daysOfWeek
Path Definition ValueSet Type Reference Documentation
PractitionerRole.code The role a person plays representing an organization PractitionerRole Example PractitionerRole

This example value set defines a set of codes that can be used to indicate the role of a Practitioner.

PractitionerRole.specialty Specific specialty associated with the agency PracticeSettingCodeValueSet Preferred Example Practice Setting Code

This is the code representing the clinical specialty of the clinician or provider who interacted with, treated, or provided a service to/for the patient. The value set used for clinical specialty has been limited by HITSP to the value set reproduced from HITSP C80 Table 2-149 Clinical Specialty Value Set Definition.

PractitionerRole.characteristic ServiceMode Example The days

An example set of the week. Service Modes that could be applicable to use to characterize HealthcareServices or PractitionerRoles while searching

PractitionerRole.communication AllLanguages (a valid code from urn:ietf:bcp:47 ) Required

This value set includes all possible codes from BCP-47 (see http://tools.ietf.org/html/bcp47)

  DaysOfWeek Common Languages starter

  • There is no address on the PractitionerRole as the location that is defined here contains the address.
    This prevents having to duplicate the address values across multiple resources.
  • As briefly noted in the boundaries and relationships section the PractitionerRole resource can be used to represent multiple locations in the one resource instance, however this should be done with care. When representing multiple locations in an instance, and/or multiple specialties, all details apply to all locations. Using that approach you cannot differentiate a different contact number, different availabilities, or different services at each location.
    Hence maintaining these records needs to ensure that when changing a value, such as availability, it applies to all locations. If different values are required for the different locations, then a new instance will need to be created, and then split as appropriate. Existing resources referencing the original PractitionerRole instance will need to be updated to refer to the appropriate record.
    For this reason we expect that it will be common to profile the location element down to a single location, simplifying overall usage, and the availabilities are clear that they apply to this location, and any referenced healthcare services.

Search parameters for this resource. See also the full list of search parameters for this resource , and check the Extensions registry for search parameters on extensions related to this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

Name Type Description Expression In Common
active token Whether this practitioner's practitioner role record is in active use PractitionerRole.active
characteristic token One of the PractitionerRole's characteristics PractitionerRole.characteristic
communication token One of the languages that the practitioner can communicate with PractitionerRole.communication
date date The period during which the practitioner is authorized to perform in these role(s) PractitionerRole.period
email token A value in an email contact PractitionerRole.telecom.where(system='email') PractitionerRole.contact.telecom.where(system='email') 4 5 Resources
endpoint reference Technical endpoints providing access to services operated for the practitioner with this role PractitionerRole.endpoint
( Endpoint )
identifier token A practitioner's Identifier PractitionerRole.identifier
location reference One of the locations at which this practitioner provides care PractitionerRole.location
( Location )
network reference Health insurance provider network in which the PractitionerRole provides the role's services (if defined) at the indicated locations (if defined) PractitionerRole.network
( Organization )
organization reference The identity of the organization the practitioner represents / acts on behalf of PractitionerRole.organization
( Organization )
phone token A value in a phone contact PractitionerRole.telecom.where(system='phone') PractitionerRole.contact.telecom.where(system='phone') 4 5 Resources
practitioner reference Practitioner that is able to provide the defined services for the organation organization PractitionerRole.practitioner
( Practitioner )
role token The practitioner can perform this role at for the organization PractitionerRole.code
service reference The list of healthcare services that this worker provides for this role's Organization/Location(s) PractitionerRole.healthcareService
( HealthcareService )
specialty token The practitioner has this specialty at an organization PractitionerRole.specialty
telecom token The value in any kind of contact PractitionerRole.telecom PractitionerRole.contact.telecom 4 5 Resources