LK NEHR Sri Lanka Patient Summary (IPS based) Implementation Guide
0.1.0 - STU1 Sri Lanka flag

LK NEHR Sri Lanka Patient Summary (IPS based) Implementation Guide, published by Ministry of Health, Sri Lanka. 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/lk-gov-health-hiu/lk-nehr-fhir-ips/ and changes regularly. See the Directory of published versions

Resource Profile: Referral Request For Follow-up Plan

Official URL: http://fhir.health.gov.lk/ips/StructureDefinition/follow-up-plan Version: 0.1.0
Active as of 2025-08-20 Computable Name: FollowUpPlanServiceRequest

Used to initiate a referral request for a Follow-up Plan.

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: Filtersdoco
.. ServiceRequest C 0..* GenericServiceRequest A request for a service to be performed
Constraints: prr-1
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 1..1 code draft | active | on-hold | revoked | completed | entered-in-error | unknown
Binding: RequestStatus (required): The status of a service order.
... doNotPerform ?!Σ 0..1 boolean True if service/procedure should not be performed
... code Σ 1..1 CodeableConcept What is being requested/ordered
Binding: Follow-up plan (extensible)
... subject Σ 1..1 Reference(Patient) Individual or Entity the service is ordered for
... encounter Σ 1..1 Reference(Target Facility Encounter) Encounter in which the request was created
... Slices for occurrence[x] Σ 1..1 Timing When service should occur
Slice: Unordered, Closed by type:$this
.... occurrence[x]:occurrenceTiming Σ 1..1 Timing When service should occur
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
... requester Σ 1..1 Reference(Practitioner | Organization | Device Information) Who/what is requesting service
... locationReference SΣ 0..* Reference(Location) Requested location
... reasonCode SΣ 0..* CodeableConcept Explanation/Justification for procedure or service
Binding: Follow up at HLC (extensible)

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
ServiceRequest.statusrequiredRequestStatus
http://hl7.org/fhir/ValueSet/request-status|4.0.1
From the FHIR Standard
ServiceRequest.intentrequiredRequestIntent
http://hl7.org/fhir/ValueSet/request-intent|4.0.1
From the FHIR Standard
ServiceRequest.codeextensibleVSFollowUpPlan
http://fhir.health.gov.lk/ips/ValueSet/vs-follow-up-plan
From this IG
ServiceRequest.reasonCodeextensibleVSFollowUpReasons(a valid code from Follow up at HLC)
http://fhir.health.gov.lk/ips/ValueSet/vs-follow-up-reasons
From this IG

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorServiceRequestIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorServiceRequestIf 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-4errorServiceRequestIf 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-5errorServiceRequestIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceServiceRequestA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
prr-1errorServiceRequestorderDetail SHALL only be present if code is present
: orderDetail.empty() or code.exists()

