Canadian Core
0.1.0 - CI Build

Canadian Core, published by Canadian FHIR Implementor Working Group. 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/scratch-fhir-profiles/CA-Core/ and changes regularly. See the Directory of published versions

Resource Profile: ServiceRequest Profile

Defining URL:http://hl7.org/fhir/ca/core/StructureDefinition/profile-servicerequest
Version:0.1.0
Name:ServiceRequestProfile
Title:ServiceRequest Profile for Results Reporting
Status:Draft as of 2020-10-06
Definition:

Proposed constraints on the ServiceRequest resource for the minimal set of data required to request for service such as diagnostic investigations, treatments, or operations to be performed

Publisher:Canadian FHIR Implementor Working Group
Source Resource:XML / JSON / Turtle

The official URL for this profile is:

http://hl7.org/fhir/ca/core/StructureDefinition/profile-servicerequest

CA ServiceRequest Profile

This Service Request Profile is based upon the core FHIR ServiceRequest resource and created to define the minimal set of data required to request for service such as diagnostic investigations, treatments, or operations to be performed.

This profile defines a service request structure that includes core localisation concepts for use as a diagnostic service request in a Canadian context.

Mandatory Data Elements

All elements or attributes defined in FHIR have cardinality as part of their definition - a minimum number of required appearances and a maximum number.

Most elements in FHIR specification have a minimum cardinality of 0, which means that they may be missing from a resource when it is exchanged between systems.

In this Canadian Baseline ServiceRequest Profile following elements are required:

  • status of the order (ServiceRequest.status)
  • progression of a business activity (ServiceRequest.intent)
  • on whom or what the service is to be performed (ServiceRequest.subject)
  • date of the request (ServiceRequest.authoredOn)
  • who initiated the request (ServiceRequest.requester)

Data Absent Reason

In situations where the minimum cardinality of an element or attribute is 1 and information is missing and the Responder knows the precise reason for the absence of data, Responders SHALL send the reason for the missing information using values (such as NullFlavor) from the value set where they exist or using the DataAbsentReason extension.

Must Support Data Elements

Some elements are labeled as MustSupport meaning that implementations that produce or consume resources SHALL provide “support” for the element in some meaningful way (see Must Support definition).

Following elements are marked as Must Support in the Canadian ServiceRequest profile.

Must Support elements:

  • identifier
  • requisition
  • status
  • intent
  • category
  • code
  • subject
  • encounter
  • authoredOn
  • requester
  • performer

Usage Note

This profile may be used to share relevant information required to support a referral or a transfer of care request from one practitioner to another in which a referral is sent directly to a specific health service described in a shared Health Services Directory.

A ServiceRequest can be supplemented with service-specific clinical decision support information and any other additionally required data, for example, available appointment slots.

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..*ServiceRequestServiceRequest Profile
... identifier S0..*IdentifierIdentifiers assigned to this order
... basedOn 0..*Reference(ServiceRequest Profile for Results Reporting | MedicationRequest Profile)What request fulfills
... replaces 0..*Reference(ServiceRequest Profile for Results Reporting)What request replaces
... status S1..1codedraft | active | on-hold | revoked | completed | entered-in-error | unknown
... intent S1..1codeproposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option
... category S0..*CodeableConceptClassification of service
Binding: ServiceRequestCategoryCodes (preferred)
... code
.... coding S0..*(Slice Definition)Code defined by a terminology system
Slice: Unordered, Open by value:system
..... coding:LabOrder 0..*CodingLaboratory procedure code
Binding: https://fhir.infoway-inforoute.ca/ValueSet/pCLOCD (preferred): The pan Canadian LOINC Observation Code Database (pCLOCD) is the Canadian version of the LOINC(tm) database. It was created using the LOINC(tm) records and attributes that were constrained for Canadian use and supplemented to specifically meet Canadian requirements. It contains the core LOINC(tm) attributes as required by Regenstrief copyright rules. The LOINC(tm) Component has been customized to meet Canadian requirements and is displayed as the pan Canadian Component Name. This component name is the basis for the pan Canadian Display Name. Core attributes are include both English and Canadian French.

