QI-Core Implementation Guide: STU 4 (v4.0.0 for FHIR 4.0.0)

QI-Core Implementation Guide, Clinical Quality Improvement WG - CI build for vesion 4.0.0). This version is based on the current content of https://github.com/cqframework/qi-core/ and changes regularly. See the Directory of published versions

D.4.1 StructureDefinition-qicore-servicerequest

Introduction:

See the patterns page for implementation and usage patterns.

Examples:

Request for Appendectomy Example Referral for Procedure Example

D.4.1.1 Formal Views of Profile Content

The official URL for this profile is:

http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-servicerequest

Profile of ServiceRequest for decision support/quality metrics. Defines the core set of elements and extensions for quality rule and measure authors.

This profile builds on ServiceRequest.

This profile was published on Wed Aug 22 00:00:00 UTC 2018 as a draft by Health Level Seven, Inc. - CQI WG.

Description of Profiles, Differentials, and Snapshots.

NameFlagsCard.TypeDescription & Constraintsdoco
.. ServiceRequest I0..*A 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: CommonLanguages (preferred)
Max Binding: AllLanguages
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... request-statusReason I0..1CodeableConceptReason for current status
URL: http://hl7.org/fhir/StructureDefinition/request-statusReason
Binding: (unbound) (example)
... procedure-approachBodyStructure I0..*Reference(BodyStructure)The access point or points used for this procedure
URL: http://hl7.org/fhir/StructureDefinition/procedure-approachBodyStructure
... qicore-servicerequest-appropriatenessScore 0..1code, decimalAppropriateness Score
URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-servicerequest-appropriatenessScore
Binding: RAND Appropriateness Scores (required)
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierIdentifiers assigned to this order
... 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 ?!SΣ1..1codedraft | active | suspended | completed | entered-in-error | cancelled
Binding: RequestStatus (required)
... intent ?!Σ1..1codeproposal | plan | order +
Binding: RequestIntent (required)
... category Σ0..*CodeableConceptClassification of service
Binding: ServiceRequestCategoryCodes (example)
... priority Σ0..1coderoutine | urgent | asap | stat
Binding: RequestPriority (required)
... doNotPerform ?!Σ0..1booleanTrue if service/procedure should not be performed
... code SΣ0..1CodeableConceptWhat is being requested/ordered
Binding: US Core Procedure Codes (preferred)
... orderDetail ΣI0..*CodeableConceptAdditional order information
Binding: ServiceRequestOrderDetailsCodes (example)
... quantity[x] Σ0..1Service amount
.... quantityQuantityQuantity
.... quantityRatioRatio
.... quantityRangeRange
... subject SΣ1..1Reference(QICorePatient)Individual or Entity the service is ordered for
... encounter SΣ0..1Reference(Encounter | EpisodeOfCare)Encounter in which the request was created
... occurrence[x] SΣ0..1When service should occur
.... occurrenceDateTimedateTime
.... occurrencePeriodPeriod
.... occurrenceTimingTiming
... asNeeded[x] SΣ0..1Preconditions for service
Binding: SNOMEDCTMedicationAsNeededReasonCodes (example)
.... asNeededBooleanboolean
.... asNeededCodeableConceptCodeableConcept
... authoredOn SΣ0..1dateTimeDate request signed
... requester Σ0..1Reference(QICorePractitioner | QICorePractitionerRole | QICoreOrganization | QICorePatient | QICoreRelatedPerson | QICoreDevice)Who/what is requesting service
... performerType Σ0..1CodeableConceptPerformer role
Binding: ParticipantRoles (example)
... performer Σ0..*Reference(QICorePractitioner | QICoreOrganization | QICorePatient | QICoreDevice | QICoreRelatedPerson | HealthcareService)Requested performer
... locationCode Σ0..*CodeableConceptRequested location
Binding: V3 Value SetServiceDeliveryLocationRoleType (example)
... locationReference Σ0..*Reference(Location)Requested location
... reasonCode SΣ0..*CodeableConceptExplanation/Justification for procedure or service
Binding: ProcedureReasonCodes (example)
... 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 SΣ0..*CodeableConceptLocation on Body
Binding: SNOMEDCTBodyStructures (example)
... note 0..*AnnotationComments
... patientInstruction Σ0..1stringPatient or consumer-oriented instructions
... relevantHistory 0..*Reference(Provenance)Request provenance

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. ServiceRequest I0..*A 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: CommonLanguages (preferred)
Max Binding: AllLanguages
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionExtension
Slice: Unordered, Open by value:url
... request-statusReason I0..1CodeableConceptReason for current status
URL: http://hl7.org/fhir/StructureDefinition/request-statusReason
Binding: (unbound) (example)
... procedure-approachBodyStructure I0..*Reference(BodyStructure)The access point or points used for this procedure
URL: http://hl7.org/fhir/StructureDefinition/procedure-approachBodyStructure
... qicore-servicerequest-appropriatenessScore 0..1code, decimalAppropriateness Score
URL: http://hl7.org/fhir/us/qicore/StructureDefinition/qicore-servicerequest-appropriatenessScore
Binding: RAND Appropriateness Scores (required)
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... identifier Σ0..*IdentifierIdentifiers assigned to this order
... 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 ?!SΣ1..1codedraft | active | suspended | completed | entered-in-error | cancelled
Binding: RequestStatus (required)
... intent ?!Σ1..1codeproposal | plan | order +
Binding: RequestIntent (required)
... category Σ0..*CodeableConceptClassification of service
Binding: ServiceRequestCategoryCodes (example)
... priority Σ0..1coderoutine | urgent | asap | stat
Binding: RequestPriority (required)
... doNotPerform ?!Σ0..1booleanTrue if service/procedure should not be performed
... code SΣ0..1CodeableConceptWhat is being requested/ordered
Binding: US Core Procedure Codes (preferred)
... orderDetail ΣI0..*CodeableConceptAdditional order information
Binding: ServiceRequestOrderDetailsCodes (example)
... quantity[x] Σ0..1Service amount
.... quantityQuantityQuantity
.... quantityRatioRatio
.... quantityRangeRange
... subject SΣ1..1Reference(QICorePatient)Individual or Entity the service is ordered for
... encounter SΣ0..1Reference(Encounter | EpisodeOfCare)Encounter in which the request was created
... occurrence[x] SΣ0..1When service should occur
.... occurrenceDateTimedateTime
.... occurrencePeriodPeriod
.... occurrenceTimingTiming
... asNeeded[x] SΣ0..1Preconditions for service
Binding: SNOMEDCTMedicationAsNeededReasonCodes (example)
.... asNeededBooleanboolean
.... asNeededCodeableConceptCodeableConcept
... authoredOn SΣ0..1dateTimeDate request signed
... requester Σ0..1Reference(QICorePractitioner | QICorePractitionerRole | QICoreOrganization | QICorePatient | QICoreRelatedPerson | QICoreDevice)Who/what is requesting service
... performerType Σ0..1CodeableConceptPerformer role
Binding: ParticipantRoles (example)
... performer Σ0..*Reference(QICorePractitioner | QICoreOrganization | QICorePatient | QICoreDevice | QICoreRelatedPerson | HealthcareService)Requested performer
... locationCode Σ0..*CodeableConceptRequested location
Binding: V3 Value SetServiceDeliveryLocationRoleType (example)
... locationReference Σ0..*Reference(Location)Requested location
... reasonCode SΣ0..*CodeableConceptExplanation/Justification for procedure or service
Binding: ProcedureReasonCodes (example)
... 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 SΣ0..*CodeableConceptLocation on Body
Binding: SNOMEDCTBodyStructures (example)
... note 0..*AnnotationComments
... patientInstruction Σ0..1stringPatient or consumer-oriented instructions
... relevantHistory 0..*Reference(Provenance)Request provenance