This structure is derived from GenericServiceRequest

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. ServiceRequest GenericServiceRequest
... code 1..1 CodeableConcept What is being requested/ordered
Binding: Follow-up plan (extensible)
... Slices for occurrence[x] 1..1 Timing When service should occur
Slice: Unordered, Open by type:$this
.... occurrence[x]:occurrenceTiming 1..1 Timing When service should occur
..... repeat
...... count 1..1 positiveInt Number of times to repeat
Required Pattern: 1
...... duration 1..1 decimal How long when it happens
...... durationUnit 1..1 code s | min | h | d | wk | mo | a - unit of time (UCUM)
... reasonCode 0..* CodeableConcept Explanation/Justification for procedure or service
Binding: Follow up at HLC (extensible)

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
ServiceRequest.codeextensibleVSFollowUpPlan
http://fhir.health.gov.lk/ips/ValueSet/vs-follow-up-plan
From this IG
ServiceRequest.reasonCodeextensibleVSFollowUpReasons(a valid code from Follow up at HLC)
http://fhir.health.gov.lk/ips/ValueSet/vs-follow-up-reasons
From this IG
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. ServiceRequest C 0..* GenericServiceRequest A request for a service to be performed
Constraints: prr-1
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
... 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
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Identifiers assigned to this order
... instantiatesCanonical Σ 0..* canonical(ActivityDefinition | PlanDefinition) Instantiates FHIR protocol or definition
... instantiatesUri Σ 0..* uri Instantiates external protocol or definition
... basedOn Σ 0..* Reference(CarePlan | ServiceRequest | MedicationRequest) What request fulfills
... replaces Σ 0..* Reference(ServiceRequest) What request replaces
... requisition Σ 0..1 Identifier Composite Request ID
... status ?!Σ 1..1 code draft | active | on-hold | revoked | completed | entered-in-error | unknown
Binding: RequestStatus (required): The status of a service order.
... intent ?!Σ 1..1 code proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option
Binding: RequestIntent (required): The kind of service request.
... category Σ 0..* CodeableConcept Classification of service
Binding: ServiceRequestCategoryCodes (example): Classification of the requested service.
... priority Σ 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request.
... doNotPerform ?!Σ 0..1 boolean True if service/procedure should not be performed
... code Σ 1..1 CodeableConcept What is being requested/ordered
Binding: Follow-up plan (extensible)
... orderDetail ΣC 0..* CodeableConcept Additional order information
Binding: ServiceRequestOrderDetailsCodes (example): Codified order entry details which are based on order context.
... quantity[x] Σ 0..1 Service amount
.... quantityQuantity Quantity
.... quantityRatio Ratio
.... quantityRange Range
... subject Σ 1..1 Reference(Patient) Individual or Entity the service is ordered for
... encounter Σ 1..1 Reference(Target Facility Encounter) Encounter in which the request was created
... Slices for occurrence[x] Σ 1..1 Timing When service should occur
Slice: Unordered, Closed by type:$this
.... occurrence[x]:occurrenceTiming Σ 1..1 Timing When service should occur
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... event Σ 0..* dateTime When the event occurs
..... repeat ΣC 0..1 Element When the event is to occur
Constraints: tim-1, tim-2, tim-4, tim-5, tim-6, tim-7, tim-8, tim-9, tim-10
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... bounds[x] Σ 0..1 Length/Range of lengths, or (Start and/or end) limits
....... boundsDuration Duration
....... boundsRange Range
....... boundsPeriod Period
...... count Σ 1..1 positiveInt Number of times to repeat
Required Pattern: 1
...... countMax Σ 0..1 positiveInt Maximum number of times to repeat
...... duration Σ 1..1 decimal How long when it happens
...... durationMax Σ 0..1 decimal How long when it happens (Max)
...... durationUnit Σ 1..1 code s | min | h | d | wk | mo | a - unit of time (UCUM)
Binding: UnitsOfTime (required): A unit of time (units from UCUM).
...... frequency Σ 0..1 positiveInt Event occurs frequency times per period
...... frequencyMax Σ 0..1 positiveInt Event occurs up to frequencyMax times per period
...... period Σ 0..1 decimal Event occurs frequency times per period
...... periodMax Σ 0..1 decimal Upper limit of period (3-4 hours)
...... periodUnit Σ 0..1 code s | min | h | d | wk | mo | a - unit of time (UCUM)
Binding: UnitsOfTime (required): A unit of time (units from UCUM).
...... dayOfWeek Σ 0..* code mon | tue | wed | thu | fri | sat | sun
Binding: DaysOfWeek (required)
...... timeOfDay Σ 0..* time Time of day for action
...... when Σ 0..* code Code for time period of occurrence
Binding: EventTiming (required): Real world event relating to the schedule.
...... offset Σ 0..1 unsignedInt Minutes from event (before or after)
..... code Σ 0..1 CodeableConcept BID | TID | QID | AM | PM | QD | QOD | +
Binding: TimingAbbreviation (preferred): Code for a known / defined timing pattern.
... asNeeded[x] Σ 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.
.... asNeededBoolean boolean
.... asNeededCodeableConcept CodeableConcept
... authoredOn Σ 0..1 dateTime Date request signed
... requester Σ 1..1 Reference(Practitioner | Organization | Device Information) Who/what is requesting service
... performerType Σ 0..1 CodeableConcept Performer role
Binding: ParticipantRoles (example): Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc.
... performer Σ 0..* Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson) Requested performer
... locationCode Σ 0..* CodeableConcept Requested location
Binding: ServiceDeliveryLocationRoleType (example): A location type where services are delivered.
... locationReference SΣ 0..* Reference(Location) Requested location
... reasonCode SΣ 0..* CodeableConcept Explanation/Justification for procedure or service
Binding: Follow up at HLC (extensible)
... reasonReference Σ 0..* Reference(Condition | Observation | DiagnosticReport | DocumentReference) Explanation/Justification for service or service
... insurance 0..* Reference(Coverage | ClaimResponse) Associated insurance coverage
... supportingInfo 0..* Reference(Resource) Additional clinical information
... specimen Σ 0..* Reference(Specimen) Procedure Samples
... bodySite Σ 0..* CodeableConcept Location on Body
Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.
... note 0..* Annotation Comments
... patientInstruction Σ 0..1 string Patient or consumer-oriented instructions
... relevantHistory 0..* Reference(Provenance) Request provenance

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
ServiceRequest.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
ServiceRequest.statusrequiredRequestStatus
http://hl7.org/fhir/ValueSet/request-status|4.0.1
From the FHIR Standard
ServiceRequest.intentrequiredRequestIntent
http://hl7.org/fhir/ValueSet/request-intent|4.0.1
From the FHIR Standard
ServiceRequest.categoryexampleServiceRequestCategoryCodes
http://hl7.org/fhir/ValueSet/servicerequest-category
From the FHIR Standard
ServiceRequest.priorityrequiredRequestPriority
http://hl7.org/fhir/ValueSet/request-priority|4.0.1
From the FHIR Standard
ServiceRequest.codeextensibleVSFollowUpPlan
http://fhir.health.gov.lk/ips/ValueSet/vs-follow-up-plan
From this IG
ServiceRequest.orderDetailexampleServiceRequestOrderDetailsCodes
http://hl7.org/fhir/ValueSet/servicerequest-orderdetail
From the FHIR Standard
ServiceRequest.occurrence[x]:occurrenceTiming.repeat.durationUnitrequiredUnitsOfTime
http://hl7.org/fhir/ValueSet/units-of-time|4.0.1
From the FHIR Standard
ServiceRequest.occurrence[x]:occurrenceTiming.repeat.periodUnitrequiredUnitsOfTime
http://hl7.org/fhir/ValueSet/units-of-time|4.0.1
From the FHIR Standard
ServiceRequest.occurrence[x]:occurrenceTiming.repeat.dayOfWeekrequiredDaysOfWeek
http://hl7.org/fhir/ValueSet/days-of-week|4.0.1
From the FHIR Standard
ServiceRequest.occurrence[x]:occurrenceTiming.repeat.whenrequiredEventTiming
http://hl7.org/fhir/ValueSet/event-timing|4.0.1
From the FHIR Standard
ServiceRequest.occurrence[x]:occurrenceTiming.codepreferredTimingAbbreviation
http://hl7.org/fhir/ValueSet/timing-abbreviation
From the FHIR Standard
ServiceRequest.asNeeded[x]exampleSNOMEDCTMedicationAsNeededReasonCodes
http://hl7.org/fhir/ValueSet/medication-as-needed-reason
From the FHIR Standard
ServiceRequest.performerTypeexampleParticipantRoles
http://hl7.org/fhir/ValueSet/participant-role
From the FHIR Standard
ServiceRequest.locationCodeexampleServiceDeliveryLocationRoleType
http://terminology.hl7.org/ValueSet/v3-ServiceDeliveryLocationRoleType
ServiceRequest.reasonCodeextensibleVSFollowUpReasons(a valid code from Follow up at HLC)
http://fhir.health.gov.lk/ips/ValueSet/vs-follow-up-reasons
From this IG
ServiceRequest.bodySiteexampleSNOMEDCTBodyStructures
http://hl7.org/fhir/ValueSet/body-site
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorServiceRequestIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorServiceRequestIf 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-4errorServiceRequestIf 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-5errorServiceRequestIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceServiceRequestA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
prr-1errorServiceRequestorderDetail SHALL only be present if code is present
: orderDetail.empty() or code.exists()
tim-1errorServiceRequest.occurrence[x]:occurrenceTiming.repeatif there's a duration, there needs to be duration units
: duration.empty() or durationUnit.exists()
tim-2errorServiceRequest.occurrence[x]:occurrenceTiming.repeatif there's a period, there needs to be period units
: period.empty() or periodUnit.exists()
tim-4errorServiceRequest.occurrence[x]:occurrenceTiming.repeatduration SHALL be a non-negative value
: duration.exists() implies duration >= 0
tim-5errorServiceRequest.occurrence[x]:occurrenceTiming.repeatperiod SHALL be a non-negative value
: period.exists() implies period >= 0
tim-6errorServiceRequest.occurrence[x]:occurrenceTiming.repeatIf there's a periodMax, there must be a period
: periodMax.empty() or period.exists()
tim-7errorServiceRequest.occurrence[x]:occurrenceTiming.repeatIf there's a durationMax, there must be a duration
: durationMax.empty() or duration.exists()
tim-8errorServiceRequest.occurrence[x]:occurrenceTiming.repeatIf there's a countMax, there must be a count
: countMax.empty() or count.exists()
tim-9errorServiceRequest.occurrence[x]:occurrenceTiming.repeatIf there's an offset, there must be a when (and not C, CM, CD, CV)
: offset.empty() or (when.exists() and ((when in ('C' | 'CM' | 'CD' | 'CV')).not()))
tim-10errorServiceRequest.occurrence[x]:occurrenceTiming.repeatIf there's a timeOfDay, there cannot be a when, or vice versa
: timeOfDay.empty() or when.empty()