...... system 1..1uriIdentity of the terminology system
...... code 1..1codeSymbol in syntax defined by the system
..... coding:@default 0..*CodingCode defined by a terminology system
...... system 1..1uriIdentity of the terminology system
...... code 1..1codeSymbol in syntax defined by the system
... subject S1..1Reference(Patient Profile | Location Profile | Device Profile)Individual or Entity the service is ordered for
... encounter S0..1Reference(Encounter Profile)Encounter in which the request was created
... authoredOn S1..1dateTimeDate request signed
... requester S1..1Reference(Practitioner Profile (General) | PractitionerRole Profile (General) | Organization Profile | Patient Profile | Device Profile)Who/what is requesting service
... performer S0..*Reference(Practitioner Profile (General) | PractitionerRole Profile (General) | Organization Profile | Patient Profile | Device Profile)Requested performer
... locationReference 0..*Reference(Location Profile)Requested location
... reasonCode 0..*CodeableConceptExplanation/Justification for procedure or service
Binding: ProcedureReasonCodes (preferred)
... reasonReference 0..*Reference(Condition Profile | Observation Profile (General Use) | DiagnosticReport Profile for Results Reporting | DocumentReference Profile for metadata about the document)Explanation/Justification for service or service

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. ServiceRequest I0..*ServiceRequestServiceRequest Profile
... id Σ0..1stringLogical 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: 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
... identifier SΣ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(ServiceRequest Profile for Results Reporting | MedicationRequest Profile)What request fulfills
... replaces Σ0..*Reference(ServiceRequest Profile for Results Reporting)What request replaces
... requisition SΣ0..1IdentifierComposite Request ID
... status ?!SΣ1..1codedraft | active | on-hold | revoked | completed | entered-in-error | unknown
Binding: RequestStatus (required): The status of a service order.

... intent ?!SΣ1..1codeproposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option
Binding: RequestIntent (required): The kind of service request.

