This page is part of the Occupational Data for Health (ODH) FHIR IG (v1.0.0: STU 1) based on FHIR R4. The current version which supercedes this version is 1.2.0. For a full list of available versions, see the Directory of published versions
The official URL for this profile is:
http://hl7.org/fhir/us/odh/StructureDefinition/obf-PractitionerRole
PractitionerRole covers the recording of the location and types of services that Practitioners are able to provide for an organization.
This profile builds on PractitionerRole.
This profile was published on Sat Jan 04 00:00:00 UTC 2020 as a draft by HL7 International Public Health Work Group.
Summary
Structures
This structure refers to these other structures:
Extensions
This structure refers to these extensions:
Mapping Source
This structure represents the following mapping definition:
obf.PractitionerRole maps to PractitionerRole: Language maps to language ImplicitRules maps to implicitRules Metadata.VersionId maps to meta.versionId Metadata.SourceSystem maps to meta.source Metadata.Profile maps to meta.profile Metadata.LastUpdated maps to meta.lastUpdated Metadata.SecurityLabel maps to meta.security Metadata.Tag maps to meta.tag Narrative maps to text RoleSpecificIdentifier maps to identifier Active maps to active TimePeriod maps to period Practitioner maps to practitioner Organization maps to organization Code maps to code Specialty maps to specialty Location maps to location HealthcareService maps to healthcareService ContactPoint maps to telecom AvailableTime maps to availableTime NotAvailable maps to notAvailable AvailabilityExceptions maps to availabilityExceptions RoleSpecificEndpoint maps to endpoint
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
PractitionerRole | PractitionerRole | Practitioner Role | ||
extension | Slice: Unordered, Open by value:url | |||
obf-Status-extension | I | 0..1 | CodeableConcept | Status URL: http://hl7.org/fhir/us/odh/StructureDefinition/obf-Status-extension |
obf-datatype-Identifier-extension | I | 0..* | Identifier | Identifier URL: http://hl7.org/fhir/us/odh/StructureDefinition/obf-datatype-Identifier-extension |
code | Binding: PractitionerRole (preferred) | |||
healthcareService | Reference(Healthcare Service) | |||
endpoint | Reference(Endpoint) | |||
Documentation for this format |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
PractitionerRole | I | 0..* | PractitionerRole | Practitioner Role |
id | Σ | 0..1 | string | Logical id of this artifact |
meta | ΣI | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!ΣI | 0..1 | uri | A set of rules under which this content was created |
language | I | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) Max Binding: AllLanguages |
text | I | 0..1 | Narrative | Text summary of the resource, for human interpretation |
contained | 0..* | Resource | Contained, inline Resources | |
extension | I | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
obf-Status-extension | I | 0..1 | CodeableConcept | Status URL: http://hl7.org/fhir/us/odh/StructureDefinition/obf-Status-extension |
obf-datatype-Identifier-extension | I | 0..* | Identifier | Identifier URL: http://hl7.org/fhir/us/odh/StructureDefinition/obf-datatype-Identifier-extension |
modifierExtension | ?!I | 0..* | Extension | Extensions that cannot be ignored |
identifier | ΣI | 0..* | Identifier | Business Identifiers that are specific to a role/location |
active | ΣI | 0..1 | boolean | Whether this practitioner role record is in active use |
period | ΣI | 0..1 | Period | The period during which the practitioner is authorized to perform in these role(s) |
practitioner | ΣI | 0..1 | Reference(Practitioner) | Practitioner that is able to provide the defined services for the organization |
organization | ΣI | 0..1 | Reference(Organization) | Organization where the roles are available |
code | ΣI | 0..* | CodeableConcept | Roles which this practitioner may perform Binding: PractitionerRole (preferred) |
specialty | ΣI | 0..* | CodeableConcept | Specific specialty of the practitioner Binding: PracticeSettingCodeValueSet (preferred) |
location | ΣI | 0..* | Reference(Location) | The location(s) at which this practitioner provides care |
healthcareService | I | 0..* | Reference(Healthcare Service) | The list of healthcare services that this worker provides for this role's Organization/Location(s) |
telecom | ΣI | 0..* | ContactPoint | Contact details that are specific to the role/location/service |
availableTime | I | 0..* | BackboneElement | Times the Service Site is available |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!ΣI | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
daysOfWeek | I | 0..* | code | mon | tue | wed | thu | fri | sat | sun Binding: DaysOfWeek (required) |
allDay | I | 0..1 | boolean | Always available? e.g. 24 hour service |
availableStartTime | I | 0..1 | time | Opening time of day (ignored if allDay = true) |
availableEndTime | I | 0..1 | time | Closing time of day (ignored if allDay = true) |
notAvailable | I | 0..* | BackboneElement | Not available during this time due to provided reason |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!ΣI | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
description | I | 1..1 | string | Reason presented to the user explaining why time not available |
during | I | 0..1 | Period | Service not available from this date |
availabilityExceptions | I | 0..1 | string | Description of availability exceptions |
endpoint | I | 0..* | Reference(Endpoint) | Technical endpoints providing access to services operated for the practitioner with this role |
Documentation for this format |
Summary
Structures
This structure refers to these other structures:
Extensions
This structure refers to these extensions:
Mapping Source
This structure represents the following mapping definition:
obf.PractitionerRole maps to PractitionerRole: Language maps to language ImplicitRules maps to implicitRules Metadata.VersionId maps to meta.versionId Metadata.SourceSystem maps to meta.source Metadata.Profile maps to meta.profile Metadata.LastUpdated maps to meta.lastUpdated Metadata.SecurityLabel maps to meta.security Metadata.Tag maps to meta.tag Narrative maps to text RoleSpecificIdentifier maps to identifier Active maps to active TimePeriod maps to period Practitioner maps to practitioner Organization maps to organization Code maps to code Specialty maps to specialty Location maps to location HealthcareService maps to healthcareService ContactPoint maps to telecom AvailableTime maps to availableTime NotAvailable maps to notAvailable AvailabilityExceptions maps to availabilityExceptions RoleSpecificEndpoint maps to endpoint
Differential View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
PractitionerRole | PractitionerRole | Practitioner Role | ||
extension | Slice: Unordered, Open by value:url | |||
obf-Status-extension | I | 0..1 | CodeableConcept | Status URL: http://hl7.org/fhir/us/odh/StructureDefinition/obf-Status-extension |
obf-datatype-Identifier-extension | I | 0..* | Identifier | Identifier URL: http://hl7.org/fhir/us/odh/StructureDefinition/obf-datatype-Identifier-extension |
code | Binding: PractitionerRole (preferred) | |||
healthcareService | Reference(Healthcare Service) | |||
endpoint | Reference(Endpoint) | |||
Documentation for this format |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
PractitionerRole | I | 0..* | PractitionerRole | Practitioner Role |
id | Σ | 0..1 | string | Logical id of this artifact |
meta | ΣI | 0..1 | Meta | Metadata about the resource |
implicitRules | ?!ΣI | 0..1 | uri | A set of rules under which this content was created |
language | I | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) Max Binding: AllLanguages |
text | I | 0..1 | Narrative | Text summary of the resource, for human interpretation |
contained | 0..* | Resource | Contained, inline Resources | |
extension | I | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url |
obf-Status-extension | I | 0..1 | CodeableConcept | Status URL: http://hl7.org/fhir/us/odh/StructureDefinition/obf-Status-extension |
obf-datatype-Identifier-extension | I | 0..* | Identifier | Identifier URL: http://hl7.org/fhir/us/odh/StructureDefinition/obf-datatype-Identifier-extension |
modifierExtension | ?!I | 0..* | Extension | Extensions that cannot be ignored |
identifier | ΣI | 0..* | Identifier | Business Identifiers that are specific to a role/location |
active | ΣI | 0..1 | boolean | Whether this practitioner role record is in active use |
period | ΣI | 0..1 | Period | The period during which the practitioner is authorized to perform in these role(s) |
practitioner | ΣI | 0..1 | Reference(Practitioner) | Practitioner that is able to provide the defined services for the organization |
organization | ΣI | 0..1 | Reference(Organization) | Organization where the roles are available |
code | ΣI | 0..* | CodeableConcept | Roles which this practitioner may perform Binding: PractitionerRole (preferred) |
specialty | ΣI | 0..* | CodeableConcept | Specific specialty of the practitioner Binding: PracticeSettingCodeValueSet (preferred) |
location | ΣI | 0..* | Reference(Location) | The location(s) at which this practitioner provides care |
healthcareService | I | 0..* | Reference(Healthcare Service) | The list of healthcare services that this worker provides for this role's Organization/Location(s) |
telecom | ΣI | 0..* | ContactPoint | Contact details that are specific to the role/location/service |
availableTime | I | 0..* | BackboneElement | Times the Service Site is available |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!ΣI | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
daysOfWeek | I | 0..* | code | mon | tue | wed | thu | fri | sat | sun Binding: DaysOfWeek (required) |
allDay | I | 0..1 | boolean | Always available? e.g. 24 hour service |
availableStartTime | I | 0..1 | time | Opening time of day (ignored if allDay = true) |
availableEndTime | I | 0..1 | time | Closing time of day (ignored if allDay = true) |
notAvailable | I | 0..* | BackboneElement | Not available during this time due to provided reason |
id | 0..1 | string | Unique id for inter-element referencing | |
extension | I | 0..* | Extension | Additional content defined by implementations |
modifierExtension | ?!ΣI | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
description | I | 1..1 | string | Reason presented to the user explaining why time not available |
during | I | 0..1 | Period | Service not available from this date |
availabilityExceptions | I | 0..1 | string | Description of availability exceptions |
endpoint | I | 0..* | Reference(Endpoint) | Technical endpoints providing access to services operated for the practitioner with this role |
Documentation for this format |
Downloads: StructureDefinition: (XML, JSON, TTL), Schema: XML Schematron
Path | Conformance | ValueSet |
PractitionerRole.language | preferred | CommonLanguages Max Binding: AllLanguages |
PractitionerRole.code | preferred | PractitionerRole |
PractitionerRole.specialty | preferred | PracticeSettingCodeValueSet |
PractitionerRole.availableTime.daysOfWeek | required | DaysOfWeek |
Id | Path | Details | Requirements |
dom-2 | PractitionerRole | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | 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 | 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 | PractitionerRole | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | PractitionerRole | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | PractitionerRole.meta | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.implicitRules | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.language | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | PractitionerRole.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | PractitionerRole.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | PractitionerRole.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | PractitionerRole.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | PractitionerRole.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | PractitionerRole.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | PractitionerRole.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | PractitionerRole.identifier | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.active | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.period | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.practitioner | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.organization | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.specialty | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.location | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.healthcareService | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.telecom | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.availableTime | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.availableTime.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | PractitionerRole.availableTime.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | PractitionerRole.availableTime.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | PractitionerRole.availableTime.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | PractitionerRole.availableTime.daysOfWeek | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.availableTime.allDay | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.availableTime.availableStartTime | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.availableTime.availableEndTime | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.notAvailable | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.notAvailable.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | PractitionerRole.notAvailable.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | PractitionerRole.notAvailable.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | PractitionerRole.notAvailable.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | PractitionerRole.notAvailable.description | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.notAvailable.during | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.availabilityExceptions | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | PractitionerRole.endpoint | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |