HL7 FHIR Implementation Guide: Rwanda HIV
0.1.0 - STU1 International flag

HL7 FHIR Implementation Guide: Rwanda HIV, published by Jembi Health Systems. This is not an authorized publication; it is the continuous build for version 0.1.0). This version is based on the current content of https://github.com/openhie/Rwanda-HIV and changes regularly. See the Directory of published versions

Resource Profile: HIV VL Service Request

Official URL: http://openhie.org/fhir/rwanda-hiv/StructureDefinition/HIV-lab-order Version: 0.1.0
Active as of 2023-09-15 Computable Name: HIVServiceRequest

Represents the record of request for the HIV VL lab order.

Usage:

Formal Views of Profile Content

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

This structure is derived from ServiceRequest

NameFlagsCard.TypeDescription & Constraintsdoco
.. ServiceRequest 0..*ServiceRequestA request for a service to be performed
... Slices for identifier 1..*IdentifierIdentifiers assigned to this order
Slice: Unordered, Open by value:system
.... identifier:PLAC 0..1IdentifierIdentifiers assigned to this order
..... type
...... coding
....... system 0..1uriIdentity of the terminology system
Required Pattern: http://terminology.hl7.org/CodeSystem/v2-0203
....... code 0..1codeSymbol in syntax defined by the system
Required Pattern: PLAC
....... display 0..1stringRepresentation defined by the system
Required Pattern: Placer Identifier
...... text 0..1stringPlain text representation of the concept
Required Pattern: HIV lab service request identifier
..... system 1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/rwanda-hiv/identifier/lab-order-identifier
..... value S0..1stringThe value that is unique
... intent 1..1codeproposal | plan | directive | order +
Required Pattern: order
... code 1..1CodeableReference(ActivityDefinition | PlanDefinition)What is being requested/ordered
Binding: HIV Test Types (required)
.... concept
..... text 0..1stringPlain text representation of the concept
Required Pattern: Test Type
... Slices for occurrence[x] 0..1dateTime, Period, TimingWhen service should occur
Slice: Unordered, Open by type:$this
.... occurrence[x]:occurrenceDateTime S0..1dateTimeWhen service should occur
... requester 1..1Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device)Who/what is requesting service
... performer 1..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Requested performer
... reason 1..*CodeableReference(Condition | Observation | DiagnosticReport | DocumentReference | DetectedIssue)Explanation/Justification for procedure or service
... specimen 1..1Reference(Specimen)Procedure Samples
... note S0..*AnnotationComments

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
ServiceRequest.coderequiredVSTestTypes
NameFlagsCard.TypeDescription & Constraintsdoco
.. ServiceRequest C0..*ServiceRequestA request for a service to be performed
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... contained 0..*ResourceContained, inline Resources
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... identifier:PLAC Σ0..1IdentifierIdentifiers assigned to this order
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/rwanda-hiv/identifier/lab-order-identifier
..... value SΣC0..1stringThe value that is unique
Example General: 123456
... status ?!Σ1..1codedraft | active | on-hold | revoked | completed | entered-in-error | unknown
Binding: RequestStatus (required): The status of a service order.

... intent ?!Σ1..1codeproposal | plan | directive | order +
Binding: RequestIntent (required): The kind of service request.


Required Pattern: order
... doNotPerform ?!Σ0..1booleanTrue if service/procedure should not be performed
... code ΣC1..1CodeableReference(ActivityDefinition | PlanDefinition)What is being requested/ordered
Binding: HIV Test Types (required)
... subject Σ1..1Reference(Patient | Group | Location | Device)Individual or Entity the service is ordered for
... encounter Σ1..1Reference(Encounter)Encounter in which the request was created
... Slices for occurrence[x] Σ0..1When service should occur
Slice: Unordered, Open by type:$this
.... occurrenceDateTimedateTime
.... occurrencePeriodPeriod
.... occurrenceTimingTiming
.... occurrence[x]:occurrenceDateTime SΣ0..1dateTimeWhen service should occur
... requester Σ1..1Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device)Who/what is requesting service
... performer Σ1..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Requested performer
... reason Σ1..*CodeableReference(Condition | Observation | DiagnosticReport | DocumentReference | DetectedIssue)Explanation/Justification for procedure or service
Binding: ProcedureReasonCodes (example): SNOMED CT Condition/Problem/Diagnosis Codes


