Draft PH Core Implementation Guide
0.1.0 - ci-build
Philippines
Draft PH Core Implementation Guide, published by UP Manila National TeleHealth Center. This guide is not an authorized publication; it is the continuous build for version 0.1.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/UP-Manila-SILab/ph-core/ and changes regularly. See the Directory of published versions
| Official URL: http://doh.gov.ph/fhir/ph-core/StructureDefinition/ph-core-practitionerrole | Version: 0.1.0 | |||
| Draft as of 2026-03-25 | Computable Name: PHCorePractitionerRole | |||
The PH Core Practitioner Role Profile inherits from the FHIR R4 PractitionerRole resource; refer to it for scope and usage definitions. This profile sets minimum expectations for the PractitionerRole resource to record, search, and fetch basic demographics and administrative information about an individual practitioner role in a Philippine context. It specifies which core elements, extensions, vocabularies, and value sets SHALL be present and constrains how the elements are used. It provides the floor for standards development for Philippine use cases.
Usages:
You can also check for usages in the FHIR IG Statistics
Description of Profiles, Differentials, Snapshots and how the different presentations work.
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | PractitionerRole | Roles/organizations the practitioner is associated with | |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
SΣ | 0..* | Identifier | Business Identifiers that are specific to a role/location |
![]() ![]() |
SΣ | 0..1 | Reference(PH Core Practitioner) | Practitioner that is able to provide the defined services for the organization |
![]() ![]() |
SΣ | 0..1 | Reference(PH Core Organization) | Organization where the roles are available |
![]() ![]() |
SΣ | 0..* | CodeableConcept | Roles which this practitioner may perform Binding: PractitionerRole (example): The role a person plays representing an organization. |
![]() ![]() ![]() |
SΣ | 0..* | Coding | Code defined by a terminology system |
![]() ![]() ![]() ![]() |
SΣ | 0..1 | code | Symbol in syntax defined by the system |
![]() ![]() |
SΣ | 0..* | CodeableConcept | Specific specialty of the practitioner Binding: PracticeSettingCodeValueSet (preferred): Specific specialty associated with the agency. |
![]() ![]() |
Σ | 0..* | Reference(PH Core Location) | The location(s) at which this practitioner provides care |
![]() ![]() |
SΣ | 0..* | ContactPoint | Contact details that are specific to the role/location/service |
![]() ![]() ![]() |
SΣC | 0..1 | code | phone | fax | email | pager | url | sms | other Binding: ContactPointSystem (required): Telecommunications form for contact point. |
![]() ![]() ![]() |
SΣ | 0..1 | string | The actual contact point details |
![]() ![]() ![]() |
?!Σ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required): Use of contact point. |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| PractitionerRole.code | Base | example | Practitioner role | 📍4.0.1 | FHIR Std. |
| PractitionerRole.specialty | Base | preferred | Practice Setting Code Value Set | 📍4.0.1 | FHIR Std. |
| PractitionerRole.telecom.system | Base | required | ContactPointSystem | 📍4.0.1 | FHIR Std. |
| PractitionerRole.telecom.use | Base | required | ContactPointUse | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | PractitionerRole | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | PractitionerRole | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | PractitionerRole | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | PractitionerRole | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | PractitionerRole | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
This structure is derived from PractitionerRole
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | PractitionerRole | Roles/organizations the practitioner is associated with | |
![]() ![]() |
S | 0..* | Identifier | Business Identifiers that are specific to a role/location |
![]() ![]() |
S | 0..1 | Reference(PH Core Practitioner) | Practitioner that is able to provide the defined services for the organization |
![]() ![]() |
S | 0..1 | Reference(PH Core Organization) | Organization where the roles are available |
![]() ![]() |
S | 0..* | CodeableConcept | Roles which this practitioner may perform |
![]() ![]() ![]() |
S | 0..* | Coding | Code defined by a terminology system |
![]() ![]() ![]() ![]() |
S | 0..1 | code | Symbol in syntax defined by the system |
![]() ![]() |
S | 0..* | CodeableConcept | Specific specialty of the practitioner |
![]() ![]() |
0..* | Reference(PH Core Location) | The location(s) at which this practitioner provides care | |
![]() ![]() |
S | 0..* | ContactPoint | Contact details that are specific to the role/location/service |
![]() ![]() ![]() |
S | 0..1 | code | phone | fax | email | pager | url | sms | other |
![]() ![]() ![]() |
S | 0..1 | string | The actual contact point details |
Documentation for this format | ||||
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
0..* | PractitionerRole | Roles/organizations the practitioner is associated with | |||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
SΣ | 0..* | Identifier | Business Identifiers that are specific to a role/location | ||||
![]() ![]() |
Σ | 0..1 | boolean | Whether this practitioner role record is in active use | ||||
![]() ![]() |
Σ | 0..1 | Period | The period during which the practitioner is authorized to perform in these role(s) | ||||
![]() ![]() |
SΣ | 0..1 | Reference(PH Core Practitioner) | Practitioner that is able to provide the defined services for the organization | ||||
![]() ![]() |
SΣ | 0..1 | Reference(PH Core Organization) | Organization where the roles are available | ||||
![]() ![]() |
SΣ | 0..* | CodeableConcept | Roles which this practitioner may perform Binding: PractitionerRole (example): The role a person plays representing an organization. | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
SΣ | 0..* | Coding | Code defined by a terminology system | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | uri | Identity of the terminology system | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Plain text representation of the concept | ||||
![]() ![]() |
SΣ | 0..* | CodeableConcept | Specific specialty of the practitioner Binding: PracticeSettingCodeValueSet (preferred): Specific specialty associated with the agency. | ||||
![]() ![]() |
Σ | 0..* | Reference(PH Core Location) | The location(s) at which this practitioner provides care | ||||
![]() ![]() |
0..* | Reference(HealthcareService) | The list of healthcare services that this worker provides for this role's Organization/Location(s) | |||||
![]() ![]() |
SΣ | 0..* | ContactPoint | Contact details that are specific to the role/location/service | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
SΣC | 0..1 | code | phone | fax | email | pager | url | sms | other Binding: ContactPointSystem (required): Telecommunications form for contact point. | ||||
![]() ![]() ![]() |
SΣ | 0..1 | string | The actual contact point details | ||||
![]() ![]() ![]() |
?!Σ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required): Use of contact point. | ||||
![]() ![]() ![]() |
Σ | 0..1 | positiveInt | Specify preferred order of use (1 = highest) | ||||
![]() ![]() ![]() |
Σ | 0..1 | Period | Time period when the contact point was/is in use | ||||
![]() ![]() |
0..* | BackboneElement | Times the Service Site is available | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
0..* | code | mon | tue | wed | thu | fri | sat | sun Binding: DaysOfWeek (required): The days of the week. | |||||
![]() ![]() ![]() |
0..1 | boolean | Always available? e.g. 24 hour service | |||||
![]() ![]() ![]() |
0..1 | time | Opening time of day (ignored if allDay = true) | |||||
![]() ![]() ![]() |
0..1 | time | Closing time of day (ignored if allDay = true) | |||||
![]() ![]() |
0..* | BackboneElement | Not available during this time due to provided reason | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
1..1 | string | Reason presented to the user explaining why time not available | |||||
![]() ![]() ![]() |
0..1 | Period | Service not available from this date | |||||
![]() ![]() |
0..1 | string | Description of availability exceptions | |||||
![]() ![]() |
0..* | Reference(Endpoint) | Technical endpoints providing access to services operated for the practitioner with this role | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| PractitionerRole.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| PractitionerRole.code | Base | example | Practitioner role | 📍4.0.1 | FHIR Std. |
| PractitionerRole.specialty | Base | preferred | Practice Setting Code Value Set | 📍4.0.1 | FHIR Std. |
| PractitionerRole.telecom.system | Base | required | ContactPointSystem | 📍4.0.1 | FHIR Std. |
| PractitionerRole.telecom.use | Base | required | ContactPointUse | 📍4.0.1 | FHIR Std. |
| PractitionerRole.availableTime.daysOfWeek | Base | required | DaysOfWeek | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | PractitionerRole | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | PractitionerRole | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | PractitionerRole | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | PractitionerRole | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | PractitionerRole | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
This structure is derived from PractitionerRole
Key Elements View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | PractitionerRole | Roles/organizations the practitioner is associated with | |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
SΣ | 0..* | Identifier | Business Identifiers that are specific to a role/location |
![]() ![]() |
SΣ | 0..1 | Reference(PH Core Practitioner) | Practitioner that is able to provide the defined services for the organization |
![]() ![]() |
SΣ | 0..1 | Reference(PH Core Organization) | Organization where the roles are available |
![]() ![]() |
SΣ | 0..* | CodeableConcept | Roles which this practitioner may perform Binding: PractitionerRole (example): The role a person plays representing an organization. |
![]() ![]() ![]() |
SΣ | 0..* | Coding | Code defined by a terminology system |
![]() ![]() ![]() ![]() |
SΣ | 0..1 | code | Symbol in syntax defined by the system |
![]() ![]() |
SΣ | 0..* | CodeableConcept | Specific specialty of the practitioner Binding: PracticeSettingCodeValueSet (preferred): Specific specialty associated with the agency. |
![]() ![]() |
Σ | 0..* | Reference(PH Core Location) | The location(s) at which this practitioner provides care |
![]() ![]() |
SΣ | 0..* | ContactPoint | Contact details that are specific to the role/location/service |
![]() ![]() ![]() |
SΣC | 0..1 | code | phone | fax | email | pager | url | sms | other Binding: ContactPointSystem (required): Telecommunications form for contact point. |
![]() ![]() ![]() |
SΣ | 0..1 | string | The actual contact point details |
![]() ![]() ![]() |
?!Σ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required): Use of contact point. |
Documentation for this format | ||||
| Path | Status | Usage | ValueSet | Version | Source |
| PractitionerRole.code | Base | example | Practitioner role | 📍4.0.1 | FHIR Std. |
| PractitionerRole.specialty | Base | preferred | Practice Setting Code Value Set | 📍4.0.1 | FHIR Std. |
| PractitionerRole.telecom.system | Base | required | ContactPointSystem | 📍4.0.1 | FHIR Std. |
| PractitionerRole.telecom.use | Base | required | ContactPointUse | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | PractitionerRole | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | PractitionerRole | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | PractitionerRole | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | PractitionerRole | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | PractitionerRole | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
Differential View
This structure is derived from PractitionerRole
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
0..* | PractitionerRole | Roles/organizations the practitioner is associated with | |
![]() ![]() |
S | 0..* | Identifier | Business Identifiers that are specific to a role/location |
![]() ![]() |
S | 0..1 | Reference(PH Core Practitioner) | Practitioner that is able to provide the defined services for the organization |
![]() ![]() |
S | 0..1 | Reference(PH Core Organization) | Organization where the roles are available |
![]() ![]() |
S | 0..* | CodeableConcept | Roles which this practitioner may perform |
![]() ![]() ![]() |
S | 0..* | Coding | Code defined by a terminology system |
![]() ![]() ![]() ![]() |
S | 0..1 | code | Symbol in syntax defined by the system |
![]() ![]() |
S | 0..* | CodeableConcept | Specific specialty of the practitioner |
![]() ![]() |
0..* | Reference(PH Core Location) | The location(s) at which this practitioner provides care | |
![]() ![]() |
S | 0..* | ContactPoint | Contact details that are specific to the role/location/service |
![]() ![]() ![]() |
S | 0..1 | code | phone | fax | email | pager | url | sms | other |
![]() ![]() ![]() |
S | 0..1 | string | The actual contact point details |
Documentation for this format | ||||
Snapshot View
| Name | Flags | Card. | Type | Description & Constraints Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
0..* | PractitionerRole | Roles/organizations the practitioner is associated with | |||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
Σ | 0..1 | Meta | Metadata about the resource | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
![]() ![]() |
0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
?! | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
SΣ | 0..* | Identifier | Business Identifiers that are specific to a role/location | ||||
![]() ![]() |
Σ | 0..1 | boolean | Whether this practitioner role record is in active use | ||||
![]() ![]() |
Σ | 0..1 | Period | The period during which the practitioner is authorized to perform in these role(s) | ||||
![]() ![]() |
SΣ | 0..1 | Reference(PH Core Practitioner) | Practitioner that is able to provide the defined services for the organization | ||||
![]() ![]() |
SΣ | 0..1 | Reference(PH Core Organization) | Organization where the roles are available | ||||
![]() ![]() |
SΣ | 0..* | CodeableConcept | Roles which this practitioner may perform Binding: PractitionerRole (example): The role a person plays representing an organization. | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
SΣ | 0..* | Coding | Code defined by a terminology system | ||||
![]() ![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | uri | Identity of the terminology system | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() |
Σ | 0..1 | string | Plain text representation of the concept | ||||
![]() ![]() |
SΣ | 0..* | CodeableConcept | Specific specialty of the practitioner Binding: PracticeSettingCodeValueSet (preferred): Specific specialty associated with the agency. | ||||
![]() ![]() |
Σ | 0..* | Reference(PH Core Location) | The location(s) at which this practitioner provides care | ||||
![]() ![]() |
0..* | Reference(HealthcareService) | The list of healthcare services that this worker provides for this role's Organization/Location(s) | |||||
![]() ![]() |
SΣ | 0..* | ContactPoint | Contact details that are specific to the role/location/service | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |||||
![]() ![]() ![]() |
SΣC | 0..1 | code | phone | fax | email | pager | url | sms | other Binding: ContactPointSystem (required): Telecommunications form for contact point. | ||||
![]() ![]() ![]() |
SΣ | 0..1 | string | The actual contact point details | ||||
![]() ![]() ![]() |
?!Σ | 0..1 | code | home | work | temp | old | mobile - purpose of this contact point Binding: ContactPointUse (required): Use of contact point. | ||||
![]() ![]() ![]() |
Σ | 0..1 | positiveInt | Specify preferred order of use (1 = highest) | ||||
![]() ![]() ![]() |
Σ | 0..1 | Period | Time period when the contact point was/is in use | ||||
![]() ![]() |
0..* | BackboneElement | Times the Service Site is available | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
0..* | code | mon | tue | wed | thu | fri | sat | sun Binding: DaysOfWeek (required): The days of the week. | |||||
![]() ![]() ![]() |
0..1 | boolean | Always available? e.g. 24 hour service | |||||
![]() ![]() ![]() |
0..1 | time | Opening time of day (ignored if allDay = true) | |||||
![]() ![]() ![]() |
0..1 | time | Closing time of day (ignored if allDay = true) | |||||
![]() ![]() |
0..* | BackboneElement | Not available during this time due to provided reason | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
1..1 | string | Reason presented to the user explaining why time not available | |||||
![]() ![]() ![]() |
0..1 | Period | Service not available from this date | |||||
![]() ![]() |
0..1 | string | Description of availability exceptions | |||||
![]() ![]() |
0..* | Reference(Endpoint) | Technical endpoints providing access to services operated for the practitioner with this role | |||||
Documentation for this format | ||||||||
| Path | Status | Usage | ValueSet | Version | Source |
| PractitionerRole.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std. |
| PractitionerRole.code | Base | example | Practitioner role | 📍4.0.1 | FHIR Std. |
| PractitionerRole.specialty | Base | preferred | Practice Setting Code Value Set | 📍4.0.1 | FHIR Std. |
| PractitionerRole.telecom.system | Base | required | ContactPointSystem | 📍4.0.1 | FHIR Std. |
| PractitionerRole.telecom.use | Base | required | ContactPointUse | 📍4.0.1 | FHIR Std. |
| PractitionerRole.availableTime.daysOfWeek | Base | required | DaysOfWeek | 📍4.0.1 | FHIR Std. |
| Id | Grade | Path(s) | Description | Expression |
| dom-2 | error | PractitionerRole | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | PractitionerRole | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource |
contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
|
| dom-4 | error | PractitionerRole | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated |
contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
|
| dom-5 | error | PractitionerRole | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | PractitionerRole | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
This structure is derived from PractitionerRole
Other representations of profile: CSV, Excel, Schematron