... category SΣ0..*CodeableConceptClassification of service
Binding: ServiceRequestCategoryCodes (preferred)
... 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 Σ0..1CodeableConceptWhat 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)[http://build.fhir.org/terminologies.html#preferred] and a valueset using LOINC Order codes is available here.

.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding SΣ0..*(Slice Definition)Code defined by a terminology system
Slice: Unordered, Open by value:system
..... coding:LabOrder Σ0..*CodingLaboratory procedure code
Binding: https://fhir.infoway-inforoute.ca/ValueSet/pCLOCD (preferred): The pan Canadian LOINC Observation Code Database (pCLOCD) is the Canadian version of the LOINC(tm) database. It was created using the LOINC(tm) records and attributes that were constrained for Canadian use and supplemented to specifically meet Canadian requirements. It contains the core LOINC(tm) attributes as required by Regenstrief copyright rules. The LOINC(tm) Component has been customized to meet Canadian requirements and is displayed as the pan Canadian Component Name. This component name is the basis for the pan Canadian Display Name. Core attributes are include both English and Canadian French.


...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ1..1uriIdentity of the terminology system
...... version Σ0..1stringVersion of the system - if relevant
...... code Σ1..1codeSymbol in syntax defined by the system
...... display Σ0..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
..... coding:@default Σ0..*CodingCode defined by a terminology system
...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ1..1uriIdentity of the terminology system
...... version Σ0..1stringVersion of the system - if relevant
...... code Σ1..1codeSymbol in syntax defined by the system
...... display Σ0..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringPlain text representation of the concept
... orderDetail ΣI0..*CodeableConceptAdditional order information
Binding: ServiceRequestOrderDetailsCodes (example): Codified order entry details which are based on order context.


... quantity[x] Σ0..1Service amount
.... quantityQuantityQuantity
.... quantityRatioRatio
.... quantityRangeRange
... subject SΣ1..1Reference(Patient Profile | Location Profile | Device Profile)Individual or Entity the service is ordered for
... encounter SΣ0..1Reference(Encounter Profile)Encounter in which the request was created
... occurrence[x] Σ0..1When service should occur
.... occurrenceDateTimedateTime
.... occurrencePeriodPeriod
.... occurrenceTimingTiming
... 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 SΣ1..1dateTimeDate request signed
... requester SΣ1..1Reference(Practitioner Profile (General) | PractitionerRole Profile (General) | Organization Profile | Patient Profile | Device Profile)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 SΣ0..*Reference(Practitioner Profile (General) | PractitionerRole Profile (General) | Organization Profile | Patient Profile | Device Profile)Requested performer
... locationCode Σ0..*CodeableConceptRequested location
Binding: ServiceDeliveryLocationRoleType (example): A location type where services are delivered.


... locationReference Σ0..*Reference(Location Profile)Requested location
... reasonCode Σ0..*CodeableConceptExplanation/Justification for procedure or service
Binding: ProcedureReasonCodes (preferred)
... reasonReference Σ0..*Reference(Condition Profile | Observation Profile (General Use) | DiagnosticReport Profile for Results Reporting | DocumentReference Profile for metadata about the document)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..*CodeableConceptLocation on Body
Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.


... note 0..*AnnotationComments
... patientInstruction Σ0..1stringPatient or consumer-oriented instructions
... relevantHistory 0..*Reference(Provenance)Request provenance

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. ServiceRequest I0..*ServiceRequestServiceRequest Profile
... identifier Σ0..*IdentifierIdentifiers assigned to this order
... 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.

... category Σ0..*CodeableConceptClassification of service
Binding: ServiceRequestCategoryCodes (preferred)
... code Σ0..1CodeableConceptWhat is being requested/ordered
.... coding Σ0..*(Slice Definition)Code defined by a terminology system
Slice: Unordered, Open by value:system
... subject Σ1..1Reference(Patient Profile | Location Profile | Device Profile)Individual or Entity the service is ordered for
... encounter Σ0..1Reference(Encounter Profile)Encounter in which the request was created
... authoredOn Σ1..1dateTimeDate request signed
... requester Σ1..1Reference(Practitioner Profile (General) | PractitionerRole Profile (General) | Organization Profile | Patient Profile | Device Profile)Who/what is requesting service
... performer Σ0..*Reference(Practitioner Profile (General) | PractitionerRole Profile (General) | Organization Profile | Patient Profile | Device Profile)Requested performer

doco Documentation for this format

Differential View

This structure is derived from ServiceRequest

NameFlagsCard.TypeDescription & Constraintsdoco
.. ServiceRequest 0..*ServiceRequestServiceRequest Profile
... identifier S0..*IdentifierIdentifiers assigned to this order
... basedOn 0..*Reference(ServiceRequest Profile for Results Reporting | MedicationRequest Profile)What request fulfills
... replaces 0..*Reference(ServiceRequest Profile for Results Reporting)What request replaces
... status S1..1codedraft | active | on-hold | revoked | completed | entered-in-error | unknown
... intent S1..1codeproposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option
... category S0..*CodeableConceptClassification of service
Binding: ServiceRequestCategoryCodes (preferred)
... code
.... coding S0..*(Slice Definition)Code defined by a terminology system
Slice: Unordered, Open by value:system
..... coding:LabOrder 0..*CodingLaboratory procedure code
Binding: https://fhir.infoway-inforoute.ca/ValueSet/pCLOCD (preferred): The pan Canadian LOINC Observation Code Database (pCLOCD) is the Canadian version of the LOINC(tm) database. It was created using the LOINC(tm) records and attributes that were constrained for Canadian use and supplemented to specifically meet Canadian requirements. It contains the core LOINC(tm) attributes as required by Regenstrief copyright rules. The LOINC(tm) Component has been customized to meet Canadian requirements and is displayed as the pan Canadian Component Name. This component name is the basis for the pan Canadian Display Name. Core attributes are include both English and Canadian French.

...... system 1..1uriIdentity of the terminology system
...... code 1..1codeSymbol in syntax defined by the system
..... coding:@default 0..*CodingCode defined by a terminology system
...... system 1..1uriIdentity of the terminology system
...... code 1..1codeSymbol in syntax defined by the system
... subject S1..1Reference(Patient Profile | Location Profile | Device Profile)Individual or Entity the service is ordered for
... encounter S0..1Reference(Encounter Profile)Encounter in which the request was created
... authoredOn S1..1dateTimeDate request signed
... requester S1..1Reference(Practitioner Profile (General) | PractitionerRole Profile (General) | Organization Profile | Patient Profile | Device Profile)Who/what is requesting service
... performer S0..*Reference(Practitioner Profile (General) | PractitionerRole Profile (General) | Organization Profile | Patient Profile | Device Profile)Requested performer
... locationReference 0..*Reference(Location Profile)Requested location
... reasonCode 0..*CodeableConceptExplanation/Justification for procedure or service
Binding: ProcedureReasonCodes (preferred)
... reasonReference 0..*Reference(Condition Profile | Observation Profile (General Use) | DiagnosticReport Profile for Results Reporting | DocumentReference Profile for metadata about the document)Explanation/Justification for service or service

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. ServiceRequest I0..*ServiceRequestServiceRequest Profile
... id Σ0..1stringLogical 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: 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
... identifier SΣ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(ServiceRequest Profile for Results Reporting | MedicationRequest Profile)What request fulfills
... replaces Σ0..*Reference(ServiceRequest Profile for Results Reporting)What request replaces
... requisition SΣ0..1IdentifierComposite Request ID
... status ?!SΣ1..1codedraft | active | on-hold | revoked | completed | entered-in-error | unknown
Binding: RequestStatus (required): The status of a service order.

... intent ?!SΣ1..1codeproposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option
Binding: RequestIntent (required): The kind of service request.

... category SΣ0..*CodeableConceptClassification of service
Binding: ServiceRequestCategoryCodes (preferred)
... 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 Σ0..1CodeableConceptWhat 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)[http://build.fhir.org/terminologies.html#preferred] and a valueset using LOINC Order codes is available here.

.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... coding SΣ0..*(Slice Definition)Code defined by a terminology system
Slice: Unordered, Open by value:system
..... coding:LabOrder Σ0..*CodingLaboratory procedure code
Binding: https://fhir.infoway-inforoute.ca/ValueSet/pCLOCD (preferred): The pan Canadian LOINC Observation Code Database (pCLOCD) is the Canadian version of the LOINC(tm) database. It was created using the LOINC(tm) records and attributes that were constrained for Canadian use and supplemented to specifically meet Canadian requirements. It contains the core LOINC(tm) attributes as required by Regenstrief copyright rules. The LOINC(tm) Component has been customized to meet Canadian requirements and is displayed as the pan Canadian Component Name. This component name is the basis for the pan Canadian Display Name. Core attributes are include both English and Canadian French.


...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ1..1uriIdentity of the terminology system
...... version Σ0..1stringVersion of the system - if relevant
...... code Σ1..1codeSymbol in syntax defined by the system
...... display Σ0..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
..... coding:@default Σ0..*CodingCode defined by a terminology system
...... id 0..1stringUnique id for inter-element referencing
...... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
...... system Σ1..1uriIdentity of the terminology system
...... version Σ0..1stringVersion of the system - if relevant
...... code Σ1..1codeSymbol in syntax defined by the system
...... display Σ0..1stringRepresentation defined by the system
...... userSelected Σ0..1booleanIf this coding was chosen directly by the user
.... text Σ0..1stringPlain text representation of the concept
... orderDetail ΣI0..*CodeableConceptAdditional order information
Binding: ServiceRequestOrderDetailsCodes (example): Codified order entry details which are based on order context.


... quantity[x] Σ0..1Service amount
.... quantityQuantityQuantity
.... quantityRatioRatio
.... quantityRangeRange
... subject SΣ1..1Reference(Patient Profile | Location Profile | Device Profile)Individual or Entity the service is ordered for
... encounter SΣ0..1Reference(Encounter Profile)Encounter in which the request was created
... occurrence[x] Σ0..1When service should occur
.... occurrenceDateTimedateTime
.... occurrencePeriodPeriod
.... occurrenceTimingTiming
... 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 SΣ1..1dateTimeDate request signed
... requester SΣ1..1Reference(Practitioner Profile (General) | PractitionerRole Profile (General) | Organization Profile | Patient Profile | Device Profile)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 SΣ0..*Reference(Practitioner Profile (General) | PractitionerRole Profile (General) | Organization Profile | Patient Profile | Device Profile)Requested performer
... locationCode Σ0..*CodeableConceptRequested location
Binding: ServiceDeliveryLocationRoleType (example): A location type where services are delivered.


... locationReference Σ0..*Reference(Location Profile)Requested location
... reasonCode Σ0..*CodeableConceptExplanation/Justification for procedure or service
Binding: ProcedureReasonCodes (preferred)
... reasonReference Σ0..*Reference(Condition Profile | Observation Profile (General Use) | DiagnosticReport Profile for Results Reporting | DocumentReference Profile for metadata about the document)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..*CodeableConceptLocation on Body
Binding: SNOMEDCTBodyStructures (example): Codes describing anatomical locations. May include laterality.


... note 0..*AnnotationComments
... patientInstruction Σ0..1stringPatient or consumer-oriented instructions
... relevantHistory 0..*Reference(Provenance)Request provenance

doco Documentation for this format

 

Other representations of profile: Schematron

Terminology Bindings

PathConformanceValueSet
ServiceRequest.languagepreferredCommonLanguages
Max Binding: AllLanguages
ServiceRequest.statusrequiredRequestStatus
ServiceRequest.intentrequiredRequestIntent
ServiceRequest.categorypreferredServiceRequestCategoryCodes
ServiceRequest.priorityrequiredRequestPriority
ServiceRequest.codeexampleProcedureCodes(SNOMEDCT)
ServiceRequest.code.coding:LabOrderpreferredhttps://fhir.infoway-inforoute.ca/ValueSet/pCLOCD
ServiceRequest.orderDetailexampleServiceRequestOrderDetailsCodes
ServiceRequest.asNeeded[x]exampleSNOMEDCTMedicationAsNeededReasonCodes
ServiceRequest.performerTypeexampleParticipantRoles
ServiceRequest.locationCodeexampleServiceDeliveryLocationRoleType
ServiceRequest.reasonCodepreferredProcedureReasonCodes
ServiceRequest.bodySiteexampleSNOMEDCTBodyStructures

Constraints

IdPathDetailsRequirements
dom-2ServiceRequestIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.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-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-5ServiceRequestIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6ServiceRequestA resource should have narrative for robust management
: text.`div`.exists()
prr-1ServiceRequestorderDetail SHALL only be present if code is present
: orderDetail.empty() or code.exists()
ele-1ServiceRequest.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ServiceRequest.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ServiceRequest.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ServiceRequest.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ServiceRequest.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.instantiatesCanonicalAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.instantiatesUriAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.basedOnAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.replacesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.requisitionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.statusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.intentAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.categoryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.priorityAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.doNotPerformAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.code.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ServiceRequest.code.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ServiceRequest.code.codingAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.code.coding:LabOrderAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.code.coding:LabOrder.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ServiceRequest.code.coding:LabOrder.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ServiceRequest.code.coding:LabOrder.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.code.coding:LabOrder.versionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.code.coding:LabOrder.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.code.coding:LabOrder.displayAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.code.coding:LabOrder.userSelectedAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.code.coding:@defaultAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.code.coding:@default.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1ServiceRequest.code.coding:@default.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1ServiceRequest.code.coding:@default.systemAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.code.coding:@default.versionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.code.coding:@default.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.code.coding:@default.displayAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.code.coding:@default.userSelectedAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.code.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.orderDetailAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.quantity[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.subjectAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.encounterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.occurrence[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.asNeeded[x]All FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.authoredOnAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.requesterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.performerTypeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.performerAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.locationCodeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.locationReferenceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.reasonCodeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.reasonReferenceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.insuranceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.supportingInfoAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.specimenAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.bodySiteAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.noteAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.patientInstructionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1ServiceRequest.relevantHistoryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())

Notes:

Category

The ServiceRequest.category element conveys a code that classifies the service for searching, sorting and display purposes.

It may use Canada Health Infoway defined InterventionCodeSubsetCare value set to represent the care procedures performed by a Provider.

Code

The ServiceRequest.code element identifies a particular service (i.e., procedure, diagnostic investigation, or panel of investigations) that have been requested.

If the service identified by the ServiceRequest.category is laboratory procedure the pan-Canadian LOINC Observation Code Database (pCLOCD) is preferred. pCLOCD is the Canadian version of the LOINC(tm) database.

Reason Code

The ServiceRequest.reasonCode element in this profile uses the same ProcedureReasonCodes value set as defined by the FHIR standard.

The binding is chagned from Example to Preferred. Implementers are encouraged to draw codes from the specified code system for interoperability purposes.