openIMIS FHIR R4 Implementation Guide
1.0.0 - ci-build
openIMIS FHIR R4 Implementation Guide - Local Development build (v1.0.0). See the Directory of published versions
Official URL: https://openimis.github.io/openimis_fhir_r4_ig/StructureDefinition/openimis-enrolment-officer-practitioner-role | Version: 1.0.0 | |||
Active as of 2022-05-31 | Responsible: openIMIS Initiative | Computable Name: OpenIMISEnrolmentOfficerPractitionerRole |
Defines a Enrolment Officer Practitioner Role for openIMIS.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
Other representations of profile: CSV, Excel, Schematron
Path | Conformance | ValueSet / Code |
PractitionerRole.language | preferred | CommonLanguages Max Binding: AllLanguages |
PractitionerRole.identifier.use | required | IdentifierUse |
PractitionerRole.identifier.type | extensible | Identifier Type Codes |
PractitionerRole.identifier.type.coding.code | required | OpenIMISIdentifierVS |
PractitionerRole.identifier:Code.use | required | IdentifierUse |
PractitionerRole.identifier:Code.type | extensible | Identifier Type Codes |
PractitionerRole.identifier:UUID.use | required | IdentifierUse |
PractitionerRole.identifier:UUID.type | extensible | Identifier Type Codes |
PractitionerRole.code | example | Pattern: EO("Enrolment Officer") |
PractitionerRole.telecom.system | required | ContactPointSystem |
PractitionerRole.telecom.use | required | ContactPointUse |
PractitionerRole.telecom:email.system | required | Pattern: email |
PractitionerRole.telecom:email.use | required | ContactPointUse |
PractitionerRole.telecom:phone.system | required | Pattern: phone |
PractitionerRole.telecom:phone.use | required | ContactPointUse |
PractitionerRole.availableTime.daysOfWeek | required | DaysOfWeek |
Id | Grade | Path | 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 | PractitionerRole.meta | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.implicitRules | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.language | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.extension:substitution | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.extension:substitution | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.identifier | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.identifier.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.identifier.use | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier.type | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier.type.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.identifier.type.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.identifier.type.coding | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier.type.coding.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.identifier.type.coding.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.identifier.type.coding.system | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier.type.coding.version | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier.type.coding.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier.type.coding.display | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier.type.coding.userSelected | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier.type.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier.system | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier.value | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier.period | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier.assigner | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:Code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:Code.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.identifier:Code.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.identifier:Code.use | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:Code.type | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:Code.type.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.identifier:Code.type.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.identifier:Code.type.coding | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:Code.type.coding.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.identifier:Code.type.coding.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.identifier:Code.type.coding.system | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:Code.type.coding.version | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:Code.type.coding.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:Code.type.coding.display | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:Code.type.coding.userSelected | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:Code.type.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:Code.system | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:Code.value | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:Code.period | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:Code.assigner | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:UUID | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:UUID.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.identifier:UUID.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.identifier:UUID.use | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:UUID.type | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:UUID.type.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.identifier:UUID.type.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.identifier:UUID.type.coding | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:UUID.type.coding.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.identifier:UUID.type.coding.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.identifier:UUID.type.coding.system | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:UUID.type.coding.version | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:UUID.type.coding.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:UUID.type.coding.display | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:UUID.type.coding.userSelected | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:UUID.type.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:UUID.system | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:UUID.value | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:UUID.period | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.identifier:UUID.assigner | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.period | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.period.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.period.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.period.end | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.practitioner | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.location | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.telecom.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.telecom.system | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom.value | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom.use | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom.rank | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom.period | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom:email | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom:email.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.telecom:email.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.telecom:email.system | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom:email.value | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom:email.use | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom:email.rank | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom:email.period | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom:phone | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom:phone.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.telecom:phone.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.telecom:phone.system | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom:phone.value | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom:phone.use | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom:phone.rank | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.telecom:phone.period | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.availableTime.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.availableTime.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.availableTime.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.availableTime.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.availableTime.daysOfWeek | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.availableTime.allDay | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.availableTime.availableStartTime | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.availableTime.availableEndTime | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.notAvailable.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.notAvailable.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.notAvailable.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | error | PractitionerRole.notAvailable.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | error | PractitionerRole.notAvailable.description | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | error | PractitionerRole.notAvailable.during | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |