SIL HIE Implementation Guide
0.1.0 - sil-hie-active

SIL HIE Implementation Guide, published by Kathurima Kimathi. 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/savannahghi/hie-fhir-ig-profile/ and changes regularly. See the Directory of published versions

Resource Profile: HIE ServiceRequest

Official URL: https://nshr.dha.go.ke/fhir/StructureDefinition/servicerequest Version: 0.1.0
Active as of 2026-10-20 Computable Name: HIEServiceRequest

R4B ServiceRequest constrained for HIE ordering and referral. Emphasizes status, intent, code, subject, reasons, timing, requester, performers, and context.

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

Description of Profiles, Differentials, Snapshots and how the different presentations work.

NameFlagsCard.TypeDescription & Constraints    Filter: doco
ServiceRequest C 0..* ServiceRequest A request for a service to be performed
Constraints: prr-1
ServiceRequest.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
ServiceRequest.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
ServiceRequest.identifier This element is included in summaries. 0..* Identifier Identifiers assigned to this order
ServiceRequest.identifier.use This element is a modifier element. This element is included in summaries. 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
ServiceRequest.identifier.type This element is included in summaries. C 1..1 HIECodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible)
Constraints: cc-text-or-code
ServiceRequest.identifier.system This element is included in summaries. 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
ServiceRequest.identifier.value This element must be supported. This element is included in summaries. 1..1 string The value that is unique
Example General: 123456
ServiceRequest.identifier.assigner This element must be supported. This element is included in summaries. 0..1 HIEReference(HIE Organization) Organization that issued id (may be just text)
ServiceRequest.replaces This element is included in summaries. 0..* HIEReference(HIE ServiceRequest) What request replaces
ServiceRequest.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code draft | active | on-hold | revoked | completed | entered-in-error | unknown
Binding: RequestStatus (required): The status of a service order.
ServiceRequest.intent This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option
Binding: RequestIntent (required): The kind of service request.
ServiceRequest.category This element must be supported. This element is included in summaries. C 1..1 HIECodeableConcept Classification of service
Binding: ServiceRequestCategoryCodes (example): Classification of the requested service.
Constraints: cc-text-or-code
ServiceRequest.priority This element must be supported. This element is included in summaries. 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required)
ServiceRequest.doNotPerform This element is a modifier element. This element is included in summaries. 0..1 boolean True if service/procedure should not be performed
ServiceRequest.code This element must be supported. This element is included in summaries. C 0..1 HIECodeableConcept What is being requested/ordered
Binding: ProcedureCodes(SNOMEDCT) (example): Codes for tests or services that can be carried out by a designated individual, organization or healthcare service. For laboratory, LOINC is preferred and a valueset using LOINC Order codes is available.
Constraints: cc-text-or-code
ServiceRequest.orderDetail This element must be supported. This element is included in summaries. C 0..* HIECodeableConcept Additional order information
Binding: ServiceRequestOrderDetailsCodes (example): Codified order entry details which are based on order context.
Constraints: cc-text-or-code
ServiceRequest.subject This element must be supported. This element is included in summaries. 1..1 HIEReference(HIE Patient) Individual or Entity the service is ordered for
ServiceRequest.encounter This element is included in summaries. 1..1 HIEReference(HIE Encounter) Encounter in which the request was created
ServiceRequest.occurrence[x] This element must be supported. This element is included in summaries. 0..1 When service should occur
ServiceRequest.occurrence[x].occurrenceDateTime dateTime
ServiceRequest.occurrence[x].occurrencePeriod Period
ServiceRequest.occurrence[x].occurrenceTiming Timing
ServiceRequest.authoredOn This element must be supported. This element is included in summaries. 1..1 dateTime Date request signed
ServiceRequest.requester This element must be supported. This element is included in summaries. 1..1 HIEReference(HIE Practitioner | HIE PractitionerRole | HIE Organization | HIE Patient | RelatedPerson | Device) Who/what is requesting service
ServiceRequest.performerType This element is included in summaries. C 0..1 HIECodeableConcept Performer role
Binding: Action Participant Role (example): Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc.
Constraints: cc-text-or-code
ServiceRequest.performer This element must be supported. This element is included in summaries. 1..* HIEReference(HIE Practitioner | HIE PractitionerRole | HIE Organization | CareTeam | HealthcareService | HIE Patient | Device | RelatedPerson) Requested performer
ServiceRequest.locationCode This element is included in summaries. C 0..* HIECodeableConcept Requested location
Binding: ServiceDeliveryLocationRoleType (example): A location type where services are delivered.
Constraints: cc-text-or-code
ServiceRequest.locationReference This element is included in summaries. 0..* HIEReference(Location) Requested location
ServiceRequest.reasonCode This element is included in summaries. C 0..* HIECodeableConcept Explanation/Justification for procedure or service
Binding: ProcedureReasonCodes (example): SNOMED CT Condition/Problem/Diagnosis Codes
Constraints: cc-text-or-code
ServiceRequest.reasonReference This element must be supported. This element is included in summaries. 0..* HIEReference(HIE Condition | HIE Observation | HIE DiagnosticReport | HIE DocumentReference) Explanation/Justification for service or service
ServiceRequest.supportingInfo 0..* HIEReference(Resource) Additional clinical information
ServiceRequest.specimen This element is included in summaries. 0..* HIEReference(Specimen) Procedure Samples
ServiceRequest.bodySite This element is included in summaries. C 0..* HIECodeableConcept Location on Body
Binding: SNOMEDCTBodyStructures (example): SNOMED CT Body site concepts
Constraints: cc-text-or-code
ServiceRequest.note 0..* HIEAnnotation Comments

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
ServiceRequest.identifier.​use Base required IdentifierUse 📦4.3.0 FHIR Std.
ServiceRequest.identifier.​type Base extensible IdentifierType 📦4.3.0 FHIR Std.
ServiceRequest.status Base required RequestStatus 📍4.3.0 FHIR Std.
ServiceRequest.intent Base required RequestIntent 📍4.3.0 FHIR Std.
ServiceRequest.category Base example Service Request Category Codes 📍4.3.0 FHIR Std.
ServiceRequest.priority Base required RequestPriority 📦4.3.0 FHIR Std.
ServiceRequest.code Base example Procedure Codes (SNOMED CT) 📍4.3.0 FHIR Std.
ServiceRequest.orderDetail Base example Service Request Order Details Codes 📍4.3.0 FHIR Std.
ServiceRequest.performerType Base example Action Participant Role 📦2.0.0 THO v7.4
ServiceRequest.locationCode Base example ServiceDeliveryLocationRoleType 📦3.0.0 THO v7.4
ServiceRequest.reasonCode Base example Procedure Reason Codes 📍4.3.0 FHIR Std.
ServiceRequest.bodySite Base example SNOMED CT Body Structures 📍4.3.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
cc-text-or-code warning ServiceRequest.identifier.type, ServiceRequest.category, ServiceRequest.code, ServiceRequest.orderDetail, ServiceRequest.performerType, ServiceRequest.locationCode, ServiceRequest.reasonCode, ServiceRequest.bodySite Text is optional, coding is required coding.exists()
dom-2 error ServiceRequest If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error ServiceRequest 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.exists() and ('#'+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(uri) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error ServiceRequest 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 ServiceRequest If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice ServiceRequest 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()
prr-1 error ServiceRequest orderDetail SHALL only be present if code is present orderDetail.empty() or code.exists()

This structure is derived from ServiceRequest

NameFlagsCard.TypeDescription & Constraints    Filter: doco
ServiceRequest 0..* ServiceRequest A request for a service to be performed
ServiceRequest.identifier
ServiceRequest.identifier.use 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
ServiceRequest.identifier.type 1..1 HIECodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible)
ServiceRequest.identifier.system 1..1 uri The namespace for the identifier value
ServiceRequest.identifier.value This element must be supported. 1..1 string The value that is unique
ServiceRequest.identifier.assigner This element must be supported. 0..1 HIEReference(HIE Organization) Organization that issued id (may be just text)
ServiceRequest.replaces 0..* HIEReference(HIE ServiceRequest) What request replaces
ServiceRequest.status This element must be supported. 1..1 code draft | active | on-hold | revoked | completed | entered-in-error | unknown
ServiceRequest.category This element must be supported. 1..1 HIECodeableConcept Classification of service
ServiceRequest.priority This element must be supported. 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required)
ServiceRequest.code This element must be supported. 0..1 HIECodeableConcept What is being requested/ordered
ServiceRequest.orderDetail This element must be supported. 0..* HIECodeableConcept Additional order information
ServiceRequest.subject This element must be supported. 1..1 HIEReference(HIE Patient) Individual or Entity the service is ordered for
ServiceRequest.encounter 1..1 HIEReference(HIE Encounter) Encounter in which the request was created
ServiceRequest.occurrence[x] This element must be supported. 0..1 dateTime, Period, Timing When service should occur
ServiceRequest.authoredOn This element must be supported. 1..1 dateTime Date request signed
ServiceRequest.requester This element must be supported. 1..1 HIEReference(HIE Practitioner | HIE PractitionerRole | HIE Organization | HIE Patient | RelatedPerson | Device) Who/what is requesting service
ServiceRequest.performerType 0..1 HIECodeableConcept Performer role
ServiceRequest.performer This element must be supported. 1..* HIEReference(HIE Practitioner | HIE PractitionerRole | HIE Organization | CareTeam | HealthcareService | HIE Patient | Device | RelatedPerson) Requested performer
ServiceRequest.locationCode 0..* HIECodeableConcept Requested location
ServiceRequest.locationReference 0..* HIEReference(Location) Requested location
ServiceRequest.reasonCode 0..* HIECodeableConcept Explanation/Justification for procedure or service
ServiceRequest.reasonReference This element must be supported. 0..* HIEReference(HIE Condition | HIE Observation | HIE DiagnosticReport | HIE DocumentReference) Explanation/Justification for service or service
ServiceRequest.supportingInfo 0..* HIEReference(Resource) Additional clinical information
ServiceRequest.specimen 0..* HIEReference(Specimen) Procedure Samples
ServiceRequest.bodySite 0..* HIECodeableConcept Location on Body
ServiceRequest.note 0..* HIEAnnotation Comments

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
ServiceRequest.identifier.​use Base required IdentifierUse 📦4.3.0 FHIR Std.
ServiceRequest.identifier.​type Base extensible IdentifierType 📦4.3.0 FHIR Std.
ServiceRequest.priority Base required RequestPriority 📦4.3.0 FHIR Std.
NameFlagsCard.TypeDescription & Constraints    Filter: doco
ServiceRequest C 0..* ServiceRequest A request for a service to be performed
Constraints: prr-1
ServiceRequest.id This element is included in summaries. 0..1 id Logical id of this artifact
ServiceRequest.meta This element is included in summaries. 0..1 Meta Metadata about the resource
ServiceRequest.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
ServiceRequest.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): IETF language tag
Additional BindingsPurpose
AllLanguages Max Binding
ServiceRequest.text 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
ServiceRequest.contained 0..* Resource Contained, inline Resources
Constraints: dom-r4b
ServiceRequest.extension 0..* Extension Additional content defined by implementations
ServiceRequest.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
ServiceRequest.identifier This element is included in summaries. 0..* Identifier Identifiers assigned to this order
ServiceRequest.identifier.id 0..1 id Unique id for inter-element referencing
ServiceRequest.identifier.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
ServiceRequest.identifier.use This element is a modifier element. This element is included in summaries. 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
ServiceRequest.identifier.type This element is included in summaries. C 1..1 HIECodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible)
Constraints: cc-text-or-code
ServiceRequest.identifier.system This element is included in summaries. 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
ServiceRequest.identifier.value This element must be supported. This element is included in summaries. 1..1 string The value that is unique
Example General: 123456
ServiceRequest.identifier.period This element is included in summaries. 0..1 Period Time period when id is/was valid for use
ServiceRequest.identifier.assigner This element must be supported. This element is included in summaries. 0..1 HIEReference(HIE Organization) Organization that issued id (may be just text)
ServiceRequest.instantiatesCanonical This element is included in summaries. 0..* canonical(ActivityDefinition | PlanDefinition) Instantiates FHIR protocol or definition
ServiceRequest.instantiatesUri This element is included in summaries. 0..* uri Instantiates external protocol or definition
ServiceRequest.basedOn This element is included in summaries. 0..* Reference(CarePlan | ServiceRequest | MedicationRequest) What request fulfills
ServiceRequest.replaces This element is included in summaries. 0..* HIEReference(HIE ServiceRequest) What request replaces
ServiceRequest.requisition This element is included in summaries. 0..1 Identifier Composite Request ID
ServiceRequest.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code draft | active | on-hold | revoked | completed | entered-in-error | unknown
Binding: RequestStatus (required): The status of a service order.
ServiceRequest.intent This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option
Binding: RequestIntent (required): The kind of service request.
ServiceRequest.category This element must be supported. This element is included in summaries. C 1..1 HIECodeableConcept Classification of service
Binding: ServiceRequestCategoryCodes (example): Classification of the requested service.
Constraints: cc-text-or-code
ServiceRequest.priority This element must be supported. This element is included in summaries. 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required)
ServiceRequest.doNotPerform This element is a modifier element. This element is included in summaries. 0..1 boolean True if service/procedure should not be performed
ServiceRequest.code This element must be supported. This element is included in summaries. C 0..1 HIECodeableConcept What is being requested/ordered
Binding: ProcedureCodes(SNOMEDCT) (example): Codes for tests or services that can be carried out by a designated individual, organization or healthcare service. For laboratory, LOINC is preferred and a valueset using LOINC Order codes is available.
Constraints: cc-text-or-code
ServiceRequest.orderDetail This element must be supported. This element is included in summaries. C 0..* HIECodeableConcept Additional order information
Binding: ServiceRequestOrderDetailsCodes (example): Codified order entry details which are based on order context.
Constraints: cc-text-or-code
ServiceRequest.quantity[x] This element is included in summaries. 0..1 Service amount
ServiceRequest.quantity[x].quantityQuantity Quantity
ServiceRequest.quantity[x].quantityRatio Ratio
ServiceRequest.quantity[x].quantityRange Range
ServiceRequest.subject This element must be supported. This element is included in summaries. 1..1 HIEReference(HIE Patient) Individual or Entity the service is ordered for
ServiceRequest.encounter This element is included in summaries. 1..1 HIEReference(HIE Encounter) Encounter in which the request was created
ServiceRequest.occurrence[x] This element must be supported. This element is included in summaries. 0..1 When service should occur
ServiceRequest.occurrence[x].occurrenceDateTime dateTime
ServiceRequest.occurrence[x].occurrencePeriod Period
ServiceRequest.occurrence[x].occurrenceTiming Timing
ServiceRequest.asNeeded[x] This element is included in summaries. 0..1 Preconditions for service
Binding: SNOMEDCTMedicationAsNeededReasonCodes (example): A coded concept identifying the pre-condition that should hold prior to performing a procedure. For example "pain", "on flare-up", etc.
ServiceRequest.asNeeded[x].asNeededBoolean boolean
ServiceRequest.asNeeded[x].asNeededCodeableConcept CodeableConcept
ServiceRequest.authoredOn This element must be supported. This element is included in summaries. 1..1 dateTime Date request signed
ServiceRequest.requester This element must be supported. This element is included in summaries. 1..1 HIEReference(HIE Practitioner | HIE PractitionerRole | HIE Organization | HIE Patient | RelatedPerson | Device) Who/what is requesting service
ServiceRequest.performerType This element is included in summaries. C 0..1 HIECodeableConcept Performer role
Binding: Action Participant Role (example): Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc.
Constraints: cc-text-or-code
ServiceRequest.performer This element must be supported. This element is included in summaries. 1..* HIEReference(HIE Practitioner | HIE PractitionerRole | HIE Organization | CareTeam | HealthcareService | HIE Patient | Device | RelatedPerson) Requested performer
ServiceRequest.locationCode This element is included in summaries. C 0..* HIECodeableConcept Requested location
Binding: ServiceDeliveryLocationRoleType (example): A location type where services are delivered.
Constraints: cc-text-or-code
ServiceRequest.locationReference This element is included in summaries. 0..* HIEReference(Location) Requested location
ServiceRequest.reasonCode This element is included in summaries. C 0..* HIECodeableConcept Explanation/Justification for procedure or service
Binding: ProcedureReasonCodes (example): SNOMED CT Condition/Problem/Diagnosis Codes
Constraints: cc-text-or-code
ServiceRequest.reasonReference This element must be supported. This element is included in summaries. 0..* HIEReference(HIE Condition | HIE Observation | HIE DiagnosticReport | HIE DocumentReference) Explanation/Justification for service or service
ServiceRequest.insurance 0..* Reference(Coverage | ClaimResponse) Associated insurance coverage
ServiceRequest.supportingInfo 0..* HIEReference(Resource) Additional clinical information
ServiceRequest.specimen This element is included in summaries. 0..* HIEReference(Specimen) Procedure Samples
ServiceRequest.bodySite This element is included in summaries. C 0..* HIECodeableConcept Location on Body
Binding: SNOMEDCTBodyStructures (example): SNOMED CT Body site concepts
Constraints: cc-text-or-code
ServiceRequest.note 0..* HIEAnnotation Comments
ServiceRequest.patientInstruction This element is included in summaries. 0..1 string Patient or consumer-oriented instructions
ServiceRequest.relevantHistory 0..* Reference(Provenance) Request provenance

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
ServiceRequest.language Base preferred Common Languages 📍4.3.0 FHIR Std.
ServiceRequest.identifier.​use Base required IdentifierUse 📦4.3.0 FHIR Std.
ServiceRequest.identifier.​type Base extensible IdentifierType 📦4.3.0 FHIR Std.
ServiceRequest.status Base required RequestStatus 📍4.3.0 FHIR Std.
ServiceRequest.intent Base required RequestIntent 📍4.3.0 FHIR Std.
ServiceRequest.category Base example Service Request Category Codes 📍4.3.0 FHIR Std.
ServiceRequest.priority Base required RequestPriority 📦4.3.0 FHIR Std.
ServiceRequest.code Base example Procedure Codes (SNOMED CT) 📍4.3.0 FHIR Std.
ServiceRequest.orderDetail Base example Service Request Order Details Codes 📍4.3.0 FHIR Std.
ServiceRequest.asNeeded[x] Base example SNOMED CT Medication As Needed Reason Codes 📍4.3.0 FHIR Std.
ServiceRequest.performerType Base example Action Participant Role 📦2.0.0 THO v7.4
ServiceRequest.locationCode Base example ServiceDeliveryLocationRoleType 📦3.0.0 THO v7.4
ServiceRequest.reasonCode Base example Procedure Reason Codes 📍4.3.0 FHIR Std.
ServiceRequest.bodySite Base example SNOMED CT Body Structures 📍4.3.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
cc-text-or-code warning ServiceRequest.identifier.type, ServiceRequest.category, ServiceRequest.code, ServiceRequest.orderDetail, ServiceRequest.performerType, ServiceRequest.locationCode, ServiceRequest.reasonCode, ServiceRequest.bodySite Text is optional, coding is required coding.exists()
dom-2 error ServiceRequest If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error ServiceRequest 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.exists() and ('#'+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(uri) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error ServiceRequest 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 ServiceRequest If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice ServiceRequest A resource should have narrative for robust management text.`div`.exists()
dom-r4b warning ServiceRequest.contained Containing new R4B resources within R4 resources may cause interoperability issues if instances are shared with R4 systems ($this is Citation or $this is Evidence or $this is EvidenceReport or $this is EvidenceVariable or $this is MedicinalProductDefinition or $this is PackagedProductDefinition or $this is AdministrableProductDefinition or $this is Ingredient or $this is ClinicalUseDefinition or $this is RegulatedAuthorization or $this is SubstanceDefinition or $this is SubscriptionStatus or $this is SubscriptionTopic) implies (%resource is Citation or %resource is Evidence or %resource is EvidenceReport or %resource is EvidenceVariable or %resource is MedicinalProductDefinition or %resource is PackagedProductDefinition or %resource is AdministrableProductDefinition or %resource is Ingredient or %resource is ClinicalUseDefinition or %resource is RegulatedAuthorization or %resource is SubstanceDefinition or %resource is SubscriptionStatus or %resource is SubscriptionTopic)
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()
prr-1 error ServiceRequest orderDetail SHALL only be present if code is present orderDetail.empty() or code.exists()

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
ServiceRequest C 0..* ServiceRequest A request for a service to be performed
Constraints: prr-1
ServiceRequest.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
ServiceRequest.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
ServiceRequest.identifier This element is included in summaries. 0..* Identifier Identifiers assigned to this order
ServiceRequest.identifier.use This element is a modifier element. This element is included in summaries. 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
ServiceRequest.identifier.type This element is included in summaries. C 1..1 HIECodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible)
Constraints: cc-text-or-code
ServiceRequest.identifier.system This element is included in summaries. 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
ServiceRequest.identifier.value This element must be supported. This element is included in summaries. 1..1 string The value that is unique
Example General: 123456
ServiceRequest.identifier.assigner This element must be supported. This element is included in summaries. 0..1 HIEReference(HIE Organization) Organization that issued id (may be just text)
ServiceRequest.replaces This element is included in summaries. 0..* HIEReference(HIE ServiceRequest) What request replaces
ServiceRequest.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code draft | active | on-hold | revoked | completed | entered-in-error | unknown
Binding: RequestStatus (required): The status of a service order.
ServiceRequest.intent This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option
Binding: RequestIntent (required): The kind of service request.
ServiceRequest.category This element must be supported. This element is included in summaries. C 1..1 HIECodeableConcept Classification of service
Binding: ServiceRequestCategoryCodes (example): Classification of the requested service.
Constraints: cc-text-or-code
ServiceRequest.priority This element must be supported. This element is included in summaries. 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required)
ServiceRequest.doNotPerform This element is a modifier element. This element is included in summaries. 0..1 boolean True if service/procedure should not be performed
ServiceRequest.code This element must be supported. This element is included in summaries. C 0..1 HIECodeableConcept What is being requested/ordered
Binding: ProcedureCodes(SNOMEDCT) (example): Codes for tests or services that can be carried out by a designated individual, organization or healthcare service. For laboratory, LOINC is preferred and a valueset using LOINC Order codes is available.
Constraints: cc-text-or-code
ServiceRequest.orderDetail This element must be supported. This element is included in summaries. C 0..* HIECodeableConcept Additional order information
Binding: ServiceRequestOrderDetailsCodes (example): Codified order entry details which are based on order context.
Constraints: cc-text-or-code
ServiceRequest.subject This element must be supported. This element is included in summaries. 1..1 HIEReference(HIE Patient) Individual or Entity the service is ordered for
ServiceRequest.encounter This element is included in summaries. 1..1 HIEReference(HIE Encounter) Encounter in which the request was created
ServiceRequest.occurrence[x] This element must be supported. This element is included in summaries. 0..1 When service should occur
ServiceRequest.occurrence[x].occurrenceDateTime dateTime
ServiceRequest.occurrence[x].occurrencePeriod Period
ServiceRequest.occurrence[x].occurrenceTiming Timing
ServiceRequest.authoredOn This element must be supported. This element is included in summaries. 1..1 dateTime Date request signed
ServiceRequest.requester This element must be supported. This element is included in summaries. 1..1 HIEReference(HIE Practitioner | HIE PractitionerRole | HIE Organization | HIE Patient | RelatedPerson | Device) Who/what is requesting service
ServiceRequest.performerType This element is included in summaries. C 0..1 HIECodeableConcept Performer role
Binding: Action Participant Role (example): Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc.
Constraints: cc-text-or-code
ServiceRequest.performer This element must be supported. This element is included in summaries. 1..* HIEReference(HIE Practitioner | HIE PractitionerRole | HIE Organization | CareTeam | HealthcareService | HIE Patient | Device | RelatedPerson) Requested performer
ServiceRequest.locationCode This element is included in summaries. C 0..* HIECodeableConcept Requested location
Binding: ServiceDeliveryLocationRoleType (example): A location type where services are delivered.
Constraints: cc-text-or-code
ServiceRequest.locationReference This element is included in summaries. 0..* HIEReference(Location) Requested location
ServiceRequest.reasonCode This element is included in summaries. C 0..* HIECodeableConcept Explanation/Justification for procedure or service
Binding: ProcedureReasonCodes (example): SNOMED CT Condition/Problem/Diagnosis Codes
Constraints: cc-text-or-code
ServiceRequest.reasonReference This element must be supported. This element is included in summaries. 0..* HIEReference(HIE Condition | HIE Observation | HIE DiagnosticReport | HIE DocumentReference) Explanation/Justification for service or service
ServiceRequest.supportingInfo 0..* HIEReference(Resource) Additional clinical information
ServiceRequest.specimen This element is included in summaries. 0..* HIEReference(Specimen) Procedure Samples
ServiceRequest.bodySite This element is included in summaries. C 0..* HIECodeableConcept Location on Body
Binding: SNOMEDCTBodyStructures (example): SNOMED CT Body site concepts
Constraints: cc-text-or-code
ServiceRequest.note 0..* HIEAnnotation Comments

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
ServiceRequest.identifier.​use Base required IdentifierUse 📦4.3.0 FHIR Std.
ServiceRequest.identifier.​type Base extensible IdentifierType 📦4.3.0 FHIR Std.
ServiceRequest.status Base required RequestStatus 📍4.3.0 FHIR Std.
ServiceRequest.intent Base required RequestIntent 📍4.3.0 FHIR Std.
ServiceRequest.category Base example Service Request Category Codes 📍4.3.0 FHIR Std.
ServiceRequest.priority Base required RequestPriority 📦4.3.0 FHIR Std.
ServiceRequest.code Base example Procedure Codes (SNOMED CT) 📍4.3.0 FHIR Std.
ServiceRequest.orderDetail Base example Service Request Order Details Codes 📍4.3.0 FHIR Std.
ServiceRequest.performerType Base example Action Participant Role 📦2.0.0 THO v7.4
ServiceRequest.locationCode Base example ServiceDeliveryLocationRoleType 📦3.0.0 THO v7.4
ServiceRequest.reasonCode Base example Procedure Reason Codes 📍4.3.0 FHIR Std.
ServiceRequest.bodySite Base example SNOMED CT Body Structures 📍4.3.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
cc-text-or-code warning ServiceRequest.identifier.type, ServiceRequest.category, ServiceRequest.code, ServiceRequest.orderDetail, ServiceRequest.performerType, ServiceRequest.locationCode, ServiceRequest.reasonCode, ServiceRequest.bodySite Text is optional, coding is required coding.exists()
dom-2 error ServiceRequest If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error ServiceRequest 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.exists() and ('#'+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(uri) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error ServiceRequest 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 ServiceRequest If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice ServiceRequest 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()
prr-1 error ServiceRequest orderDetail SHALL only be present if code is present orderDetail.empty() or code.exists()

Differential View

This structure is derived from ServiceRequest

NameFlagsCard.TypeDescription & Constraints    Filter: doco
ServiceRequest 0..* ServiceRequest A request for a service to be performed
ServiceRequest.identifier
ServiceRequest.identifier.use 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
ServiceRequest.identifier.type 1..1 HIECodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible)
ServiceRequest.identifier.system 1..1 uri The namespace for the identifier value
ServiceRequest.identifier.value This element must be supported. 1..1 string The value that is unique
ServiceRequest.identifier.assigner This element must be supported. 0..1 HIEReference(HIE Organization) Organization that issued id (may be just text)
ServiceRequest.replaces 0..* HIEReference(HIE ServiceRequest) What request replaces
ServiceRequest.status This element must be supported. 1..1 code draft | active | on-hold | revoked | completed | entered-in-error | unknown
ServiceRequest.intent This element must be supported. 1..1 code proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option
ServiceRequest.category This element must be supported. 1..1 HIECodeableConcept Classification of service
ServiceRequest.priority This element must be supported. 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required)
ServiceRequest.code This element must be supported. 0..1 HIECodeableConcept What is being requested/ordered
ServiceRequest.orderDetail This element must be supported. 0..* HIECodeableConcept Additional order information
ServiceRequest.subject This element must be supported. 1..1 HIEReference(HIE Patient) Individual or Entity the service is ordered for
ServiceRequest.encounter 1..1 HIEReference(HIE Encounter) Encounter in which the request was created
ServiceRequest.occurrence[x] This element must be supported. 0..1 dateTime, Period, Timing When service should occur
ServiceRequest.authoredOn This element must be supported. 1..1 dateTime Date request signed
ServiceRequest.requester This element must be supported. 1..1 HIEReference(HIE Practitioner | HIE PractitionerRole | HIE Organization | HIE Patient | RelatedPerson | Device) Who/what is requesting service
ServiceRequest.performerType 0..1 HIECodeableConcept Performer role
ServiceRequest.performer This element must be supported. 1..* HIEReference(HIE Practitioner | HIE PractitionerRole | HIE Organization | CareTeam | HealthcareService | HIE Patient | Device | RelatedPerson) Requested performer
ServiceRequest.locationCode 0..* HIECodeableConcept Requested location
ServiceRequest.locationReference 0..* HIEReference(Location) Requested location
ServiceRequest.reasonCode 0..* HIECodeableConcept Explanation/Justification for procedure or service
ServiceRequest.reasonReference This element must be supported. 0..* HIEReference(HIE Condition | HIE Observation | HIE DiagnosticReport | HIE DocumentReference) Explanation/Justification for service or service
ServiceRequest.supportingInfo 0..* HIEReference(Resource) Additional clinical information
ServiceRequest.specimen 0..* HIEReference(Specimen) Procedure Samples
ServiceRequest.bodySite 0..* HIECodeableConcept Location on Body
ServiceRequest.note 0..* HIEAnnotation Comments

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
ServiceRequest.identifier.​use Base required IdentifierUse 📦4.3.0 FHIR Std.
ServiceRequest.identifier.​type Base extensible IdentifierType 📦4.3.0 FHIR Std.
ServiceRequest.priority Base required RequestPriority 📦4.3.0 FHIR Std.

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: doco
ServiceRequest C 0..* ServiceRequest A request for a service to be performed
Constraints: prr-1
ServiceRequest.id This element is included in summaries. 0..1 id Logical id of this artifact
ServiceRequest.meta This element is included in summaries. 0..1 Meta Metadata about the resource
ServiceRequest.implicitRules This element is a modifier element. This element is included in summaries. 0..1 uri A set of rules under which this content was created
ServiceRequest.language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): IETF language tag
Additional BindingsPurpose
AllLanguages Max Binding
ServiceRequest.text 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
ServiceRequest.contained 0..* Resource Contained, inline Resources
Constraints: dom-r4b
ServiceRequest.extension 0..* Extension Additional content defined by implementations
ServiceRequest.modifierExtension This element is a modifier element. 0..* Extension Extensions that cannot be ignored
ServiceRequest.identifier This element is included in summaries. 0..* Identifier Identifiers assigned to this order
ServiceRequest.identifier.id 0..1 id Unique id for inter-element referencing
ServiceRequest.identifier.extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
ServiceRequest.identifier.use This element is a modifier element. This element is included in summaries. 1..1 code usual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required)
ServiceRequest.identifier.type This element is included in summaries. C 1..1 HIECodeableConcept Description of identifier
Binding: Identifier Type Codes (extensible)
Constraints: cc-text-or-code
ServiceRequest.identifier.system This element is included in summaries. 1..1 uri The namespace for the identifier value
Example General: http://www.acme.com/identifiers/patient
ServiceRequest.identifier.value This element must be supported. This element is included in summaries. 1..1 string The value that is unique
Example General: 123456
ServiceRequest.identifier.period This element is included in summaries. 0..1 Period Time period when id is/was valid for use
ServiceRequest.identifier.assigner This element must be supported. This element is included in summaries. 0..1 HIEReference(HIE Organization) Organization that issued id (may be just text)
ServiceRequest.instantiatesCanonical This element is included in summaries. 0..* canonical(ActivityDefinition | PlanDefinition) Instantiates FHIR protocol or definition
ServiceRequest.instantiatesUri This element is included in summaries. 0..* uri Instantiates external protocol or definition
ServiceRequest.basedOn This element is included in summaries. 0..* Reference(CarePlan | ServiceRequest | MedicationRequest) What request fulfills
ServiceRequest.replaces This element is included in summaries. 0..* HIEReference(HIE ServiceRequest) What request replaces
ServiceRequest.requisition This element is included in summaries. 0..1 Identifier Composite Request ID
ServiceRequest.status This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code draft | active | on-hold | revoked | completed | entered-in-error | unknown
Binding: RequestStatus (required): The status of a service order.
ServiceRequest.intent This element is a modifier element. This element must be supported. This element is included in summaries. 1..1 code proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option
Binding: RequestIntent (required): The kind of service request.
ServiceRequest.category This element must be supported. This element is included in summaries. C 1..1 HIECodeableConcept Classification of service
Binding: ServiceRequestCategoryCodes (example): Classification of the requested service.
Constraints: cc-text-or-code
ServiceRequest.priority This element must be supported. This element is included in summaries. 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required)
ServiceRequest.doNotPerform This element is a modifier element. This element is included in summaries. 0..1 boolean True if service/procedure should not be performed
ServiceRequest.code This element must be supported. This element is included in summaries. C 0..1 HIECodeableConcept What is being requested/ordered
Binding: ProcedureCodes(SNOMEDCT) (example): Codes for tests or services that can be carried out by a designated individual, organization or healthcare service. For laboratory, LOINC is preferred and a valueset using LOINC Order codes is available.
Constraints: cc-text-or-code
ServiceRequest.orderDetail This element must be supported. This element is included in summaries. C 0..* HIECodeableConcept Additional order information
Binding: ServiceRequestOrderDetailsCodes (example): Codified order entry details which are based on order context.
Constraints: cc-text-or-code
ServiceRequest.quantity[x] This element is included in summaries. 0..1 Service amount
ServiceRequest.quantity[x].quantityQuantity Quantity
ServiceRequest.quantity[x].quantityRatio Ratio
ServiceRequest.quantity[x].quantityRange Range
ServiceRequest.subject This element must be supported. This element is included in summaries. 1..1 HIEReference(HIE Patient) Individual or Entity the service is ordered for
ServiceRequest.encounter This element is included in summaries. 1..1 HIEReference(HIE Encounter) Encounter in which the request was created
ServiceRequest.occurrence[x] This element must be supported. This element is included in summaries. 0..1 When service should occur
ServiceRequest.occurrence[x].occurrenceDateTime dateTime
ServiceRequest.occurrence[x].occurrencePeriod Period
ServiceRequest.occurrence[x].occurrenceTiming Timing
ServiceRequest.asNeeded[x] This element is included in summaries. 0..1 Preconditions for service
Binding: SNOMEDCTMedicationAsNeededReasonCodes (example): A coded concept identifying the pre-condition that should hold prior to performing a procedure. For example "pain", "on flare-up", etc.
ServiceRequest.asNeeded[x].asNeededBoolean boolean
ServiceRequest.asNeeded[x].asNeededCodeableConcept CodeableConcept
ServiceRequest.authoredOn This element must be supported. This element is included in summaries. 1..1 dateTime Date request signed
ServiceRequest.requester This element must be supported. This element is included in summaries. 1..1 HIEReference(HIE Practitioner | HIE PractitionerRole | HIE Organization | HIE Patient | RelatedPerson | Device) Who/what is requesting service
ServiceRequest.performerType This element is included in summaries. C 0..1 HIECodeableConcept Performer role
Binding: Action Participant Role (example): Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc.
Constraints: cc-text-or-code
ServiceRequest.performer This element must be supported. This element is included in summaries. 1..* HIEReference(HIE Practitioner | HIE PractitionerRole | HIE Organization | CareTeam | HealthcareService | HIE Patient | Device | RelatedPerson) Requested performer
ServiceRequest.locationCode This element is included in summaries. C 0..* HIECodeableConcept Requested location
Binding: ServiceDeliveryLocationRoleType (example): A location type where services are delivered.
Constraints: cc-text-or-code
ServiceRequest.locationReference This element is included in summaries. 0..* HIEReference(Location) Requested location
ServiceRequest.reasonCode This element is included in summaries. C 0..* HIECodeableConcept Explanation/Justification for procedure or service
Binding: ProcedureReasonCodes (example): SNOMED CT Condition/Problem/Diagnosis Codes
Constraints: cc-text-or-code
ServiceRequest.reasonReference This element must be supported. This element is included in summaries. 0..* HIEReference(HIE Condition | HIE Observation | HIE DiagnosticReport | HIE DocumentReference) Explanation/Justification for service or service
ServiceRequest.insurance 0..* Reference(Coverage | ClaimResponse) Associated insurance coverage
ServiceRequest.supportingInfo 0..* HIEReference(Resource) Additional clinical information
ServiceRequest.specimen This element is included in summaries. 0..* HIEReference(Specimen) Procedure Samples
ServiceRequest.bodySite This element is included in summaries. C 0..* HIECodeableConcept Location on Body
Binding: SNOMEDCTBodyStructures (example): SNOMED CT Body site concepts
Constraints: cc-text-or-code
ServiceRequest.note 0..* HIEAnnotation Comments
ServiceRequest.patientInstruction This element is included in summaries. 0..1 string Patient or consumer-oriented instructions
ServiceRequest.relevantHistory 0..* Reference(Provenance) Request provenance

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
ServiceRequest.language Base preferred Common Languages 📍4.3.0 FHIR Std.
ServiceRequest.identifier.​use Base required IdentifierUse 📦4.3.0 FHIR Std.
ServiceRequest.identifier.​type Base extensible IdentifierType 📦4.3.0 FHIR Std.
ServiceRequest.status Base required RequestStatus 📍4.3.0 FHIR Std.
ServiceRequest.intent Base required RequestIntent 📍4.3.0 FHIR Std.
ServiceRequest.category Base example Service Request Category Codes 📍4.3.0 FHIR Std.
ServiceRequest.priority Base required RequestPriority 📦4.3.0 FHIR Std.
ServiceRequest.code Base example Procedure Codes (SNOMED CT) 📍4.3.0 FHIR Std.
ServiceRequest.orderDetail Base example Service Request Order Details Codes 📍4.3.0 FHIR Std.
ServiceRequest.asNeeded[x] Base example SNOMED CT Medication As Needed Reason Codes 📍4.3.0 FHIR Std.
ServiceRequest.performerType Base example Action Participant Role 📦2.0.0 THO v7.4
ServiceRequest.locationCode Base example ServiceDeliveryLocationRoleType 📦3.0.0 THO v7.4
ServiceRequest.reasonCode Base example Procedure Reason Codes 📍4.3.0 FHIR Std.
ServiceRequest.bodySite Base example SNOMED CT Body Structures 📍4.3.0 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
cc-text-or-code warning ServiceRequest.identifier.type, ServiceRequest.category, ServiceRequest.code, ServiceRequest.orderDetail, ServiceRequest.performerType, ServiceRequest.locationCode, ServiceRequest.reasonCode, ServiceRequest.bodySite Text is optional, coding is required coding.exists()
dom-2 error ServiceRequest If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error ServiceRequest 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.exists() and ('#'+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(uri) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error ServiceRequest 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 ServiceRequest If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice ServiceRequest A resource should have narrative for robust management text.`div`.exists()
dom-r4b warning ServiceRequest.contained Containing new R4B resources within R4 resources may cause interoperability issues if instances are shared with R4 systems ($this is Citation or $this is Evidence or $this is EvidenceReport or $this is EvidenceVariable or $this is MedicinalProductDefinition or $this is PackagedProductDefinition or $this is AdministrableProductDefinition or $this is Ingredient or $this is ClinicalUseDefinition or $this is RegulatedAuthorization or $this is SubstanceDefinition or $this is SubscriptionStatus or $this is SubscriptionTopic) implies (%resource is Citation or %resource is Evidence or %resource is EvidenceReport or %resource is EvidenceVariable or %resource is MedicinalProductDefinition or %resource is PackagedProductDefinition or %resource is AdministrableProductDefinition or %resource is Ingredient or %resource is ClinicalUseDefinition or %resource is RegulatedAuthorization or %resource is SubstanceDefinition or %resource is SubscriptionStatus or %resource is SubscriptionTopic)
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()
prr-1 error ServiceRequest orderDetail SHALL only be present if code is present orderDetail.empty() or code.exists()

 

Other representations of profile: CSV, Excel, Schematron