... specimen Σ1..1Reference(Specimen)Procedure Samples
... note S0..*AnnotationComments

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
ServiceRequest.identifier:PLAC.userequiredIdentifierUse
ServiceRequest.statusrequiredRequestStatus
ServiceRequest.intentrequiredPattern: order
ServiceRequest.coderequiredVSTestTypes
ServiceRequest.reasonexampleProcedureReasonCodes

Constraints

IdGradePath(s)DetailsRequirements
bdystr-1errorServiceRequestbodyStructure SHALL only be present if bodySite is not present
: bodySite.exists() implies bodyStructure.empty()
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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(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()
NameFlagsCard.TypeDescription & Constraintsdoco
.. ServiceRequest C0..*ServiceRequestA request for a service to be performed
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: AllLanguages (required): IETF language tag for a human language

... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... Slices for identifier Σ1..*IdentifierIdentifiers assigned to this order
Slice: Unordered, Open by value:system
.... identifier:PLAC Σ0..1IdentifierIdentifiers assigned to this order
..... id 0..1idUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... type Σ0..1CodeableConceptDescription of identifier
Binding: IdentifierTypeCodes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

...... id 0..1idUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ0..*CodingCode defined by a terminology system
....... id 0..1idUnique id for inter-element referencing
....... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
....... system Σ0..1uriIdentity of the terminology system
Required Pattern: http://terminology.hl7.org/CodeSystem/v2-0203
....... version Σ0..1stringVersion of the system - if relevant
....... code ΣC0..1codeSymbol in syntax defined by the system
Required Pattern: PLAC
....... display ΣC0..1stringRepresentation defined by the system
Required Pattern: Placer Identifier
....... userSelected Σ0..1booleanIf this coding was chosen directly by the user
...... text Σ0..1stringPlain text representation of the concept
Required Pattern: HIV lab service request identifier
..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/rwanda-hiv/identifier/lab-order-identifier
..... value SΣC0..1stringThe value that is unique
Example General: 123456
..... period Σ0..1PeriodTime period when id is/was valid for use
..... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... instantiatesCanonical Σ0..*canonical(ActivityDefinition | PlanDefinition)Instantiates FHIR protocol or definition
... instantiatesUri Σ0..*uriInstantiates external protocol or definition
... basedOn Σ0..*Reference(CarePlan | ServiceRequest | MedicationRequest)What request fulfills
... replaces Σ0..*Reference(ServiceRequest)What request replaces
... requisition Σ0..1IdentifierComposite Request ID
... status ?!Σ1..1codedraft | active | on-hold | revoked | completed | entered-in-error | unknown
Binding: RequestStatus (required): The status of a service order.

... intent ?!Σ1..1codeproposal | plan | directive | order +
Binding: RequestIntent (required): The kind of service request.


Required Pattern: order
... category Σ0..*CodeableConceptClassification of service
Binding: ServiceRequestCategoryCodes (example): Classification of the requested service.


... priority Σ0..1coderoutine | urgent | asap | stat
Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request.

... doNotPerform ?!Σ0..1booleanTrue if service/procedure should not be performed
... code ΣC1..1CodeableReference(ActivityDefinition | PlanDefinition)What is being requested/ordered
Binding: HIV Test Types (required)
.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... concept Σ0..1CodeableConceptReference to a concept (by class)
..... id 0..1idUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... coding Σ0..*CodingCode defined by a terminology system
..... text Σ0..1stringPlain text representation of the concept
Required Pattern: Test Type
.... reference Σ0..1Reference()Reference to a resource (by instance)
... orderDetail ΣC0..*BackboneElementAdditional order information
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... parameterFocus 0..1CodeableReference(Device | DeviceDefinition | DeviceRequest | SupplyRequest | Medication | MedicationRequest | BiologicallyDerivedProduct | Substance)The context of the order details by reference
.... parameter Σ1..*BackboneElementThe parameter details for the service being requested
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... code Σ1..1CodeableConceptThe detail of the order being requested
Binding: ServiceRequestOrderDetailParameterCode (example): Codes for order detail parameters.

..... value[x] Σ1..1The value for the order detail
...... valueQuantityQuantity
...... valueRatioRatio
...... valueRangeRange
...... valueBooleanboolean
...... valueCodeableConceptCodeableConcept
...... valueStringstring
...... valuePeriodPeriod
... quantity[x] Σ0..1Service amount
.... quantityQuantityQuantity
.... quantityRatioRatio
.... quantityRangeRange
... subject Σ1..1Reference(Patient | Group | Location | Device)Individual or Entity the service is ordered for
... focus Σ0..*Reference(Resource)What the service request is about, when it is not about the subject of record
... encounter Σ1..1Reference(Encounter)Encounter in which the request was created
... Slices for occurrence[x] Σ0..1When service should occur
Slice: Unordered, Open by type:$this
.... occurrenceDateTimedateTime
.... occurrencePeriodPeriod
.... occurrenceTimingTiming
.... occurrence[x]:occurrenceDateTime SΣ0..1dateTimeWhen service should occur
... asNeeded[x] Σ0..1Preconditions 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.

.... asNeededBooleanboolean
.... asNeededCodeableConceptCodeableConcept
... authoredOn Σ0..1dateTimeDate request signed
... requester Σ1..1Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device)Who/what is requesting service
... performerType Σ0..1CodeableConceptPerformer role
Binding: ParticipantRoles (example): Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc.