This structure is derived from GenericServiceRequest

Summary

Mandatory: 2 elements(3 nested mandatory elements)

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of ServiceRequest.occurrence[x]

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. ServiceRequest C 0..* GenericServiceRequest A request for a service to be performed
Constraints: prr-1
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... status ?!Σ 1..1 code draft | active | on-hold | revoked | completed | entered-in-error | unknown
Binding: RequestStatus (required): The status of a service order.
... doNotPerform ?!Σ 0..1 boolean True if service/procedure should not be performed
... code Σ 1..1 CodeableConcept What is being requested/ordered
Binding: Follow-up plan (extensible)
... subject Σ 1..1 Reference(Patient) Individual or Entity the service is ordered for
... encounter Σ 1..1 Reference(Target Facility Encounter) Encounter in which the request was created
... Slices for occurrence[x] Σ 1..1 Timing When service should occur
Slice: Unordered, Closed by type:$this
.... occurrence[x]:occurrenceTiming Σ 1..1 Timing When service should occur
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
... requester Σ 1..1 Reference(Practitioner | Organization | Device Information) Who/what is requesting service
... locationReference SΣ 0..* Reference(Location) Requested location
... reasonCode SΣ 0..* CodeableConcept Explanation/Justification for procedure or service
Binding: Follow up at HLC (extensible)

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
ServiceRequest.statusrequiredRequestStatus
http://hl7.org/fhir/ValueSet/request-status|4.0.1
From the FHIR Standard
ServiceRequest.intentrequiredRequestIntent
http://hl7.org/fhir/ValueSet/request-intent|4.0.1
From the FHIR Standard
ServiceRequest.codeextensibleVSFollowUpPlan
http://fhir.health.gov.lk/ips/ValueSet/vs-follow-up-plan
From this IG
ServiceRequest.reasonCodeextensibleVSFollowUpReasons(a valid code from Follow up at HLC)
http://fhir.health.gov.lk/ips/ValueSet/vs-follow-up-reasons
From this IG

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorServiceRequestIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorServiceRequestIf 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-4errorServiceRequestIf 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-5errorServiceRequestIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceServiceRequestA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
prr-1errorServiceRequestorderDetail SHALL only be present if code is present
: orderDetail.empty() or code.exists()