doco Documentation for this format

 

D.4.1.2 Terminology Bindings

Terminology Bindings

PathConformanceValueSet
ServiceRequest.languagepreferredCommonLanguages
Max Binding: AllLanguages
ServiceRequest.statusrequiredRequestStatus
ServiceRequest.intentrequiredRequestIntent
ServiceRequest.categoryexampleServiceRequestCategoryCodes
ServiceRequest.priorityrequiredRequestPriority
ServiceRequest.codepreferredUSCoreProcedureCodes
ServiceRequest.orderDetailexampleServiceRequestOrderDetailsCodes
ServiceRequest.asNeeded[x]exampleSNOMEDCTMedicationAsNeededReasonCodes
ServiceRequest.performerTypeexampleParticipantRoles
ServiceRequest.locationCodeexamplev3.ServiceDeliveryLocationRoleType
ServiceRequest.reasonCodeexampleProcedureReasonCodes
ServiceRequest.bodySiteexampleSNOMEDCTBodyStructures

D.4.1.3 Constraints

Constraints

IdPathDetailsRequirements
dom-2ServiceRequestIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-4ServiceRequestIf 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-3ServiceRequestIf 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-6ServiceRequestA resource should have narrative for robust management
: text.div.exists()
dom-5ServiceRequestIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
prr-1ServiceRequestorderDetail SHALL only be present if code is present
: orderDetail.empty() or code.exists()