... performer Σ1..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Requested performer
... location Σ0..*CodeableReference(Location)Requested location
Binding: ServiceDeliveryLocationRoleType (example): A location type where services are delivered.


... reason Σ1..*CodeableReference(Condition | Observation | DiagnosticReport | DocumentReference | DetectedIssue)Explanation/Justification for procedure or service
Binding: ProcedureReasonCodes (example): SNOMED CT Condition/Problem/Diagnosis Codes


... insurance 0..*Reference(Coverage | ClaimResponse)Associated insurance coverage
... supportingInfo 0..*CodeableReference(Resource)Additional clinical information
... specimen Σ1..1Reference(Specimen)Procedure Samples
... bodySite ΣC0..*CodeableConceptCoded location on Body
Binding: SNOMEDCTBodyStructures (example): SNOMED CT Body site concepts


... bodyStructure ΣC0..1Reference(BodyStructure)BodyStructure-based location on the body
... note S0..*AnnotationComments
... patientInstruction 0..*BackboneElementPatient or consumer-oriented instructions
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... instruction[x] Σ0..1Patient or consumer-oriented instructions
..... instructionMarkdownmarkdown
..... instructionReferenceReference(DocumentReference)
... relevantHistory 0..*Reference(Provenance)Request provenance

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
ServiceRequest.languagerequiredAllLanguages
ServiceRequest.identifier:PLAC.userequiredIdentifierUse
ServiceRequest.identifier:PLAC.typeextensibleIdentifierTypeCodes
ServiceRequest.statusrequiredRequestStatus
ServiceRequest.intentrequiredPattern: order
ServiceRequest.categoryexampleServiceRequestCategoryCodes
ServiceRequest.priorityrequiredRequestPriority
ServiceRequest.coderequiredVSTestTypes
ServiceRequest.orderDetail.parameter.codeexampleServiceRequestOrderDetailParameterCode
ServiceRequest.asNeeded[x]exampleSNOMEDCTMedicationAsNeededReasonCodes
ServiceRequest.performerTypeexampleParticipantRoles
ServiceRequest.locationexampleServiceDeliveryLocationRoleType
ServiceRequest.reasonexampleProcedureReasonCodes
ServiceRequest.bodySiteexampleSNOMEDCTBodyStructures

Constraints