Differential View

This structure is derived from GenericServiceRequest

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. ServiceRequest GenericServiceRequest
... code 1..1 CodeableConcept What is being requested/ordered
Binding: Follow-up plan (extensible)
... Slices for occurrence[x] 1..1 Timing When service should occur
Slice: Unordered, Open by type:$this
.... occurrence[x]:occurrenceTiming 1..1 Timing When service should occur
..... repeat
...... count 1..1 positiveInt Number of times to repeat
Required Pattern: 1
...... duration 1..1 decimal How long when it happens
...... durationUnit 1..1 code s | min | h | d | wk | mo | a - unit of time (UCUM)
... reasonCode 0..* CodeableConcept Explanation/Justification for procedure or service
Binding: Follow up at HLC (extensible)

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSetURI
ServiceRequest.codeextensibleVSFollowUpPlan
http://fhir.health.gov.lk/ips/ValueSet/vs-follow-up-plan
From this IG
ServiceRequest.reasonCodeextensibleVSFollowUpReasons(a valid code from Follow up at HLC)
http://fhir.health.gov.lk/ips/ValueSet/vs-follow-up-reasons
From this IG

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. ServiceRequest C 0..* GenericServiceRequest A request for a service to be performed
Constraints: prr-1
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... language 0..1 code Language of the resource content
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding
... 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
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... identifier Σ 0..* Identifier Identifiers assigned to this order
... instantiatesCanonical Σ 0..* canonical(ActivityDefinition | PlanDefinition) Instantiates FHIR protocol or definition
... instantiatesUri Σ 0..* uri Instantiates external protocol or definition
... basedOn Σ 0..* Reference(CarePlan | ServiceRequest | MedicationRequest) What request fulfills
... replaces Σ 0..* Reference(ServiceRequest) What request replaces
... requisition Σ 0..1 Identifier Composite Request ID
... status ?!Σ 1..1 code draft | active | on-hold | revoked | completed | entered-in-error | unknown
Binding: RequestStatus (required): The status of a service order.
... intent ?!Σ 1..1 code proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option
Binding: RequestIntent (required): The kind of service request.
... category Σ 0..* CodeableConcept Classification of service
Binding: ServiceRequestCategoryCodes (example): Classification of the requested service.
... priority Σ 0..1 code routine | urgent | asap | stat
Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request.
... doNotPerform ?!Σ 0..1 boolean True if service/procedure should not be performed
... code Σ 1..1 CodeableConcept What is being requested/ordered
Binding: Follow-up plan (extensible)
... orderDetail ΣC 0..* CodeableConcept Additional order information
Binding: ServiceRequestOrderDetailsCodes (example): Codified order entry details which are based on order context.
... quantity[x] Σ 0..1 Service amount
.... quantityQuantity Quantity
.... quantityRatio Ratio
.... quantityRange Range
... subject Σ 1..1 Reference(Patient) Individual or Entity the service is ordered for
... encounter Σ 1..1 Reference(Target Facility Encounter) Encounter in which the request was created
... Slices for occurrence[x] Σ 1..1 Timing When service should occur
Slice: Unordered, Closed by type:$this
.... occurrence[x]:occurrenceTiming Σ 1..1 Timing When service should occur
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
..... event Σ 0..* dateTime When the event occurs
..... repeat ΣC 0..1 Element When the event is to occur
Constraints: tim-1, tim-2, tim-4, tim-5, tim-6, tim-7, tim-8, tim-9, tim-10
...... id 0..1 string Unique id for inter-element referencing
...... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... bounds[x] Σ 0..1 Length/Range of lengths, or (Start and/or end) limits
....... boundsDuration Duration
....... boundsRange Range
....... boundsPeriod Period
...... count Σ 1..1 positiveInt Number of times to repeat
Required Pattern: 1
...... countMax Σ 0..1 positiveInt Maximum number of times to repeat
...... duration Σ 1..1 decimal How long when it happens
...... durationMax Σ 0..1 decimal How long when it happens (Max)
...... durationUnit Σ 1..1 code s | min | h | d | wk | mo | a - unit of time (UCUM)
Binding: UnitsOfTime (required): A unit of time (units from UCUM).
...... frequency Σ 0..1 positiveInt Event occurs frequency times per period
...... frequencyMax Σ 0..1 positiveInt Event occurs up to frequencyMax times per period
...... period Σ 0..1 decimal Event occurs frequency times per period
...... periodMax Σ 0..1 decimal Upper limit of period (3-4 hours)
...... periodUnit Σ 0..1 code s | min | h | d | wk | mo | a - unit of time (UCUM)
Binding: UnitsOfTime (required): A unit of time (units from UCUM).
...... dayOfWeek Σ 0..* code mon | tue | wed | thu | fri | sat | sun
Binding: DaysOfWeek (required)
...... timeOfDay Σ 0..* time Time of day for action
...... when Σ 0..* code Code for time period of occurrence
Binding: EventTiming (required): Real world event relating to the schedule.
...... offset Σ 0..1 unsignedInt Minutes from event (before or after)
..... code Σ 0..1 CodeableConcept BID | TID | QID | AM | PM | QD | QOD | +
Binding: TimingAbbreviation (preferred): Code for a known / defined timing pattern.
... asNeeded[x] Σ 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.
.... asNeededBoolean boolean
.... asNeededCodeableConcept CodeableConcept
... authoredOn Σ 0..1 dateTime Date request signed
... requester Σ 1..1 Reference(Practitioner | Organization | Device Information) Who/what is requesting service
... performerType Σ 0..1 CodeableConcept Performer role
Binding: ParticipantRoles (example): Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc.
... performer Σ 0..* Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson) Requested performer
... locationCode Σ 0..* CodeableConcept Requested location
Binding: ServiceDeliveryLocationRoleType (example): A location type where services are delivered.
... locationReference SΣ 0..* Reference(Location) Requested location
... reasonCode SΣ 0..* CodeableConcept Explanation/Justification for procedure or service
Binding: Follow up at HLC (extensible)
... reasonReference Σ 0..* Reference(Condition | Observation | DiagnosticReport | DocumentReference) Explanation/Justification for service or service
... insurance 0..* Reference(Coverage | ClaimResponse) Associated insurance coverage
... supportingInfo 0..* Reference(Resource) Additional clinical information
... specimen Σ 0..* Reference(Specimen) Procedure Samples
... bodySite Σ 0..* CodeableConcept Location on Body
Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.
... note 0..* Annotation Comments
... patientInstruction Σ 0..1 string Patient or consumer-oriented instructions
... relevantHistory 0..* Reference(Provenance) Request provenance

