Danish MedCom Core
2.3.0 - Release
This page is part of the DK MedCom Core (v2.3.0: Release) based on FHIR R4. The current version which supercedes this version is 2.1.0. For a full list of available versions, see the Directory of published versions
Official URL: http://medcomfhir.dk/ig/core/StructureDefinition/medcom-core-practitionerrole | Version: 2.3.0 | |||
Active as of 2023-10-31 | Computable Name: MedComCorePractitionerRole |
PractitionerRole resource used to describe the role of a healthcare professional or another actor involved in citizen or patient care.
This profile describes the MedComCorePractitionerRole which is used to describe a practitioner’s role in a MedCom standard. If a practitioner is referenced from MedComCorePractitionerRole it shall be a MedComCorePractitioner.
Just as it is in the original FHIR ressource, the MedComCorePractitionerRole is broadly defined and describes services a practitioner is able to provide for the organization.
Please refer to the tab “Snapshot Table(Must support)” below for the definition of the required content of a MedComCorePractitionerRole.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from PractitionerRole
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
PractitionerRole | 0..* | PractitionerRole | Roles/organizations the practitioner is associated with | |
practitioner | S | 0..1 | Reference(MedComCorePractitioner) | Practitioner that is able to provide the defined services for the organization |
organization | S | 0..1 | Reference(MedComCoreOrganization) {b} | Organization where the roles are available |
code | S | 0..* | CodeableConcept | Roles which this practitioner may perform Binding: MedComCorePractitionerRoles (example) |
Documentation for this format |
Path | Conformance | ValueSet |
PractitionerRole.code | example | MedComCorePractitionerRoles |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
PractitionerRole | 0..* | PractitionerRole | Roles/organizations the practitioner is associated with | |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
practitioner | SΣ | 0..1 | Reference(MedComCorePractitioner) | Practitioner that is able to provide the defined services for the organization |
organization | SΣ | 0..1 | Reference(MedComCoreOrganization) {b} | Organization where the roles are available |
code | SΣ | 0..* | CodeableConcept | Roles which this practitioner may perform Binding: MedComCorePractitionerRoles (example) |
Documentation for this format |
Path | Conformance | ValueSet |
PractitionerRole.code | example | MedComCorePractitionerRoles |
Id | Grade | Path(s) | Details | Requirements |
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() |
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
PractitionerRole | 0..* | PractitionerRole | Roles/organizations the practitioner is associated with | |||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | Σ | 0..* | Identifier | Business Identifiers that are specific to a role/location | ||||
active | Σ | 0..1 | boolean | 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) | ||||
practitioner | SΣ | 0..1 | Reference(MedComCorePractitioner) | Practitioner that is able to provide the defined services for the organization | ||||
organization | SΣ | 0..1 | Reference(MedComCoreOrganization) {b} | Organization where the roles are available | ||||
code | SΣ | 0..* | CodeableConcept | Roles which this practitioner may perform Binding: MedComCorePractitionerRoles (example) | ||||
specialty | Σ | 0..* | CodeableConcept | Specific specialty of the practitioner Binding: PracticeSettingCodeValueSet (preferred): Specific specialty associated with the agency. | ||||
location | Σ | 0..* | Reference(Location) | The location(s) at which this practitioner provides care | ||||
healthcareService | 0..* | Reference(HealthcareService) | The list of healthcare services that this worker provides for this role's Organization/Location(s) | |||||
telecom | Σ | 0..* | ContactPoint | Contact details that are specific to the role/location/service | ||||
availableTime | 0..* | BackboneElement | Times the Service Site is available | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
daysOfWeek | 0..* | code | mon | tue | wed | thu | fri | sat | sun Binding: DaysOfWeek (required): The days of the week. | |||||
allDay | 0..1 | boolean | Always available? e.g. 24 hour service | |||||
availableStartTime | 0..1 | time | Opening time of day (ignored if allDay = true) | |||||
availableEndTime | 0..1 | time | Closing time of day (ignored if allDay = true) | |||||
notAvailable | 0..* | BackboneElement | Not available during this time due to provided reason | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
description | 1..1 | string | Reason presented to the user explaining why time not available | |||||
during | 0..1 | Period | Service not available from this date | |||||
availabilityExceptions | 0..1 | string | Description of availability exceptions | |||||
endpoint | 0..* | Reference(Endpoint) | Technical endpoints providing access to services operated for the practitioner with this role | |||||
Documentation for this format |
Path | Conformance | ValueSet | ||||
PractitionerRole.language | preferred | CommonLanguages
| ||||
PractitionerRole.code | example | MedComCorePractitionerRoles | ||||
PractitionerRole.specialty | preferred | PracticeSettingCodeValueSet | ||||
PractitionerRole.availableTime.daysOfWeek | required | DaysOfWeek |
Id | Grade | Path(s) | Details | Requirements |
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
Differential View
This structure is derived from PractitionerRole
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
PractitionerRole | 0..* | PractitionerRole | Roles/organizations the practitioner is associated with | |
practitioner | S | 0..1 | Reference(MedComCorePractitioner) | Practitioner that is able to provide the defined services for the organization |
organization | S | 0..1 | Reference(MedComCoreOrganization) {b} | Organization where the roles are available |
code | S | 0..* | CodeableConcept | Roles which this practitioner may perform Binding: MedComCorePractitionerRoles (example) |
Documentation for this format |
Path | Conformance | ValueSet |
PractitionerRole.code | example | MedComCorePractitionerRoles |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
PractitionerRole | 0..* | PractitionerRole | Roles/organizations the practitioner is associated with | |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored |
practitioner | SΣ | 0..1 | Reference(MedComCorePractitioner) | Practitioner that is able to provide the defined services for the organization |
organization | SΣ | 0..1 | Reference(MedComCoreOrganization) {b} | Organization where the roles are available |
code | SΣ | 0..* | CodeableConcept | Roles which this practitioner may perform Binding: MedComCorePractitionerRoles (example) |
Documentation for this format |
Path | Conformance | ValueSet |
PractitionerRole.code | example | MedComCorePractitionerRoles |
Id | Grade | Path(s) | Details | Requirements |
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() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
PractitionerRole | 0..* | PractitionerRole | Roles/organizations the practitioner is associated with | |||||
id | Σ | 0..1 | id | Logical id of this artifact | ||||
meta | Σ | 0..1 | Meta | Metadata about the resource | ||||
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
language | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored | ||||
identifier | Σ | 0..* | Identifier | Business Identifiers that are specific to a role/location | ||||
active | Σ | 0..1 | boolean | 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) | ||||
practitioner | SΣ | 0..1 | Reference(MedComCorePractitioner) | Practitioner that is able to provide the defined services for the organization | ||||
organization | SΣ | 0..1 | Reference(MedComCoreOrganization) {b} | Organization where the roles are available | ||||
code | SΣ | 0..* | CodeableConcept | Roles which this practitioner may perform Binding: MedComCorePractitionerRoles (example) | ||||
specialty | Σ | 0..* | CodeableConcept | Specific specialty of the practitioner Binding: PracticeSettingCodeValueSet (preferred): Specific specialty associated with the agency. | ||||
location | Σ | 0..* | Reference(Location) | The location(s) at which this practitioner provides care | ||||
healthcareService | 0..* | Reference(HealthcareService) | The list of healthcare services that this worker provides for this role's Organization/Location(s) | |||||
telecom | Σ | 0..* | ContactPoint | Contact details that are specific to the role/location/service | ||||
availableTime | 0..* | BackboneElement | Times the Service Site is available | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
daysOfWeek | 0..* | code | mon | tue | wed | thu | fri | sat | sun Binding: DaysOfWeek (required): The days of the week. | |||||
allDay | 0..1 | boolean | Always available? e.g. 24 hour service | |||||
availableStartTime | 0..1 | time | Opening time of day (ignored if allDay = true) | |||||
availableEndTime | 0..1 | time | Closing time of day (ignored if allDay = true) | |||||
notAvailable | 0..* | BackboneElement | Not available during this time due to provided reason | |||||
id | 0..1 | string | Unique id for inter-element referencing | |||||
extension | 0..* | Extension | Additional content defined by implementations | |||||
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
description | 1..1 | string | Reason presented to the user explaining why time not available | |||||
during | 0..1 | Period | Service not available from this date | |||||
availabilityExceptions | 0..1 | string | Description of availability exceptions | |||||
endpoint | 0..* | Reference(Endpoint) | Technical endpoints providing access to services operated for the practitioner with this role | |||||
Documentation for this format |
Path | Conformance | ValueSet | ||||
PractitionerRole.language | preferred | CommonLanguages
| ||||
PractitionerRole.code | example | MedComCorePractitionerRoles | ||||
PractitionerRole.specialty | preferred | PracticeSettingCodeValueSet | ||||
PractitionerRole.availableTime.daysOfWeek | required | DaysOfWeek |
Id | Grade | Path(s) | Details | Requirements |
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