IdGradePath(s)DetailsRequirements
bdystr-1errorServiceRequestbodyStructure SHALL only be present if bodySite is not present
: bodySite.exists() implies bodyStructure.empty()
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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(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 ServiceRequest

Summary

Mandatory: 7 elements (1 nested mandatory element)
Must-Support: 3 elements
Fixed Value: 1 element

Slices

This structure defines the following Slices:

  • The element ServiceRequest.identifier is sliced based on the value of value:system
  • The element ServiceRequest.occurrence[x] is sliced based on the value of type:$this

Differential View

This structure is derived from ServiceRequest

NameFlagsCard.TypeDescription & Constraintsdoco
.. ServiceRequest 0..*ServiceRequestA request for a service to be performed
... Slices for identifier 1..*IdentifierIdentifiers assigned to this order
Slice: Unordered, Open by value:system
.... identifier:PLAC 0..1IdentifierIdentifiers assigned to this order
..... type
...... coding
....... system 0..1uriIdentity of the terminology system
Required Pattern: http://terminology.hl7.org/CodeSystem/v2-0203
....... code 0..1codeSymbol in syntax defined by the system
Required Pattern: PLAC
....... display 0..1stringRepresentation defined by the system
Required Pattern: Placer Identifier
...... text 0..1stringPlain text representation of the concept
Required Pattern: HIV lab service request identifier
..... system 1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/rwanda-hiv/identifier/lab-order-identifier
..... value S0..1stringThe value that is unique
... intent 1..1codeproposal | plan | directive | order +
Required Pattern: order
... code 1..1CodeableReference(ActivityDefinition | PlanDefinition)What is being requested/ordered
Binding: HIV Test Types (required)
.... concept
..... text 0..1stringPlain text representation of the concept
Required Pattern: Test Type
... Slices for occurrence[x] 0..1dateTime, Period, TimingWhen service should occur
Slice: Unordered, Open by type:$this
.... occurrence[x]:occurrenceDateTime S0..1dateTimeWhen service should occur
... requester 1..1Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device)Who/what is requesting service
... performer 1..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Requested performer
... reason 1..*CodeableReference(Condition | Observation | DiagnosticReport | DocumentReference | DetectedIssue)Explanation/Justification for procedure or service
... specimen 1..1Reference(Specimen)Procedure Samples
... note S0..*AnnotationComments

doco Documentation for this format

Terminology Bindings (Differential)

PathConformanceValueSet
ServiceRequest.coderequiredVSTestTypes

Key Elements View

NameFlagsCard.TypeDescription & Constraintsdoco
.. ServiceRequest C0..*ServiceRequestA request for a service to be performed
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... contained 0..*ResourceContained, inline Resources
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
.... identifier:PLAC Σ0..1IdentifierIdentifiers assigned to this order
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/rwanda-hiv/identifier/lab-order-identifier
..... value SΣC0..1stringThe value that is unique
Example General: 123456
... status ?!Σ1..1codedraft | active | on-hold | revoked | completed | entered-in-error | unknown
Binding: RequestStatus (required): The status of a service order.

... intent ?!Σ1..1codeproposal | plan | directive | order +
Binding: RequestIntent (required): The kind of service request.


Required Pattern: order
... doNotPerform ?!Σ0..1booleanTrue if service/procedure should not be performed
... code ΣC1..1CodeableReference(ActivityDefinition | PlanDefinition)What is being requested/ordered
Binding: HIV Test Types (required)
... subject Σ1..1Reference(Patient | Group | Location | Device)Individual or Entity the service is ordered for
... encounter Σ1..1Reference(Encounter)Encounter in which the request was created
... Slices for occurrence[x] Σ0..1When service should occur
Slice: Unordered, Open by type:$this
.... occurrenceDateTimedateTime
.... occurrencePeriodPeriod
.... occurrenceTimingTiming
.... occurrence[x]:occurrenceDateTime SΣ0..1dateTimeWhen service should occur
... requester Σ1..1Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device)Who/what is requesting service
... performer Σ1..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Requested performer
... reason Σ1..*CodeableReference(Condition | Observation | DiagnosticReport | DocumentReference | DetectedIssue)Explanation/Justification for procedure or service
Binding: ProcedureReasonCodes (example): SNOMED CT Condition/Problem/Diagnosis Codes


... specimen Σ1..1Reference(Specimen)Procedure Samples
... note S0..*AnnotationComments

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
ServiceRequest.identifier:PLAC.userequiredIdentifierUse
ServiceRequest.statusrequiredRequestStatus
ServiceRequest.intentrequiredPattern: order
ServiceRequest.coderequiredVSTestTypes
ServiceRequest.reasonexampleProcedureReasonCodes

Constraints