doco Documentation for this format

Terminology Bindings

PathConformanceValueSetURI
ServiceRequest.languagepreferredCommonLanguages
http://hl7.org/fhir/ValueSet/languages
From the FHIR Standard
Additional Bindings Purpose
AllLanguages Max Binding
ServiceRequest.statusrequiredRequestStatus
http://hl7.org/fhir/ValueSet/request-status|4.0.1
From the FHIR Standard
ServiceRequest.intentrequiredRequestIntent
http://hl7.org/fhir/ValueSet/request-intent|4.0.1
From the FHIR Standard
ServiceRequest.categoryexampleServiceRequestCategoryCodes
http://hl7.org/fhir/ValueSet/servicerequest-category
From the FHIR Standard
ServiceRequest.priorityrequiredRequestPriority
http://hl7.org/fhir/ValueSet/request-priority|4.0.1
From the FHIR Standard
ServiceRequest.codeextensibleVSFollowUpPlan
http://fhir.health.gov.lk/ips/ValueSet/vs-follow-up-plan
From this IG
ServiceRequest.orderDetailexampleServiceRequestOrderDetailsCodes
http://hl7.org/fhir/ValueSet/servicerequest-orderdetail
From the FHIR Standard
ServiceRequest.occurrence[x]:occurrenceTiming.repeat.durationUnitrequiredUnitsOfTime
http://hl7.org/fhir/ValueSet/units-of-time|4.0.1
From the FHIR Standard
ServiceRequest.occurrence[x]:occurrenceTiming.repeat.periodUnitrequiredUnitsOfTime
http://hl7.org/fhir/ValueSet/units-of-time|4.0.1
From the FHIR Standard
ServiceRequest.occurrence[x]:occurrenceTiming.repeat.dayOfWeekrequiredDaysOfWeek
http://hl7.org/fhir/ValueSet/days-of-week|4.0.1
From the FHIR Standard
ServiceRequest.occurrence[x]:occurrenceTiming.repeat.whenrequiredEventTiming
http://hl7.org/fhir/ValueSet/event-timing|4.0.1
From the FHIR Standard
ServiceRequest.occurrence[x]:occurrenceTiming.codepreferredTimingAbbreviation
http://hl7.org/fhir/ValueSet/timing-abbreviation
From the FHIR Standard
ServiceRequest.asNeeded[x]exampleSNOMEDCTMedicationAsNeededReasonCodes
http://hl7.org/fhir/ValueSet/medication-as-needed-reason
From the FHIR Standard
ServiceRequest.performerTypeexampleParticipantRoles
http://hl7.org/fhir/ValueSet/participant-role
From the FHIR Standard
ServiceRequest.locationCodeexampleServiceDeliveryLocationRoleType
http://terminology.hl7.org/ValueSet/v3-ServiceDeliveryLocationRoleType
ServiceRequest.reasonCodeextensibleVSFollowUpReasons(a valid code from Follow up at HLC)
http://fhir.health.gov.lk/ips/ValueSet/vs-follow-up-reasons
From this IG
ServiceRequest.bodySiteexampleSNOMEDCTBodyStructures
http://hl7.org/fhir/ValueSet/body-site
From the FHIR Standard

Constraints

IdGradePath(s)DetailsRequirements
dom-2errorServiceRequestIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3errorServiceRequestIf 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-4errorServiceRequestIf 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-5errorServiceRequestIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6best practiceServiceRequestA resource should have narrative for robust management
: text.`div`.exists()
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()
prr-1errorServiceRequestorderDetail SHALL only be present if code is present
: orderDetail.empty() or code.exists()
tim-1errorServiceRequest.occurrence[x]:occurrenceTiming.repeatif there's a duration, there needs to be duration units
: duration.empty() or durationUnit.exists()
tim-2errorServiceRequest.occurrence[x]:occurrenceTiming.repeatif there's a period, there needs to be period units
: period.empty() or periodUnit.exists()
tim-4errorServiceRequest.occurrence[x]:occurrenceTiming.repeatduration SHALL be a non-negative value
: duration.exists() implies duration >= 0
tim-5errorServiceRequest.occurrence[x]:occurrenceTiming.repeatperiod SHALL be a non-negative value
: period.exists() implies period >= 0
tim-6errorServiceRequest.occurrence[x]:occurrenceTiming.repeatIf there's a periodMax, there must be a period
: periodMax.empty() or period.exists()
tim-7errorServiceRequest.occurrence[x]:occurrenceTiming.repeatIf there's a durationMax, there must be a duration
: durationMax.empty() or duration.exists()
tim-8errorServiceRequest.occurrence[x]:occurrenceTiming.repeatIf there's a countMax, there must be a count
: countMax.empty() or count.exists()
tim-9errorServiceRequest.occurrence[x]:occurrenceTiming.repeatIf there's an offset, there must be a when (and not C, CM, CD, CV)
: offset.empty() or (when.exists() and ((when in ('C' | 'CM' | 'CD' | 'CV')).not()))
tim-10errorServiceRequest.occurrence[x]:occurrenceTiming.repeatIf there's a timeOfDay, there cannot be a when, or vice versa
: timeOfDay.empty() or when.empty()

This structure is derived from GenericServiceRequest

Summary

Mandatory: 2 elements(3 nested mandatory elements)

Slices

This structure defines the following Slices:

  • The element 1 is sliced based on the value of ServiceRequest.occurrence[x]

 

Other representations of profile: CSV, Excel, Schematron