IdGradePath(s)DetailsRequirements
bdystr-1errorServiceRequestbodyStructure SHALL only be present if bodySite is not present
: bodySite.exists() implies bodyStructure.empty()
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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(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()

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. ServiceRequest C0..*ServiceRequestA request for a service to be performed
... id Σ0..1idLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... language 0..1codeLanguage of the resource content
Binding: AllLanguages (required): IETF language tag for a human language

... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored
... Slices for identifier Σ1..*IdentifierIdentifiers assigned to this order
Slice: Unordered, Open by value:system
.... identifier:PLAC Σ0..1IdentifierIdentifiers assigned to this order
..... id 0..1idUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... use ?!Σ0..1codeusual | official | temp | secondary | old (If known)
Binding: IdentifierUse (required): Identifies the purpose for this identifier, if known .

..... type Σ0..1CodeableConceptDescription of identifier
Binding: IdentifierTypeCodes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

...... id 0..1idUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... coding Σ0..*CodingCode defined by a terminology system
....... id 0..1idUnique id for inter-element referencing
....... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
....... system Σ0..1uriIdentity of the terminology system
Required Pattern: http://terminology.hl7.org/CodeSystem/v2-0203
....... version Σ0..1stringVersion of the system - if relevant
....... code ΣC0..1codeSymbol in syntax defined by the system
Required Pattern: PLAC
....... display ΣC0..1stringRepresentation defined by the system
Required Pattern: Placer Identifier
....... userSelected Σ0..1booleanIf this coding was chosen directly by the user
...... text Σ0..1stringPlain text representation of the concept
Required Pattern: HIV lab service request identifier
..... system Σ1..1uriThe namespace for the identifier value
Fixed Value: http://openhie.org/fhir/rwanda-hiv/identifier/lab-order-identifier
..... value SΣC0..1stringThe value that is unique
Example General: 123456
..... period Σ0..1PeriodTime period when id is/was valid for use
..... assigner Σ0..1Reference(Organization)Organization that issued id (may be just text)
... instantiatesCanonical Σ0..*canonical(ActivityDefinition | PlanDefinition)Instantiates FHIR protocol or definition
... instantiatesUri Σ0..*uriInstantiates external protocol or definition
... basedOn Σ0..*Reference(CarePlan | ServiceRequest | MedicationRequest)What request fulfills
... replaces Σ0..*Reference(ServiceRequest)What request replaces
... requisition Σ0..1IdentifierComposite Request ID
... status ?!Σ1..1codedraft | active | on-hold | revoked | completed | entered-in-error | unknown
Binding: RequestStatus (required): The status of a service order.

... intent ?!Σ1..1codeproposal | plan | directive | order +
Binding: RequestIntent (required): The kind of service request.


Required Pattern: order
... category Σ0..*CodeableConceptClassification of service
Binding: ServiceRequestCategoryCodes (example): Classification of the requested service.


... priority Σ0..1coderoutine | urgent | asap | stat
Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request.

... doNotPerform ?!Σ0..1booleanTrue if service/procedure should not be performed
... code ΣC1..1CodeableReference(ActivityDefinition | PlanDefinition)What is being requested/ordered
Binding: HIV Test Types (required)
.... id 0..1idUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... concept Σ0..1CodeableConceptReference to a concept (by class)
..... id 0..1idUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... coding Σ0..*CodingCode defined by a terminology system
..... text Σ0..1stringPlain text representation of the concept
Required Pattern: Test Type
.... reference Σ0..1Reference()Reference to a resource (by instance)
... orderDetail ΣC0..*BackboneElementAdditional order information
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... parameterFocus 0..1CodeableReference(Device | DeviceDefinition | DeviceRequest | SupplyRequest | Medication | MedicationRequest | BiologicallyDerivedProduct | Substance)The context of the order details by reference
.... parameter Σ1..*BackboneElementThe parameter details for the service being requested
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
..... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
..... code Σ1..1CodeableConceptThe detail of the order being requested
Binding: ServiceRequestOrderDetailParameterCode (example): Codes for order detail parameters.

..... value[x] Σ1..1The value for the order detail
...... valueQuantityQuantity
...... valueRatioRatio
...... valueRangeRange
...... valueBooleanboolean
...... valueCodeableConceptCodeableConcept
...... valueStringstring
...... valuePeriodPeriod
... quantity[x] Σ0..1Service amount
.... quantityQuantityQuantity
.... quantityRatioRatio
.... quantityRangeRange
... subject Σ1..1Reference(Patient | Group | Location | Device)Individual or Entity the service is ordered for
... focus Σ0..*Reference(Resource)What the service request is about, when it is not about the subject of record
... encounter Σ1..1Reference(Encounter)Encounter in which the request was created
... Slices for occurrence[x] Σ0..1When service should occur
Slice: Unordered, Open by type:$this
.... occurrenceDateTimedateTime
.... occurrencePeriodPeriod
.... occurrenceTimingTiming
.... occurrence[x]:occurrenceDateTime SΣ0..1dateTimeWhen service should occur
... asNeeded[x] Σ0..1Preconditions 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.

.... asNeededBooleanboolean
.... asNeededCodeableConceptCodeableConcept
... authoredOn Σ0..1dateTimeDate request signed
... requester Σ1..1Reference(Practitioner | PractitionerRole | Organization | Patient | RelatedPerson | Device)Who/what is requesting service
... performerType Σ0..1CodeableConceptPerformer role
Binding: ParticipantRoles (example): Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc.

... performer Σ1..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Requested performer
... location Σ0..*CodeableReference(Location)Requested location
Binding: ServiceDeliveryLocationRoleType (example): A location type where services are delivered.


... reason Σ1..*CodeableReference(Condition | Observation | DiagnosticReport | DocumentReference | DetectedIssue)Explanation/Justification for procedure or service
Binding: ProcedureReasonCodes (example): SNOMED CT Condition/Problem/Diagnosis Codes


... insurance 0..*Reference(Coverage | ClaimResponse)Associated insurance coverage
... supportingInfo 0..*CodeableReference(Resource)Additional clinical information
... specimen Σ1..1Reference(Specimen)Procedure Samples
... bodySite ΣC0..*CodeableConceptCoded location on Body
Binding: SNOMEDCTBodyStructures (example): SNOMED CT Body site concepts


... bodyStructure ΣC0..1Reference(BodyStructure)BodyStructure-based location on the body
... note S0..*AnnotationComments
... patientInstruction 0..*BackboneElementPatient or consumer-oriented instructions
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... instruction[x] Σ0..1Patient or consumer-oriented instructions
..... instructionMarkdownmarkdown
..... instructionReferenceReference(DocumentReference)
... relevantHistory 0..*Reference(Provenance)Request provenance

doco Documentation for this format

Terminology Bindings

PathConformanceValueSet / Code
ServiceRequest.languagerequiredAllLanguages
ServiceRequest.identifier:PLAC.userequiredIdentifierUse
ServiceRequest.identifier:PLAC.typeextensibleIdentifierTypeCodes
ServiceRequest.statusrequiredRequestStatus
ServiceRequest.intentrequiredPattern: order
ServiceRequest.categoryexampleServiceRequestCategoryCodes
ServiceRequest.priorityrequiredRequestPriority
ServiceRequest.coderequiredVSTestTypes
ServiceRequest.orderDetail.parameter.codeexampleServiceRequestOrderDetailParameterCode
ServiceRequest.asNeeded[x]exampleSNOMEDCTMedicationAsNeededReasonCodes
ServiceRequest.performerTypeexampleParticipantRoles
ServiceRequest.locationexampleServiceDeliveryLocationRoleType
ServiceRequest.reasonexampleProcedureReasonCodes
ServiceRequest.bodySiteexampleSNOMEDCTBodyStructures

Constraints

IdGradePath(s)DetailsRequirements
bdystr-1errorServiceRequestbodyStructure SHALL only be present if bodySite is not present
: bodySite.exists() implies bodyStructure.empty()
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().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(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 ServiceRequest

Summary

Mandatory: 7 elements (1 nested mandatory element)
Must-Support: 3 elements
Fixed Value: 1 element

Slices

This structure defines the following Slices:

  • The element ServiceRequest.identifier is sliced based on the value of value:system
  • The element ServiceRequest.occurrence[x] is sliced based on the value of type:$this

 

Other representations of profile: CSV, Excel, Schematron