Visit the HL7 website
Visit the FHIR website

Pan-Canadian eReferral-eConsult (CA:eReC) v1.1.0-DFT-Ballot

1.1.0-DFT-Ballot   Canada flag
  • Index
  • Home
  • Business Context
    • Business Models
    • Use Cases
    • Business Events
    • Business Rules
    • Privacy and Security Guidance
    • Provincial Considerations
  • Technical Context
    • Technical Foundation
    • Integration Patterns
    • Messaging
    • Sequence Diagrams
    • Conformance Requirements
  • FHIR Artifacts
    • Messaging Events
    • Resource Profiles
    • Extensions
    • Terminology
    • Examples
    • Capability Statements
    • Downloads
    • ---
    • Appointment (CA:eReC)
    • Bundle (CA:eReC)
    • Communication (CA:eReC)
    • DocumentReference (CA:eReC)
    • Location (CA:eReC)
    • MessageHeader (CA:eReC)
    • Organization (CA:eReC)
    • Patient (CA:eReC)
    • Practitioner (CA:eReC)
    • PractitionerRole (CA:eReC)
    • HealthcareService (CA:eReC)
    • QuestionnaireResponse (CA:eReC)
    • ServiceRequest (CA:eReC)
    • Task (CA:eReC)
  • Change Log
    1. Index
    2. FHIR Artifacts
    3. ServiceRequest (CA:eReC)

preBallot - The specification is currently in ballot review and subject to change. . . . For a full list of available versions, see the Directory of published versions

ServiceRequest (CA:eReC)

Links

Profile

CA-eReC-ServiceRequest

Derived from

http://hl7.org/fhir/StructureDefinition/ServiceRequest

Description

ServiceRequest is the main resource used to send all referral related information to the destination system.

References to this resource

Appointment, Communication, DocumentReference, MessageHeader, QuestionnaireResponse, ServiceRequest, Task

Resource Content

  • Overview
  • Tree view
  • XML
  • JSON
ServiceRequestServiceRequest
There are no (further) constraints on this element
Data type

ServiceRequest

extension
There are no (further) constraints on this element
Element id

ServiceRequest.extension

Sliced:

Unordered, Open, by url(Value)

PatientPresentLocationExtension(Reference(Location))
There are no (further) constraints on this element
Element id

ServiceRequest.extension:PatientPresentLocation

Short description

USE CASE SUPPORT: Systems deployed in Ontario SHALL support

Data type

Extension(Reference(Location))

Extension URL

http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Patient-Present-Location-EXT

DARCExtension(Complex)
There are no (further) constraints on this element
Element id

ServiceRequest.extension:DARC

Short description

USE CASE SUPPORT: Systems deployed in Ontario SHALL support

Data type

Extension(Complex)

Extension URL

http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/DARC-EXT

DARTExtension(Complex)
There are no (further) constraints on this element
Element id

ServiceRequest.extension:DART

Short description

USE CASE SUPPORT: Systems deployed in Ontario SHALL support

Data type

Extension(Complex)

Extension URL

http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/DART-ext

RoutingOptionsExtension(CodeableConcept)
There are no (further) constraints on this element
Element id

ServiceRequest.extension:RoutingOptions

Short description

USE CASE SUPPORT: Systems deployed in Ontario SHALL support

Data type

Extension(CodeableConcept)

Extension URL

http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/Routing-Options-EXT

CopiedParticipantsExtension(Reference(PractitionerRole))
There are no (further) constraints on this element
Element id

ServiceRequest.extension:CopiedParticipants

Short description

USE CASE SUPPORT: Systems deployed in Ontario SHALL support

Data type

Extension(Reference(PractitionerRole))

Extension URL

http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-copied-participants-EXT

ServiceProviderPreferenceExtension(Complex)
There are no (further) constraints on this element
Element id

ServiceRequest.extension:ServiceProviderPreference

Short description

USE CASE SUPPORT: Systems deployed in Ontario SHALL support

Data type

Extension(Complex)

Extension URL

http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-ext-ServiceProviderPreference

identifierS
There are no (further) constraints on this element
Element id

ServiceRequest.identifier

systemS1..
There are no (further) constraints on this element
Element id

ServiceRequest.identifier.system

valueS1..
There are no (further) constraints on this element
Element id

ServiceRequest.identifier.value

basedOn..1Reference(ServiceRequest)
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn

Short description

𝗨𝗦𝗘 𝗖𝗔𝗦𝗘 𝗦𝗨𝗣𝗣𝗢𝗥𝗧: Systems that support routing/chaining/splitting SHALL support

Data type

Reference(ServiceRequest)

referenceS
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.reference

identifierS
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.identifier

systemS1..
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.identifier.system

valueS1..
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.identifier.value

replacesReference(ServiceRequest)
There are no (further) constraints on this element
Element id

ServiceRequest.replaces

Short description

𝗨𝗦𝗘 𝗖𝗔𝗦𝗘 𝗦𝗨𝗣𝗣𝗢𝗥𝗧: Systems that support routing/chaining/splitting SHALL support

Data type

Reference(ServiceRequest)

referenceS
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.reference

identifierS
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.identifier

systemS1..
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.identifier.system

valueS1..
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.identifier.value

requisition
There are no (further) constraints on this element
Element id

ServiceRequest.requisition

Short description

𝗨𝗦𝗘 𝗖𝗔𝗦𝗘 𝗦𝗨𝗣𝗣𝗢𝗥𝗧: Systems that support routing/chaining/splitting SHALL support

systemS1..
There are no (further) constraints on this element
Element id

ServiceRequest.requisition.system

valueS1..
There are no (further) constraints on this element
Element id

ServiceRequest.requisition.value

statusSBinding
There are no (further) constraints on this element
Element id

ServiceRequest.status

Binding

RequestStatus (required)

intentSFixed Value
There are no (further) constraints on this element
Element id

ServiceRequest.intent

Fixed value

proposal

categorySBinding
There are no (further) constraints on this element
Element id

ServiceRequest.category

Binding

http://fhir.infoway-inforoute.ca/ValueSet/interventioncodesubsetcare (preferred)

codeSBinding
There are no (further) constraints on this element
Element id

ServiceRequest.code

Short description

Note that the meaning of this field is to be used in conjunction with ServiceRequest.performer pointing to a HealthCareservice, and .code further specifies the service, for example code could be a specific procedure under the specificed HealthcareService (e.g., HealthcareService = Orthopaedic Surgeon, code=Knee Surgery)

Binding

http://fhir.infoway-inforoute.ca/ValueSet/interventioncodesubsetcare (extensible)

subjectSReference(Patient)
There are no (further) constraints on this element
Element id

ServiceRequest.subject

Data type

Reference(Patient)

referenceS
There are no (further) constraints on this element
Element id

ServiceRequest.subject.reference

identifierS
There are no (further) constraints on this element
Element id

ServiceRequest.subject.identifier

systemS1..
There are no (further) constraints on this element
Element id

ServiceRequest.subject.identifier.system

valueS1..
There are no (further) constraints on this element
Element id

ServiceRequest.subject.identifier.value

authoredOnS1..
There are no (further) constraints on this element
Element id

ServiceRequest.authoredOn

requesterS1..Reference(PractitionerRole | Patient)
There are no (further) constraints on this element
Element id

ServiceRequest.requester

Data type

Reference(PractitionerRole | Patient)

extension
There are no (further) constraints on this element
Element id

ServiceRequest.requester.extension

Sliced:

Unordered, Open, by url(Value)

ServiceRequesterDelegate0..1Extension(Complex)
There are no (further) constraints on this element
Element id

ServiceRequest.requester.extension:ServiceRequesterDelegate

Data type

Extension(Complex)

Extension URL

http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-ext-ServiceRequesterDelegate

referenceS
There are no (further) constraints on this element
Element id

ServiceRequest.requester.reference

identifierS
There are no (further) constraints on this element
Element id

ServiceRequest.requester.identifier

systemS1..
There are no (further) constraints on this element
Element id

ServiceRequest.requester.identifier.system

valueS1..
There are no (further) constraints on this element
Element id

ServiceRequest.requester.identifier.value

performerS1..*Reference(PractitionerRole | HealthcareService)
There are no (further) constraints on this element
Element id

ServiceRequest.performer

Data type

Reference(PractitionerRole | HealthcareService)

extension
There are no (further) constraints on this element
Element id

ServiceRequest.performer.extension

Sliced:

Unordered, Open, by url(Value)

PerformerIdentifier0..1Extension(Identifier)
There are no (further) constraints on this element
Element id

ServiceRequest.performer.extension:PerformerIdentifier

Data type

Extension(Identifier)

Extension URL

http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-performer-identifier-EXT

referenceS
There are no (further) constraints on this element
Element id

ServiceRequest.performer.reference

identifierS
There are no (further) constraints on this element
Element id

ServiceRequest.performer.identifier

systemS1..
There are no (further) constraints on this element
Element id

ServiceRequest.performer.identifier.system

valueS1..
There are no (further) constraints on this element
Element id

ServiceRequest.performer.identifier.value

reasonCodeSBinding
There are no (further) constraints on this element
Element id

ServiceRequest.reasonCode

Binding

Diagnosis or problem codes justifying the reason for requesting the service investigation.

ProcedureReasonCodes (preferred)

supportingInfoSReference(Resource | DocumentReference | Communication | QuestionnaireResponse | ConditionPSCA | AllergyIntolerancePSCA)
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo

Definition

Additional clinical information about the patient or specimen that may influence the services or their interpretations. This information includes diagnosis, clinical findings and other observations. In laboratory ordering these are typically referred to as "ask at order entry questions (AOEs)". This includes observations explicitly requested by the producer (filler) to provide context or supporting information needed to complete the order. For example, reporting the amount of inspired oxygen for blood gas measurements.

Comments

To represent information about how the services are to be delivered use the instructions element. This element can be used to provide a Patient Summary as well.

Data type

Reference(Resource | DocumentReference | Communication | QuestionnaireResponse | ConditionPSCA | AllergyIntolerancePSCA)

referenceS
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.reference

identifierS
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.identifier

systemS1..
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.identifier.system

valueS1..
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.identifier.value

noteS
There are no (further) constraints on this element
Element id

ServiceRequest.note

author[x]
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]

Sliced:

Unordered, Open, by $this(Type)

authorReference0..1Reference(Practitioner | Organization | Patient)
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference

Data type

Reference(Practitioner | Organization | Patient)

referenceS
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.reference

identifierS
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.identifier

systemS1..
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.identifier.system

valueS1..
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.identifier.value

ServiceRequestIServiceRequest
There are no (further) constraints on this element
Element id

ServiceRequest

Short description

A request for a service to be performed

Alternate names

diagnostic request, referral, referral request, transfer of care request

Definition

A record of a request for service such as diagnostic investigations, treatments, or operations to be performed.

Data type

ServiceRequest

Constraints
  • dom-2: If the resource is contained in another resource, it SHALL NOT contain nested Resources
    contained.contained.empty()
  • dom-3: If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
    contained.where((('#'+id 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-4: If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
    contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
  • dom-5: If a resource is contained in another resource, it SHALL NOT have a security label
    contained.meta.security.empty()
  • dom-6: A resource should have narrative for robust management
    text.`div`.exists()
  • prr-1: orderDetail SHALL only be present if code is present
    orderDetail.empty() or code.exists()
Mappings
  • rim: Entity. Role, or Act
  • workflow: Request
  • v2: ORC
  • rim: Act[moodCode<=INT]
idΣ0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.id

Short description

Logical id of this artifact

Definition

The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.

Comments

The only time that a resource does not have an id is when it is being submitted to the server using a create operation.

Data type

string

metaΣ0..1Meta
There are no (further) constraints on this element
Element id

ServiceRequest.meta

Short description

Metadata about the resource

Definition

The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.

Data type

Meta

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
implicitRulesΣ ?!0..1uri
There are no (further) constraints on this element
Element id

ServiceRequest.implicitRules

Short description

A set of rules under which this content was created

Definition

A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.

Comments

Asserting this rule set restricts the content to be only understood by a limited set of trading partners. This inherently limits the usefulness of the data in the long term. However, the existing health eco-system is highly fractured, and not yet ready to define, collect, and exchange data in a generally computable sense. Wherever possible, implementers and/or specification writers should avoid using this element. Often, when used, the URL is a reference to an implementation guide that defines these special rules as part of it's narrative along with other profiles, value sets, etc.

Data type

uri

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
language0..1codeBinding
There are no (further) constraints on this element
Element id

ServiceRequest.language

Short description

Language of the resource content

Definition

The base language in which the resource is written.

Comments

Language is provided to support indexing and accessibility (typically, services such as text to speech use the language tag). The html language tag in the narrative applies to the narrative. The language tag on the resource may be used to specify the language of other presentations generated from the data in the resource. Not all the content has to be in the base language. The Resource.language should not be assumed to apply to the narrative automatically. If a language is specified, it should it also be specified on the div element in the html (see rules in HTML5 for information about the relationship between xml:lang and the html lang attribute).

Data type

code

Binding

A human language.

CommonLanguages (preferred)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
text0..1Narrative
There are no (further) constraints on this element
Element id

ServiceRequest.text

Short description

Text summary of the resource, for human interpretation

Alternate names

narrative, html, xhtml, display

Definition

A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.

Comments

Contained resources do not have narrative. Resources that are not contained SHOULD have a narrative. In some cases, a resource may only have text with little or no additional discrete data (as long as all minOccurs=1 elements are satisfied). This may be necessary for data from legacy systems where information is captured as a "text blob" or where text is additionally entered raw or narrated and encoded information is added later.

Data type

Narrative

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: Act.text?
contained0..*Resource
There are no (further) constraints on this element
Element id

ServiceRequest.contained

Short description

Contained, inline Resources

Alternate names

inline resources, anonymous resources, contained resources

Definition

These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.

Comments

This should never be done when the content can be identified properly, as once identification is lost, it is extremely difficult (and context dependent) to restore it again. Contained resources may have profiles and tags In their meta elements, but SHALL NOT have security labels.

Data type

Resource

Mappings
  • rim: N/A
extensionI0..*ExtensionElement id

ServiceRequest.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: N/A
PatientPresentLocationI0..*Extension(Reference(Location))Element id

ServiceRequest.extension:PatientPresentLocation

Short description

USE CASE SUPPORT: Systems deployed in Ontario SHALL support

Alternate names

extensions, user content

Definition

Used to communicate the present location of the patient if it is different than the patient's home address.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension(Reference(Location))

Extension URL

http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Patient-Present-Location-EXT

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: N/A
  • rim: n/a
DARCI0..*Extension(Complex)Element id

ServiceRequest.extension:DARC

Short description

USE CASE SUPPORT: Systems deployed in Ontario SHALL support

Alternate names

extensions, user content

Definition

DARC stands for 'Dates Affecting Readiness to Consult' and is defines as: Periods of time between the referral and consult date when the patient is unavailable for a first consultation due to patient-related reasons.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension(Complex)

Extension URL

http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/DARC-EXT

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: N/A
  • rim: n/a
DARTI0..*Extension(Complex)Element id

ServiceRequest.extension:DART

Short description

USE CASE SUPPORT: Systems deployed in Ontario SHALL support

Alternate names

extensions, user content

Definition

DART stands for 'Dates Affecting Readiness to Treat' and is defined as: Periods of time between the Decision To Treat (DTT) and the Procedure Date when the patient is unavailable for a procedure due to patient-related reasons.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension(Complex)

Extension URL

http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/DART-ext

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: N/A
  • rim: n/a
RoutingOptionsI0..*Extension(CodeableConcept)Element id

ServiceRequest.extension:RoutingOptions

Short description

USE CASE SUPPORT: Systems deployed in Ontario SHALL support

Alternate names

extensions, user content

Definition

For Referral Source Type identification. Only one referral routing object is expected.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension(CodeableConcept)

Extension URL

http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/Routing-Options-EXT

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: N/A
  • rim: n/a
CopiedParticipantsI0..*Extension(Reference(PractitionerRole))Element id

ServiceRequest.extension:CopiedParticipants

Short description

USE CASE SUPPORT: Systems deployed in Ontario SHALL support

Alternate names

extensions, user content

Definition

Optional Extension Element - found in all resources.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension(Reference(PractitionerRole))

Extension URL

http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-copied-participants-EXT

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: N/A
  • rim: n/a
ServiceProviderPreferenceI0..*Extension(Complex)Element id

ServiceRequest.extension:ServiceProviderPreference

Short description

USE CASE SUPPORT: Systems deployed in Ontario SHALL support

Alternate names

extensions, user content

Definition

Optional Extension Element - found in all resources.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension(Complex)

Extension URL

http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-ext-ServiceProviderPreference

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: N/A
  • rim: n/a
modifierExtension?! I0..*Extension
There are no (further) constraints on this element
Element id

ServiceRequest.modifierExtension

Short description

Extensions that cannot be ignored

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

Requirements

Modifier extensions allow for extensions that cannot be safely ignored to be clearly distinguished from the vast majority of extensions which can be safely ignored. This promotes interoperability by eliminating the need for implementers to prohibit the presence of extensions. For further information, see the definition of modifier extensions.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: N/A
identifierS Σ0..*Identifier
There are no (further) constraints on this element
Element id

ServiceRequest.identifier

Short description

Identifiers assigned to this order

Definition

Identifiers assigned to this order instance by the orderer and/or the receiver and/or order fulfiller.

Comments

The identifier.type element is used to distinguish between the identifiers assigned by the orderer (known as the 'Placer' in HL7 v2) and the producer of the observations in response to the order (known as the 'Filler' in HL7 v2). For further discussion and examples see the resource notes section below.

Data type

Identifier

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.identifier
  • w5: FiveWs.identifier
  • v2: ORC.2, ORC.3, RF1-6 / RF1-11,
  • rim: .identifier
  • quick: ClinicalStatement.identifier
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.identifier.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*Extension
There are no (further) constraints on this element
Element id

ServiceRequest.identifier.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
useΣ ?!0..1codeBinding
There are no (further) constraints on this element
Element id

ServiceRequest.identifier.use

Short description

usual | official | temp | secondary | old (If known)

Definition

The purpose of this identifier.

Requirements

Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.

Comments

Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.

Data type

code

Binding

Identifies the purpose for this identifier, if known .

IdentifierUse (required)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: N/A
  • rim: Role.code or implied by context
typeΣ0..1CodeableConceptBinding
There are no (further) constraints on this element
Element id

ServiceRequest.identifier.type

Short description

Description of identifier

Definition

A coded type for the identifier that can be used to determine which identifier to use for a specific purpose.

Requirements

Allows users to make use of identifiers when the identifier system is not known.

Comments

This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.

Data type

CodeableConcept

Binding

A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

Identifier Type Codes (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.5
  • rim: Role.code or implied by context
systemS Σ1..1uri
There are no (further) constraints on this element
Element id

ServiceRequest.identifier.system

Short description

The namespace for the identifier value

Definition

Establishes the namespace for the value - that is, a URL that describes a set values that are unique.

Requirements

There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.

Comments

Identifier.system is always case sensitive.

Data type

uri

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

http://www.acme.com/identifiers/patient


Mappings
  • v2: CX.4 / EI-2-4
  • rim: II.root or Role.id.root
  • servd: ./IdentifierType
valueS Σ1..1string
There are no (further) constraints on this element
Element id

ServiceRequest.identifier.value

Short description

The value that is unique

Definition

The portion of the identifier typically relevant to the user and which is unique within the context of the system.

Comments

If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

123456


Mappings
  • v2: CX.1 / EI.1
  • rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
  • servd: ./Value
periodΣ0..1Period
There are no (further) constraints on this element
Element id

ServiceRequest.identifier.period

Short description

Time period when id is/was valid for use

Definition

Time period during which identifier is/was valid for use.

Data type

Period

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.7 + CX.8
  • rim: Role.effectiveTime or implied by context
  • servd: ./StartDate and ./EndDate
assignerΣ0..1Reference(Organization)
There are no (further) constraints on this element
Element id

ServiceRequest.identifier.assigner

Short description

Organization that issued id (may be just text)

Definition

Organization that issued/manages the identifier.

Comments

The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.

Data type

Reference(Organization)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.4 / (CX.4,CX.9,CX.10)
  • rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • servd: ./IdentifierIssuingAuthority
instantiatesCanonicalΣ0..*canonical(ActivityDefinition | PlanDefinition)
There are no (further) constraints on this element
Element id

ServiceRequest.instantiatesCanonical

Short description

Instantiates FHIR protocol or definition

Definition

The URL pointing to a FHIR-defined protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest.

Comments

Note: This is a business identifier, not a resource identifier (see discussion). It is best practice for the identifier to only appear on a single resource instance, however business practices may occasionally dictate that multiple resource instances with the same identifier can exist - possibly even with different resource types. For example, multiple Patient and a Person resource instance might share the same social insurance number.

Data type

canonical(ActivityDefinition | PlanDefinition)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.instantiatesCanonical
  • v2: Varies by domain
  • rim: .outboundRelationship[typeCode=DEFN].target
instantiatesUriΣ0..*uri
There are no (further) constraints on this element
Element id

ServiceRequest.instantiatesUri

Short description

Instantiates external protocol or definition

Definition

The URL pointing to an externally maintained protocol, guideline, orderset or other definition that is adhered to in whole or in part by this ServiceRequest.

Comments

This might be an HTML page, PDF, etc. or could just be a non-resolvable URI identifier.

Data type

uri

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.instantiatesUri
  • v2: Varies by domain
  • rim: .outboundRelationship[typeCode=DEFN].target
basedOnΣ0..1Reference(ServiceRequest)Element id

ServiceRequest.basedOn

Short description

𝗨𝗦𝗘 𝗖𝗔𝗦𝗘 𝗦𝗨𝗣𝗣𝗢𝗥𝗧: Systems that support routing/chaining/splitting SHALL support

Alternate names

fulfills

Definition

Plan/proposal/order fulfilled by this request.

Data type

Reference(ServiceRequest)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.basedOn
  • v2: ORC.8 (plus others)
  • rim: .outboundRelationship[typeCode=FLFS].target
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*Extension
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
referenceS Σ I0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.reference

Short description

Literal reference, Relative, internal or absolute URL

Definition

A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.

Comments

Using absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries. Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
typeΣ0..1uriBinding
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.type

Short description

Type the reference refers to (e.g. "Patient")

Definition

The expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.

The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).

Comments

This element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified.

Data type

uri

Binding

Aa resource (or, for logical models, the URI of the logical model).

ResourceType (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
identifierS Σ0..1Identifier
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.identifier

Short description

Logical reference, when literal reference is not known

Definition

An identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.

Comments

When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.

When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference

Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.

Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).

Data type

Identifier

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: .identifier
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.identifier.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*Extension
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.identifier.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
useΣ ?!0..1codeBinding
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.identifier.use

Short description

usual | official | temp | secondary | old (If known)

Definition

The purpose of this identifier.

Requirements

Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.

Comments

Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.

Data type

code

Binding

Identifies the purpose for this identifier, if known .

IdentifierUse (required)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: N/A
  • rim: Role.code or implied by context
typeΣ0..1CodeableConceptBinding
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.identifier.type

Short description

Description of identifier

Definition

A coded type for the identifier that can be used to determine which identifier to use for a specific purpose.

Requirements

Allows users to make use of identifiers when the identifier system is not known.

Comments

This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.

Data type

CodeableConcept

Binding

A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

Identifier Type Codes (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.5
  • rim: Role.code or implied by context
systemS Σ1..1uri
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.identifier.system

Short description

The namespace for the identifier value

Definition

Establishes the namespace for the value - that is, a URL that describes a set values that are unique.

Requirements

There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.

Comments

Identifier.system is always case sensitive.

Data type

uri

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

http://www.acme.com/identifiers/patient


Mappings
  • v2: CX.4 / EI-2-4
  • rim: II.root or Role.id.root
  • servd: ./IdentifierType
valueS Σ1..1string
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.identifier.value

Short description

The value that is unique

Definition

The portion of the identifier typically relevant to the user and which is unique within the context of the system.

Comments

If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

123456


Mappings
  • v2: CX.1 / EI.1
  • rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
  • servd: ./Value
periodΣ0..1Period
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.identifier.period

Short description

Time period when id is/was valid for use

Definition

Time period during which identifier is/was valid for use.

Data type

Period

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.7 + CX.8
  • rim: Role.effectiveTime or implied by context
  • servd: ./StartDate and ./EndDate
assignerΣ0..1Reference(Organization)
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.identifier.assigner

Short description

Organization that issued id (may be just text)

Definition

Organization that issued/manages the identifier.

Comments

The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.

Data type

Reference(Organization)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.4 / (CX.4,CX.9,CX.10)
  • rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • servd: ./IdentifierIssuingAuthority
displayΣ0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.basedOn.display

Short description

Text alternative for the resource

Definition

Plain text narrative that identifies the resource in addition to the resource reference.

Comments

This is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
replacesΣ0..*Reference(ServiceRequest)Element id

ServiceRequest.replaces

Short description

𝗨𝗦𝗘 𝗖𝗔𝗦𝗘 𝗦𝗨𝗣𝗣𝗢𝗥𝗧: Systems that support routing/chaining/splitting SHALL support

Alternate names

supersedes, prior, renewed order

Definition

The request takes the place of the referenced completed or terminated request(s).

Data type

Reference(ServiceRequest)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.replaces
  • v2: Handled by message location of ORC (ORC.1=RO or RU)
  • rim: .outboundRelationship[typeCode=RPLC].target
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*Extension
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
referenceS Σ I0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.reference

Short description

Literal reference, Relative, internal or absolute URL

Definition

A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.

Comments

Using absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries. Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
typeΣ0..1uriBinding
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.type

Short description

Type the reference refers to (e.g. "Patient")

Definition

The expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.

The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).

Comments

This element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified.

Data type

uri

Binding

Aa resource (or, for logical models, the URI of the logical model).

ResourceType (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
identifierS Σ0..1Identifier
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.identifier

Short description

Logical reference, when literal reference is not known

Definition

An identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.

Comments

When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.

When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference

Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.

Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).

Data type

Identifier

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: .identifier
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.identifier.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*Extension
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.identifier.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
useΣ ?!0..1codeBinding
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.identifier.use

Short description

usual | official | temp | secondary | old (If known)

Definition

The purpose of this identifier.

Requirements

Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.

Comments

Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.

Data type

code

Binding

Identifies the purpose for this identifier, if known .

IdentifierUse (required)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: N/A
  • rim: Role.code or implied by context
typeΣ0..1CodeableConceptBinding
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.identifier.type

Short description

Description of identifier

Definition

A coded type for the identifier that can be used to determine which identifier to use for a specific purpose.

Requirements

Allows users to make use of identifiers when the identifier system is not known.

Comments

This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.

Data type

CodeableConcept

Binding

A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

Identifier Type Codes (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.5
  • rim: Role.code or implied by context
systemS Σ1..1uri
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.identifier.system

Short description

The namespace for the identifier value

Definition

Establishes the namespace for the value - that is, a URL that describes a set values that are unique.

Requirements

There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.

Comments

Identifier.system is always case sensitive.

Data type

uri

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

http://www.acme.com/identifiers/patient


Mappings
  • v2: CX.4 / EI-2-4
  • rim: II.root or Role.id.root
  • servd: ./IdentifierType
valueS Σ1..1string
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.identifier.value

Short description

The value that is unique

Definition

The portion of the identifier typically relevant to the user and which is unique within the context of the system.

Comments

If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

123456


Mappings
  • v2: CX.1 / EI.1
  • rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
  • servd: ./Value
periodΣ0..1Period
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.identifier.period

Short description

Time period when id is/was valid for use

Definition

Time period during which identifier is/was valid for use.

Data type

Period

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.7 + CX.8
  • rim: Role.effectiveTime or implied by context
  • servd: ./StartDate and ./EndDate
assignerΣ0..1Reference(Organization)
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.identifier.assigner

Short description

Organization that issued id (may be just text)

Definition

Organization that issued/manages the identifier.

Comments

The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.

Data type

Reference(Organization)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.4 / (CX.4,CX.9,CX.10)
  • rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • servd: ./IdentifierIssuingAuthority
displayΣ0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.replaces.display

Short description

Text alternative for the resource

Definition

Plain text narrative that identifies the resource in addition to the resource reference.

Comments

This is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
requisitionΣ0..1IdentifierElement id

ServiceRequest.requisition

Short description

𝗨𝗦𝗘 𝗖𝗔𝗦𝗘 𝗦𝗨𝗣𝗣𝗢𝗥𝗧: Systems that support routing/chaining/splitting SHALL support

Alternate names

grouperId, groupIdentifier

Definition

A shared identifier common to all service requests that were authorized more or less simultaneously by a single author, representing the composite or group identifier.

Requirements

Some business processes need to know if multiple items were ordered as part of the same "requisition" for billing or other purposes.

Comments

Requests are linked either by a "basedOn" relationship (i.e. one request is fulfilling another) or by having a common requisition. Requests that are part of the same requisition are generally treated independently from the perspective of changing their state or maintaining them after initial creation.

Data type

Identifier

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.groupIdentifier
  • v2: ORC.4
  • rim: .inboundRelationship(typeCode=COMP].source[moodCode=INT].identifier
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.requisition.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*Extension
There are no (further) constraints on this element
Element id

ServiceRequest.requisition.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
useΣ ?!0..1codeBinding
There are no (further) constraints on this element
Element id

ServiceRequest.requisition.use

Short description

usual | official | temp | secondary | old (If known)

Definition

The purpose of this identifier.

Requirements

Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.

Comments

Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.

Data type

code

Binding

Identifies the purpose for this identifier, if known .

IdentifierUse (required)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: N/A
  • rim: Role.code or implied by context
typeΣ0..1CodeableConceptBinding
There are no (further) constraints on this element
Element id

ServiceRequest.requisition.type

Short description

Description of identifier

Definition

A coded type for the identifier that can be used to determine which identifier to use for a specific purpose.

Requirements

Allows users to make use of identifiers when the identifier system is not known.

Comments

This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.

Data type

CodeableConcept

Binding

A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

Identifier Type Codes (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.5
  • rim: Role.code or implied by context
systemS Σ1..1uri
There are no (further) constraints on this element
Element id

ServiceRequest.requisition.system

Short description

The namespace for the identifier value

Definition

Establishes the namespace for the value - that is, a URL that describes a set values that are unique.

Requirements

There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.

Comments

Identifier.system is always case sensitive.

Data type

uri

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

http://www.acme.com/identifiers/patient


Mappings
  • v2: CX.4 / EI-2-4
  • rim: II.root or Role.id.root
  • servd: ./IdentifierType
valueS Σ1..1string
There are no (further) constraints on this element
Element id

ServiceRequest.requisition.value

Short description

The value that is unique

Definition

The portion of the identifier typically relevant to the user and which is unique within the context of the system.

Comments

If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

123456


Mappings
  • v2: CX.1 / EI.1
  • rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
  • servd: ./Value
periodΣ0..1Period
There are no (further) constraints on this element
Element id

ServiceRequest.requisition.period

Short description

Time period when id is/was valid for use

Definition

Time period during which identifier is/was valid for use.

Data type

Period

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.7 + CX.8
  • rim: Role.effectiveTime or implied by context
  • servd: ./StartDate and ./EndDate
assignerΣ0..1Reference(Organization)
There are no (further) constraints on this element
Element id

ServiceRequest.requisition.assigner

Short description

Organization that issued id (may be just text)

Definition

Organization that issued/manages the identifier.

Comments

The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.

Data type

Reference(Organization)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.4 / (CX.4,CX.9,CX.10)
  • rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • servd: ./IdentifierIssuingAuthority
statusS Σ ?!1..1codeBindingElement id

ServiceRequest.status

Short description

draft | active | on-hold | revoked | completed | entered-in-error | unknown

Definition

The status of the order.

Comments

The status is generally fully in the control of the requester - they determine whether the order is draft or active and, after it has been activated, competed, cancelled or suspended. States relating to the activities of the performer are reflected on either the corresponding event (see Event Pattern for general discussion) or using the Task resource.

Data type

code

Binding

The status of a service order.

RequestStatus (required)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.status
  • w5: FiveWs.status
  • v2: ORC.5,RF1-1
  • rim: .status
  • quick: Action.currentStatus
intentS Σ ?!1..1codeBindingFixed ValueElement id

ServiceRequest.intent

Short description

proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option

Definition

Whether the request is a proposal, plan, an original order or a reflex order.

Comments

This element is labeled as a modifier because the intent alters when and how the resource is actually applicable.

Data type

code

Binding

The kind of service request.

RequestIntent (required)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Fixed value

proposal

Mappings
  • workflow: Request.intent
  • w5: FiveWs.class
  • v2: N/A
  • rim: .moodCode (nuances beyond PRP/PLAN/RQO would need to be elsewhere)
categoryS Σ0..*CodeableConceptBindingElement id

ServiceRequest.category

Short description

Classification of service

Definition

A code that classifies the service for searching, sorting and display purposes (e.g. "Surgical Procedure").

Requirements

Used for filtering what service request are retrieved and displayed.

Comments

There may be multiple axis of categorization depending on the context or use case for retrieving or displaying the resource. The level of granularity is defined by the category concepts in the value set.

Data type

CodeableConcept

Binding

Classification of the requested service.

http://fhir.infoway-inforoute.ca/ValueSet/interventioncodesubsetcare (preferred)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • w5: FiveWs.class
  • v2: RF1-5
  • rim: .outboundRelationship[typeCode="COMP].target[classCode="LIST", moodCode="INT"].code
priorityΣ0..1codeBinding
There are no (further) constraints on this element
Element id

ServiceRequest.priority

Short description

routine | urgent | asap | stat

Definition

Indicates how quickly the ServiceRequest should be addressed with respect to other requests.

Meaning when missing

If missing, this task should be performed with normal priority

Data type

code

Binding

Identifies the level of importance to be assigned to actioning the request.

RequestPriority (required)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.priority
  • w5: FiveWs.grade
  • v2: TQ1.9, RF1-2
  • rim: .priorityCode
doNotPerformΣ ?!0..1boolean
There are no (further) constraints on this element
Element id

ServiceRequest.doNotPerform

Short description

True if service/procedure should not be performed

Definition

Set this to true if the record is saying that the service/procedure should NOT be performed.

Requirements

Used for do not ambulate, do not elevate head of bed, do not flush NG tube, do not take blood pressure on a certain arm, etc.

Comments

In general, only the code and timeframe will be present, though occasional additional qualifiers such as body site or even performer could be included to narrow the scope of the prohibition. If the ServiceRequest.code and ServiceRequest.doNotPerform both contain negation, that will reinforce prohibition and should not have a double negative interpretation.

Meaning when missing

If missing, the request is a positive request e.g. "do perform"

Data type

boolean

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.doNotPerform
  • rim: .actionNegationInd
codeS Σ0..1CodeableConceptBindingElement id

ServiceRequest.code

Short description

Note that the meaning of this field is to be used in conjunction with ServiceRequest.performer pointing to a HealthCareservice, and .code further specifies the service, for example code could be a specific procedure under the specificed HealthcareService (e.g., HealthcareService = Orthopaedic Surgeon, code=Knee Surgery)

Alternate names

service requested

Definition

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

Comments

Many laboratory and radiology procedure codes embed the specimen/organ system in the test order name, for example, serum or serum/plasma glucose, or a chest x-ray. The specimen might not be recorded separately from the test code.

Data type

CodeableConcept

Binding

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.

http://fhir.infoway-inforoute.ca/ValueSet/interventioncodesubsetcare (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.code
  • w5: FiveWs.what[x]
  • v2: PR1-3 / OBR-4 (varies by domain)
  • rim: .code
  • quick: Procedure.procedureCode
orderDetailΣ I0..*CodeableConcept
There are no (further) constraints on this element
Element id

ServiceRequest.orderDetail

Short description

Additional order information

Alternate names

detailed instructions

Definition

Additional details and instructions about the how the services are to be delivered. For example, and order for a urinary catheter may have an order detail for an external or indwelling catheter, or an order for a bandage may require additional instructions specifying how the bandage should be applied.

Comments

For information from the medical record intended to support the delivery of the requested services, use the supportingInformation element.

Data type

CodeableConcept

Binding

Codified order entry details which are based on order context.

ServiceRequestOrderDetailsCodes (example)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: NTE
  • rim: .code
  • quick: Procedure.procedureCode
quantity[x]Σ0..1
There are no (further) constraints on this element
Element id

ServiceRequest.quantity[x]

Short description

Service amount

Definition

An amount of service being requested which can be a quantity ( for example $1,500 home modification), a ratio ( for example, 20 half day visits per month), or a range (2.0 to 1.8 Gy per fraction).

Requirements

When ordering a service the number of service items may need to be specified separately from the the service item.

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: NTE
  • rim: .quantity
quantityQuantityQuantity
There are no (further) constraints on this element
Data type

Quantity

quantityRatioRatio
There are no (further) constraints on this element
Data type

Ratio

quantityRangeRange
There are no (further) constraints on this element
Data type

Range

subjectS Σ1..1Reference(Patient)Element id

ServiceRequest.subject

Short description

Individual or Entity the service is ordered for

Definition

On whom or what the service is to be performed. This is usually a human patient, but can also be requested on animals, groups of humans or animals, devices such as dialysis machines, or even locations (typically for environmental scans).

Data type

Reference(Patient)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.subject
  • w5: FiveWs.subject[x]
  • v2: PID
  • rim: .participation[typeCode=SBJ].role
  • quick: ClinicalStatement.subject
  • w5: FiveWs.subject
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.subject.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*Extension
There are no (further) constraints on this element
Element id

ServiceRequest.subject.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
referenceS Σ I0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.subject.reference

Short description

Literal reference, Relative, internal or absolute URL

Definition

A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.

Comments

Using absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries. Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
typeΣ0..1uriBinding
There are no (further) constraints on this element
Element id

ServiceRequest.subject.type

Short description

Type the reference refers to (e.g. "Patient")

Definition

The expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.

The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).

Comments

This element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified.

Data type

uri

Binding

Aa resource (or, for logical models, the URI of the logical model).

ResourceType (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
identifierS Σ0..1Identifier
There are no (further) constraints on this element
Element id

ServiceRequest.subject.identifier

Short description

Logical reference, when literal reference is not known

Definition

An identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.

Comments

When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.

When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference

Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.

Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).

Data type

Identifier

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: .identifier
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.subject.identifier.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*Extension
There are no (further) constraints on this element
Element id

ServiceRequest.subject.identifier.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
useΣ ?!0..1codeBinding
There are no (further) constraints on this element
Element id

ServiceRequest.subject.identifier.use

Short description

usual | official | temp | secondary | old (If known)

Definition

The purpose of this identifier.

Requirements

Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.

Comments

Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.

Data type

code

Binding

Identifies the purpose for this identifier, if known .

IdentifierUse (required)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: N/A
  • rim: Role.code or implied by context
typeΣ0..1CodeableConceptBinding
There are no (further) constraints on this element
Element id

ServiceRequest.subject.identifier.type

Short description

Description of identifier

Definition

A coded type for the identifier that can be used to determine which identifier to use for a specific purpose.

Requirements

Allows users to make use of identifiers when the identifier system is not known.

Comments

This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.

Data type

CodeableConcept

Binding

A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

Identifier Type Codes (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.5
  • rim: Role.code or implied by context
systemS Σ1..1uri
There are no (further) constraints on this element
Element id

ServiceRequest.subject.identifier.system

Short description

The namespace for the identifier value

Definition

Establishes the namespace for the value - that is, a URL that describes a set values that are unique.

Requirements

There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.

Comments

Identifier.system is always case sensitive.

Data type

uri

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

http://www.acme.com/identifiers/patient


Mappings
  • v2: CX.4 / EI-2-4
  • rim: II.root or Role.id.root
  • servd: ./IdentifierType
valueS Σ1..1string
There are no (further) constraints on this element
Element id

ServiceRequest.subject.identifier.value

Short description

The value that is unique

Definition

The portion of the identifier typically relevant to the user and which is unique within the context of the system.

Comments

If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

123456


Mappings
  • v2: CX.1 / EI.1
  • rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
  • servd: ./Value
periodΣ0..1Period
There are no (further) constraints on this element
Element id

ServiceRequest.subject.identifier.period

Short description

Time period when id is/was valid for use

Definition

Time period during which identifier is/was valid for use.

Data type

Period

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.7 + CX.8
  • rim: Role.effectiveTime or implied by context
  • servd: ./StartDate and ./EndDate
assignerΣ0..1Reference(Organization)
There are no (further) constraints on this element
Element id

ServiceRequest.subject.identifier.assigner

Short description

Organization that issued id (may be just text)

Definition

Organization that issued/manages the identifier.

Comments

The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.

Data type

Reference(Organization)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.4 / (CX.4,CX.9,CX.10)
  • rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • servd: ./IdentifierIssuingAuthority
displayΣ0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.subject.display

Short description

Text alternative for the resource

Definition

Plain text narrative that identifies the resource in addition to the resource reference.

Comments

This is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
encounterΣ0..1Reference(Encounter)
There are no (further) constraints on this element
Element id

ServiceRequest.encounter

Short description

Encounter in which the request was created

Alternate names

context

Definition

An encounter that provides additional information about the healthcare context in which this request is made.

Data type

Reference(Encounter)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.encounter
  • w5: FiveWs.context
  • v2: PV1
  • rim: .inboundRelationship(typeCode=COMP].source[classCode<=PCPR, moodCode=EVN]
  • quick: ClinicalStatement.encounter
occurrence[x]Σ0..1
There are no (further) constraints on this element
Element id

ServiceRequest.occurrence[x]

Short description

When service should occur

Alternate names

schedule

Definition

The date/time at which the requested service should occur.

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.occurrence[x]
  • w5: FiveWs.planned
  • v2: TQ1/TQ2, OBR-7/OBR-8
  • rim: .effectiveTime
  • quick: Procedure.procedureSchedule
occurrenceDateTimedateTime
There are no (further) constraints on this element
Data type

dateTime

occurrencePeriodPeriod
There are no (further) constraints on this element
Data type

Period

occurrenceTimingTiming
There are no (further) constraints on this element
Data type

Timing

asNeeded[x]Σ0..1
There are no (further) constraints on this element
Element id

ServiceRequest.asNeeded[x]

Short description

Preconditions for service

Definition

If a CodeableConcept is present, it indicates the pre-condition for performing the service. For example "pain", "on flare-up", etc.

Binding

A coded concept identifying the pre-condition that should hold prior to performing a procedure. For example "pain", "on flare-up", etc.

SNOMEDCTMedicationAsNeededReasonCodes (example)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: boolean: precondition.negationInd (inversed - so negationInd = true means asNeeded=false CodeableConcept: precondition.observationEventCriterion[code="Assertion"].value
  • quick: Proposal.prnReason.reason
asNeededBooleanboolean
There are no (further) constraints on this element
Data type

boolean

asNeededCodeableConceptCodeableConcept
There are no (further) constraints on this element
Data type

CodeableConcept

authoredOnS Σ1..1dateTime
There are no (further) constraints on this element
Element id

ServiceRequest.authoredOn

Short description

Date request signed

Alternate names

orderedOn

Definition

When the request transitioned to being actionable.

Data type

dateTime

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.authoredOn
  • w5: FiveWs.recorded
  • v2: ORC.9, RF1-7 / RF1-9
  • rim: .participation[typeCode=AUT].time
  • quick: Proposal.proposedAtTime
requesterS Σ1..1Reference(PractitionerRole | Patient)Element id

ServiceRequest.requester

Short description

Who/what is requesting service

Alternate names

author, orderer

Definition

The individual who initiated the request and has responsibility for its activation.

Comments

This not the dispatcher, but rather who is the authorizer. This element is not intended to handle delegation which would generally be managed through the Provenance resource.

Data type

Reference(PractitionerRole | Patient)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.requester
  • w5: FiveWs.author
  • v2: ORC.12, PRT
  • rim: .participation[typeCode=AUT].role
  • quick: ClinicalStatement.statementAuthor
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.requester.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*ExtensionElement id

ServiceRequest.requester.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
ServiceRequesterDelegateI0..1Extension(Complex)Element id

ServiceRequest.requester.extension:ServiceRequesterDelegate

Short description

Optional Extensions Element

Alternate names

extensions, user content

Definition

Optional Extension Element - found in all resources.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension(Complex)

Extension URL

http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-ext-ServiceRequesterDelegate

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
referenceS Σ I0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.requester.reference

Short description

Literal reference, Relative, internal or absolute URL

Definition

A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.

Comments

Using absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries. Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
typeΣ0..1uriBinding
There are no (further) constraints on this element
Element id

ServiceRequest.requester.type

Short description

Type the reference refers to (e.g. "Patient")

Definition

The expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.

The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).

Comments

This element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified.

Data type

uri

Binding

Aa resource (or, for logical models, the URI of the logical model).

ResourceType (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
identifierS Σ0..1Identifier
There are no (further) constraints on this element
Element id

ServiceRequest.requester.identifier

Short description

Logical reference, when literal reference is not known

Definition

An identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.

Comments

When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.

When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference

Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.

Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).

Data type

Identifier

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: .identifier
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.requester.identifier.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*Extension
There are no (further) constraints on this element
Element id

ServiceRequest.requester.identifier.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
useΣ ?!0..1codeBinding
There are no (further) constraints on this element
Element id

ServiceRequest.requester.identifier.use

Short description

usual | official | temp | secondary | old (If known)

Definition

The purpose of this identifier.

Requirements

Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.

Comments

Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.

Data type

code

Binding

Identifies the purpose for this identifier, if known .

IdentifierUse (required)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: N/A
  • rim: Role.code or implied by context
typeΣ0..1CodeableConceptBinding
There are no (further) constraints on this element
Element id

ServiceRequest.requester.identifier.type

Short description

Description of identifier

Definition

A coded type for the identifier that can be used to determine which identifier to use for a specific purpose.

Requirements

Allows users to make use of identifiers when the identifier system is not known.

Comments

This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.

Data type

CodeableConcept

Binding

A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

Identifier Type Codes (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.5
  • rim: Role.code or implied by context
systemS Σ1..1uri
There are no (further) constraints on this element
Element id

ServiceRequest.requester.identifier.system

Short description

The namespace for the identifier value

Definition

Establishes the namespace for the value - that is, a URL that describes a set values that are unique.

Requirements

There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.

Comments

Identifier.system is always case sensitive.

Data type

uri

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

http://www.acme.com/identifiers/patient


Mappings
  • v2: CX.4 / EI-2-4
  • rim: II.root or Role.id.root
  • servd: ./IdentifierType
valueS Σ1..1string
There are no (further) constraints on this element
Element id

ServiceRequest.requester.identifier.value

Short description

The value that is unique

Definition

The portion of the identifier typically relevant to the user and which is unique within the context of the system.

Comments

If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

123456


Mappings
  • v2: CX.1 / EI.1
  • rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
  • servd: ./Value
periodΣ0..1Period
There are no (further) constraints on this element
Element id

ServiceRequest.requester.identifier.period

Short description

Time period when id is/was valid for use

Definition

Time period during which identifier is/was valid for use.

Data type

Period

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.7 + CX.8
  • rim: Role.effectiveTime or implied by context
  • servd: ./StartDate and ./EndDate
assignerΣ0..1Reference(Organization)
There are no (further) constraints on this element
Element id

ServiceRequest.requester.identifier.assigner

Short description

Organization that issued id (may be just text)

Definition

Organization that issued/manages the identifier.

Comments

The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.

Data type

Reference(Organization)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.4 / (CX.4,CX.9,CX.10)
  • rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • servd: ./IdentifierIssuingAuthority
displayΣ0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.requester.display

Short description

Text alternative for the resource

Definition

Plain text narrative that identifies the resource in addition to the resource reference.

Comments

This is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
performerTypeΣ0..1CodeableConcept
There are no (further) constraints on this element
Element id

ServiceRequest.performerType

Short description

Performer role

Alternate names

specialty

Definition

Desired type of performer for doing the requested service.

Comments

This is a role, not a participation type. In other words, does not describe the task but describes the capacity. For example, “compounding pharmacy”, “psychiatrist” or “internal referral”.

Data type

CodeableConcept

Binding

Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc.

ParticipantRoles (example)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.performerType
  • w5: FiveWs.actor
  • v2: PRT, RF!-3
  • rim: .participation[typeCode=PRF].role[scoper.determinerCode=KIND].code
performerS Σ1..*Reference(PractitionerRole | HealthcareService)Element id

ServiceRequest.performer

Short description

Requested performer

Alternate names

request recipient

Definition

The desired performer for doing the requested service. For example, the surgeon, dermatopathologist, endoscopist, etc.

Comments

If multiple performers are present, it is interpreted as a list of alternative performers without any preference regardless of order. If order of preference is needed use the request-performerOrder extension. Use CareTeam to represent a group of performers (for example, Practitioner A and Practitioner B).

Data type

Reference(PractitionerRole | HealthcareService)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.performer
  • w5: FiveWs.actor
  • v2: PRT, Practitioner: PRD-2/PRD-7 where PRD-3 = RT; Organization: PRD-10 where PRD-3 = RT
  • rim: .participation[typeCode=PRF].role[scoper.determinerCode=INSTANCE]
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.performer.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*ExtensionElement id

ServiceRequest.performer.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
PerformerIdentifierI0..1Extension(Identifier)Element id

ServiceRequest.performer.extension:PerformerIdentifier

Short description

Optional Extensions Element

Alternate names

extensions, user content

Definition

Optional Extension Element - found in all resources.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension(Identifier)

Extension URL

http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-performer-identifier-EXT

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
  • rim: N/A
referenceS Σ I0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.performer.reference

Short description

Literal reference, Relative, internal or absolute URL

Definition

A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.

Comments

Using absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries. Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
typeΣ0..1uriBinding
There are no (further) constraints on this element
Element id

ServiceRequest.performer.type

Short description

Type the reference refers to (e.g. "Patient")

Definition

The expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.

The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).

Comments

This element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified.

Data type

uri

Binding

Aa resource (or, for logical models, the URI of the logical model).

ResourceType (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
identifierS Σ0..1Identifier
There are no (further) constraints on this element
Element id

ServiceRequest.performer.identifier

Short description

Logical reference, when literal reference is not known

Definition

An identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.

Comments

When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.

When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference

Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.

Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).

Data type

Identifier

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: .identifier
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.performer.identifier.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*Extension
There are no (further) constraints on this element
Element id

ServiceRequest.performer.identifier.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
useΣ ?!0..1codeBinding
There are no (further) constraints on this element
Element id

ServiceRequest.performer.identifier.use

Short description

usual | official | temp | secondary | old (If known)

Definition

The purpose of this identifier.

Requirements

Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.

Comments

Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.

Data type

code

Binding

Identifies the purpose for this identifier, if known .

IdentifierUse (required)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: N/A
  • rim: Role.code or implied by context
typeΣ0..1CodeableConceptBinding
There are no (further) constraints on this element
Element id

ServiceRequest.performer.identifier.type

Short description

Description of identifier

Definition

A coded type for the identifier that can be used to determine which identifier to use for a specific purpose.

Requirements

Allows users to make use of identifiers when the identifier system is not known.

Comments

This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.

Data type

CodeableConcept

Binding

A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

Identifier Type Codes (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.5
  • rim: Role.code or implied by context
systemS Σ1..1uri
There are no (further) constraints on this element
Element id

ServiceRequest.performer.identifier.system

Short description

The namespace for the identifier value

Definition

Establishes the namespace for the value - that is, a URL that describes a set values that are unique.

Requirements

There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.

Comments

Identifier.system is always case sensitive.

Data type

uri

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

http://www.acme.com/identifiers/patient


Mappings
  • v2: CX.4 / EI-2-4
  • rim: II.root or Role.id.root
  • servd: ./IdentifierType
valueS Σ1..1string
There are no (further) constraints on this element
Element id

ServiceRequest.performer.identifier.value

Short description

The value that is unique

Definition

The portion of the identifier typically relevant to the user and which is unique within the context of the system.

Comments

If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

123456


Mappings
  • v2: CX.1 / EI.1
  • rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
  • servd: ./Value
periodΣ0..1Period
There are no (further) constraints on this element
Element id

ServiceRequest.performer.identifier.period

Short description

Time period when id is/was valid for use

Definition

Time period during which identifier is/was valid for use.

Data type

Period

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.7 + CX.8
  • rim: Role.effectiveTime or implied by context
  • servd: ./StartDate and ./EndDate
assignerΣ0..1Reference(Organization)
There are no (further) constraints on this element
Element id

ServiceRequest.performer.identifier.assigner

Short description

Organization that issued id (may be just text)

Definition

Organization that issued/manages the identifier.

Comments

The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.

Data type

Reference(Organization)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.4 / (CX.4,CX.9,CX.10)
  • rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • servd: ./IdentifierIssuingAuthority
displayΣ0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.performer.display

Short description

Text alternative for the resource

Definition

Plain text narrative that identifies the resource in addition to the resource reference.

Comments

This is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
locationCodeΣ0..*CodeableConcept
There are no (further) constraints on this element
Element id

ServiceRequest.locationCode

Short description

Requested location

Definition

The preferred location(s) where the procedure should actually happen in coded or free text form. E.g. at home or nursing day care center.

Data type

CodeableConcept

Binding

A location type where services are delivered.

v3.ServiceDeliveryLocationRoleType (example)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • w5: FiveWs.actor
  • rim: .participation[typeCode=LOC].role[scoper.determinerCode=KIND].code
locationReferenceΣ0..*Reference(Location)
There are no (further) constraints on this element
Element id

ServiceRequest.locationReference

Short description

Requested location

Definition

A reference to the the preferred location(s) where the procedure should actually happen. E.g. at home or nursing day care center.

Data type

Reference(Location)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • w5: FiveWs.actor
  • rim: .participation[typeCode=LOC].role[scoper.determinerCode=INSTANCE]
reasonCodeS Σ0..*CodeableConceptBindingElement id

ServiceRequest.reasonCode

Short description

Explanation/Justification for procedure or service

Definition

An explanation or justification for why this service is being requested in coded or textual form. This is often for billing purposes. May relate to the resources referred to in supportingInfo.

Comments

This element represents why the referral is being made and may be used to decide how the service will be performed, or even if it will be performed at all. Use CodeableConcept.text element if the data is free (uncoded) text as shown in the CT Scan example.

Data type

CodeableConcept

Binding

Diagnosis or problem codes justifying the reason for requesting the service investigation.

ProcedureReasonCodes (preferred)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.reasonCode
  • w5: FiveWs.why[x]
  • v2: ORC.16, RF1-10
  • rim: .reasonCode
reasonReferenceΣ0..*Reference(Condition | Observation | DiagnosticReport | DocumentReference)
There are no (further) constraints on this element
Element id

ServiceRequest.reasonReference

Short description

Explanation/Justification for service or service

Definition

Indicates another resource that provides a justification for why this service is being requested. May relate to the resources referred to in supportingInfo.

Comments

This element represents why the referral is being made and may be used to decide how the service will be performed, or even if it will be performed at all. To be as specific as possible, a reference to Observation or Condition should be used if available. Otherwise when referencing DiagnosticReport it should contain a finding in DiagnosticReport.conclusion and/or DiagnosticReport.conclusionCode. When using a reference to DocumentReference, the target document should contain clear findings language providing the relevant reason for this service request. Use the CodeableConcept text element in ServiceRequest.reasonCode if the data is free (uncoded) text as shown in the CT Scan example.

Data type

Reference(Condition | Observation | DiagnosticReport | DocumentReference)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.reasonReference
  • w5: FiveWs.why[x]
  • v2: ORC.16
  • rim: .outboundRelationship[typeCode=RSON].target
insurance0..*Reference(Coverage | ClaimResponse)
There are no (further) constraints on this element
Element id

ServiceRequest.insurance

Short description

Associated insurance coverage

Definition

Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be needed for delivering the requested service.

Data type

Reference(Coverage | ClaimResponse)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.insurance
  • v2: IN1/IN2
  • rim: .outboundRelationship[typeCode=COVBY].target
supportingInfoS0..*Reference(Resource | DocumentReference | Communication | QuestionnaireResponse | ConditionPSCA | AllergyIntolerancePSCA)Element id

ServiceRequest.supportingInfo

Short description

Additional clinical information

Alternate names

Ask at order entry question, AOE

Definition

Additional clinical information about the patient or specimen that may influence the services or their interpretations. This information includes diagnosis, clinical findings and other observations. In laboratory ordering these are typically referred to as "ask at order entry questions (AOEs)". This includes observations explicitly requested by the producer (filler) to provide context or supporting information needed to complete the order. For example, reporting the amount of inspired oxygen for blood gas measurements.

Comments

To represent information about how the services are to be delivered use the instructions element. This element can be used to provide a Patient Summary as well.

Data type

Reference(Resource | DocumentReference | Communication | QuestionnaireResponse | ConditionPSCA | AllergyIntolerancePSCA)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.supportingInfo
  • v2: Accompanying segments
  • rim: .outboundRelationship[typeCode=PERT].target
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*Extension
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
referenceS Σ I0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.reference

Short description

Literal reference, Relative, internal or absolute URL

Definition

A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.

Comments

Using absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries. Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
typeΣ0..1uriBinding
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.type

Short description

Type the reference refers to (e.g. "Patient")

Definition

The expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.

The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).

Comments

This element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified.

Data type

uri

Binding

Aa resource (or, for logical models, the URI of the logical model).

ResourceType (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
identifierS Σ0..1Identifier
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.identifier

Short description

Logical reference, when literal reference is not known

Definition

An identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.

Comments

When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.

When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference

Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.

Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).

Data type

Identifier

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: .identifier
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.identifier.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*Extension
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.identifier.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
useΣ ?!0..1codeBinding
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.identifier.use

Short description

usual | official | temp | secondary | old (If known)

Definition

The purpose of this identifier.

Requirements

Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.

Comments

Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.

Data type

code

Binding

Identifies the purpose for this identifier, if known .

IdentifierUse (required)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: N/A
  • rim: Role.code or implied by context
typeΣ0..1CodeableConceptBinding
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.identifier.type

Short description

Description of identifier

Definition

A coded type for the identifier that can be used to determine which identifier to use for a specific purpose.

Requirements

Allows users to make use of identifiers when the identifier system is not known.

Comments

This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.

Data type

CodeableConcept

Binding

A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

Identifier Type Codes (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.5
  • rim: Role.code or implied by context
systemS Σ1..1uri
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.identifier.system

Short description

The namespace for the identifier value

Definition

Establishes the namespace for the value - that is, a URL that describes a set values that are unique.

Requirements

There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.

Comments

Identifier.system is always case sensitive.

Data type

uri

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

http://www.acme.com/identifiers/patient


Mappings
  • v2: CX.4 / EI-2-4
  • rim: II.root or Role.id.root
  • servd: ./IdentifierType
valueS Σ1..1string
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.identifier.value

Short description

The value that is unique

Definition

The portion of the identifier typically relevant to the user and which is unique within the context of the system.

Comments

If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

123456


Mappings
  • v2: CX.1 / EI.1
  • rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
  • servd: ./Value
periodΣ0..1Period
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.identifier.period

Short description

Time period when id is/was valid for use

Definition

Time period during which identifier is/was valid for use.

Data type

Period

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.7 + CX.8
  • rim: Role.effectiveTime or implied by context
  • servd: ./StartDate and ./EndDate
assignerΣ0..1Reference(Organization)
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.identifier.assigner

Short description

Organization that issued id (may be just text)

Definition

Organization that issued/manages the identifier.

Comments

The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.

Data type

Reference(Organization)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.4 / (CX.4,CX.9,CX.10)
  • rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • servd: ./IdentifierIssuingAuthority
displayΣ0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.supportingInfo.display

Short description

Text alternative for the resource

Definition

Plain text narrative that identifies the resource in addition to the resource reference.

Comments

This is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
specimenΣ0..*Reference(Specimen)
There are no (further) constraints on this element
Element id

ServiceRequest.specimen

Short description

Procedure Samples

Definition

One or more specimens that the laboratory procedure will use.

Comments

Many diagnostic procedures need a specimen, but the request itself is not actually about the specimen. This element is for when the diagnostic is requested on already existing specimens and the request points to the specimen it applies to. Conversely, if the request is entered first with an unknown specimen, then the Specimen resource points to the ServiceRequest.

Data type

Reference(Specimen)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: SPM
  • rim: .participation[typeCode=SPC].role
bodySiteΣ0..*CodeableConcept
There are no (further) constraints on this element
Element id

ServiceRequest.bodySite

Short description

Location on Body

Alternate names

location

Definition

Anatomic location where the procedure should be performed. This is the target site.

Requirements

Knowing where the procedure is performed is important for tracking if multiple sites are possible.

Comments

Only used if not implicit in the code found in ServiceRequest.code. If the use case requires BodySite to be handled as a separate resource instead of an inline coded element (e.g. to identify and track separately) then use the standard extension procedure-targetBodyStructure.

Data type

CodeableConcept

Binding

Codes describing anatomical locations. May include laterality.

SNOMEDCTBodyStructures (example)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: SPM
  • rim: targetSiteCode
  • quick: Procedure.targetBodySite
noteS0..*Annotation
There are no (further) constraints on this element
Element id

ServiceRequest.note

Short description

Comments

Definition

Any other notes and comments made about the service request. For example, internal billing notes.

Data type

Annotation

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.note
  • v2: NTE
  • rim: .inboundRelationship(typeCode=SUBJ].source[classCode=ANNGEN, moodCode=EVN].value[xsi:type=ST]
  • quick: ClinicalStatement.additionalText
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.note.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*Extension
There are no (further) constraints on this element
Element id

ServiceRequest.note.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
author[x]Σ0..1Element id

ServiceRequest.note.author[x]

Short description

Individual responsible for the annotation

Definition

The individual responsible for making the annotation.

Comments

Organization is used when there's no need for specific attribution as to who made the comment.

Sliced:

Unordered, Open, by $this(Type)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: N/A
  • rim: Act.participant[typeCode=AUT].role
(All Slices)
There are no (further) constraints on this element
authorStringstring
There are no (further) constraints on this element
Data type

string

authorReferenceΣ0..1Reference(Practitioner | Organization | Patient)Element id

ServiceRequest.note.author[x]:authorReference

Short description

Individual responsible for the annotation

Definition

The individual responsible for making the annotation.

Comments

Organization is used when there's no need for specific attribution as to who made the comment.

Data type

Reference(Practitioner | Organization | Patient)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: N/A
  • rim: Act.participant[typeCode=AUT].role
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*Extension
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
referenceS Σ I0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.reference

Short description

Literal reference, Relative, internal or absolute URL

Definition

A reference to a location at which the other resource is found. The reference may be a relative reference, in which case it is relative to the service base URL, or an absolute URL that resolves to the location where the resource is found. The reference may be version specific or not. If the reference is not to a FHIR RESTful server, then it should be assumed to be version specific. Internal fragment references (start with '#') refer to contained resources.

Comments

Using absolute URLs provides a stable scalable approach suitable for a cloud/web context, while using relative/logical references provides a flexible approach suitable for use when trading across closed eco-system boundaries. Absolute URLs do not need to point to a FHIR RESTful server, though this is the preferred approach. If the URL conforms to the structure "/[type]/[id]" then it should be assumed that the reference is to a FHIR RESTful server.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
typeΣ0..1uriBinding
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.type

Short description

Type the reference refers to (e.g. "Patient")

Definition

The expected type of the target of the reference. If both Reference.type and Reference.reference are populated and Reference.reference is a FHIR URL, both SHALL be consistent.

The type is the Canonical URL of Resource Definition that is the type this reference refers to. References are URLs that are relative to http://hl7.org/fhir/StructureDefinition/ e.g. "Patient" is a reference to http://hl7.org/fhir/StructureDefinition/Patient. Absolute URLs are only allowed for logical models (and can only be used in references in logical models, not resources).

Comments

This element is used to indicate the type of the target of the reference. This may be used which ever of the other elements are populated (or not). In some cases, the type of the target may be determined by inspection of the reference (e.g. a RESTful URL) or by resolving the target of the reference; if both the type and a reference is provided, the reference SHALL resolve to a resource of the same type as that specified.

Data type

uri

Binding

Aa resource (or, for logical models, the URI of the logical model).

ResourceType (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
identifierS Σ0..1Identifier
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.identifier

Short description

Logical reference, when literal reference is not known

Definition

An identifier for the target resource. This is used when there is no way to reference the other resource directly, either because the entity it represents is not available through a FHIR server, or because there is no way for the author of the resource to convert a known identifier to an actual location. There is no requirement that a Reference.identifier point to something that is actually exposed as a FHIR instance, but it SHALL point to a business concept that would be expected to be exposed as a FHIR instance, and that instance would need to be of a FHIR resource type allowed by the reference.

Comments

When an identifier is provided in place of a reference, any system processing the reference will only be able to resolve the identifier to a reference if it understands the business context in which the identifier is used. Sometimes this is global (e.g. a national identifier) but often it is not. For this reason, none of the useful mechanisms described for working with references (e.g. chaining, includes) are possible, nor should servers be expected to be able resolve the reference. Servers may accept an identifier based reference untouched, resolve it, and/or reject it - see CapabilityStatement.rest.resource.referencePolicy.

When both an identifier and a literal reference are provided, the literal reference is preferred. Applications processing the resource are allowed - but not required - to check that the identifier matches the literal reference

Applications converting a logical reference to a literal reference may choose to leave the logical reference present, or remove it.

Reference is intended to point to a structure that can potentially be expressed as a FHIR resource, though there is no need for it to exist as an actual FHIR resource instance - except in as much as an application wishes to actual find the target of the reference. The content referred to be the identifier must meet the logical constraints implied by any limitations on what resource types are permitted for the reference. For example, it would not be legitimate to send the identifier for a drug prescription if the type were Reference(Observation|DiagnosticReport). One of the use-cases for Reference.identifier is the situation where no FHIR representation exists (where the type is Reference (Any).

Data type

Identifier

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: .identifier
id0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.identifier.id

Short description

Unique id for inter-element referencing

Definition

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

Data type

string

Mappings
  • rim: n/a
extensionI0..*Extension
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.identifier.extension

Short description

Additional content defined by implementations

Alternate names

extensions, user content

Definition

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

Comments

There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions. The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.

Data type

Extension

Sliced:

Unordered, Open, by url(Value)

Extensions are always sliced by (at least) url
Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
  • ext-1: Must have either extensions or value[x], not both
    extension.exists() != value.exists()
Mappings
  • rim: n/a
useΣ ?!0..1codeBinding
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.identifier.use

Short description

usual | official | temp | secondary | old (If known)

Definition

The purpose of this identifier.

Requirements

Allows the appropriate identifier for a particular context of use to be selected from among a set of identifiers.

Comments

Applications can assume that an identifier is permanent unless it explicitly says that it is temporary.

Data type

code

Binding

Identifies the purpose for this identifier, if known .

IdentifierUse (required)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: N/A
  • rim: Role.code or implied by context
typeΣ0..1CodeableConceptBinding
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.identifier.type

Short description

Description of identifier

Definition

A coded type for the identifier that can be used to determine which identifier to use for a specific purpose.

Requirements

Allows users to make use of identifiers when the identifier system is not known.

Comments

This element deals only with general categories of identifiers. It SHOULD not be used for codes that correspond 1..1 with the Identifier.system. Some identifiers may fall into multiple categories due to common usage. Where the system is known, a type is unnecessary because the type is always part of the system definition. However systems often need to handle identifiers where the system is not known. There is not a 1:1 relationship between type and system, since many different systems have the same type.

Data type

CodeableConcept

Binding

A coded type for an identifier that can be used to determine which identifier to use for a specific purpose.

Identifier Type Codes (extensible)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.5
  • rim: Role.code or implied by context
systemS Σ1..1uri
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.identifier.system

Short description

The namespace for the identifier value

Definition

Establishes the namespace for the value - that is, a URL that describes a set values that are unique.

Requirements

There are many sets of identifiers. To perform matching of two identifiers, we need to know what set we're dealing with. The system identifies a particular set of unique identifiers.

Comments

Identifier.system is always case sensitive.

Data type

uri

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

http://www.acme.com/identifiers/patient


Mappings
  • v2: CX.4 / EI-2-4
  • rim: II.root or Role.id.root
  • servd: ./IdentifierType
valueS Σ1..1string
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.identifier.value

Short description

The value that is unique

Definition

The portion of the identifier typically relevant to the user and which is unique within the context of the system.

Comments

If the value is a full URI, then the system SHALL be urn:ietf:rfc:3986. The value's primary purpose is computational mapping. As a result, it may be normalized for comparison purposes (e.g. removing non-significant whitespace, dashes, etc.) A value formatted for human display can be conveyed using the Rendered Value extension. Identifier.value is to be treated as case sensitive unless knowledge of the Identifier.system allows the processer to be confident that non-case-sensitive processing is safe.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Examples
General

123456


Mappings
  • v2: CX.1 / EI.1
  • rim: II.extension or II.root if system indicates OID or GUID (Or Role.id.extension or root)
  • servd: ./Value
periodΣ0..1Period
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.identifier.period

Short description

Time period when id is/was valid for use

Definition

Time period during which identifier is/was valid for use.

Data type

Period

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.7 + CX.8
  • rim: Role.effectiveTime or implied by context
  • servd: ./StartDate and ./EndDate
assignerΣ0..1Reference(Organization)
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.identifier.assigner

Short description

Organization that issued id (may be just text)

Definition

Organization that issued/manages the identifier.

Comments

The Identifier.assigner may omit the .reference element and only contain a .display element reflecting the name or other textual information about the assigning organization.

Data type

Reference(Organization)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: CX.4 / (CX.4,CX.9,CX.10)
  • rim: II.assigningAuthorityName but note that this is an improper use by the definition of the field. Also Role.scoper
  • servd: ./IdentifierIssuingAuthority
displayΣ0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.note.author[x]:authorReference.display

Short description

Text alternative for the resource

Definition

Plain text narrative that identifies the resource in addition to the resource reference.

Comments

This is generally not the same as the Resource.text of the referenced resource. The purpose is to identify what's being referenced, not to fully describe it.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • rim: N/A
timeΣ0..1dateTime
There are no (further) constraints on this element
Element id

ServiceRequest.note.time

Short description

When the annotation was made

Definition

Indicates when this particular annotation was made.

Data type

dateTime

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: N/A
  • rim: Act.effectiveTime
textΣ1..1markdown
There are no (further) constraints on this element
Element id

ServiceRequest.note.text

Short description

The annotation - text content (as markdown)

Definition

The text of the annotation in markdown format.

Data type

markdown

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: N/A
  • rim: Act.text
patientInstructionΣ0..1string
There are no (further) constraints on this element
Element id

ServiceRequest.patientInstruction

Short description

Patient or consumer-oriented instructions

Definition

Instructions in terms that are understood by the patient or consumer.

Data type

string

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • v2: NTE
  • rim: .text
relevantHistory0..*Reference(Provenance)
There are no (further) constraints on this element
Element id

ServiceRequest.relevantHistory

Short description

Request provenance

Definition

Key events in the history of the request.

Comments

This might not include provenances for all versions of the request – only those deemed “relevant” or important. This SHALL NOT include the Provenance associated with this current version of the resource. (If that provenance is deemed to be a “relevant” change, it will need to be added as part of a later update. Until then, it can be queried directly as the Provenance that points to this version using _revinclude All Provenances should have some historical version of this Request as their subject.

Data type

Reference(Provenance)

Constraints
  • ele-1: All FHIR elements must have a @value or children
    hasValue() or (children().count() > id.count())
Mappings
  • workflow: Request.relevantHistory
  • v2: N/A
  • rim: .inboundRelationship(typeCode=SUBJ].source[classCode=CACT, moodCode=EVN]
<StructureDefinition xmlns="http://hl7.org/fhir">
    <id value="CA-eReC-ServiceRequest" />
    <url value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-ServiceRequest" />
    <name value="ServiceRequest" />
    <title value="ServiceRequest" />
    <status value="draft" />
    <description value="ServiceRequest is the main resource used to send all referral related information to the destination system." />
    <fhirVersion value="4.0.1" />
    <kind value="resource" />
    <abstract value="false" />
    <type value="ServiceRequest" />
    <baseDefinition value="http://hl7.org/fhir/StructureDefinition/ServiceRequest" />
    <derivation value="constraint" />
    <differential>
        <element id="ServiceRequest.extension">
            <path value="ServiceRequest.extension" />
            <slicing>
                <discriminator>
                    <type value="value" />
                    <path value="url" />
                </discriminator>
                <ordered value="false" />
                <rules value="open" />
            </slicing>
        </element>
        <element id="ServiceRequest.extension:PatientPresentLocation">
            <path value="ServiceRequest.extension" />
            <sliceName value="PatientPresentLocation" />
            <short value="USE CASE SUPPORT: Systems deployed in Ontario SHALL support" />
            <type>
                <code value="Extension" />
                <profile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Patient-Present-Location-EXT" />
            </type>
        </element>
        <element id="ServiceRequest.extension:DARC">
            <path value="ServiceRequest.extension" />
            <sliceName value="DARC" />
            <short value="USE CASE SUPPORT: Systems deployed in Ontario SHALL support" />
            <type>
                <code value="Extension" />
                <profile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/DARC-EXT" />
            </type>
        </element>
        <element id="ServiceRequest.extension:DART">
            <path value="ServiceRequest.extension" />
            <sliceName value="DART" />
            <short value="USE CASE SUPPORT: Systems deployed in Ontario SHALL support" />
            <type>
                <code value="Extension" />
                <profile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/DART-ext" />
            </type>
        </element>
        <element id="ServiceRequest.extension:RoutingOptions">
            <path value="ServiceRequest.extension" />
            <sliceName value="RoutingOptions" />
            <short value="USE CASE SUPPORT: Systems deployed in Ontario SHALL support" />
            <type>
                <code value="Extension" />
                <profile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/Routing-Options-EXT" />
            </type>
        </element>
        <element id="ServiceRequest.extension:CopiedParticipants">
            <path value="ServiceRequest.extension" />
            <sliceName value="CopiedParticipants" />
            <short value="USE CASE SUPPORT: Systems deployed in Ontario SHALL support" />
            <type>
                <code value="Extension" />
                <profile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-copied-participants-EXT" />
            </type>
        </element>
        <element id="ServiceRequest.extension:ServiceProviderPreference">
            <path value="ServiceRequest.extension" />
            <sliceName value="ServiceProviderPreference" />
            <short value="USE CASE SUPPORT: Systems deployed in Ontario SHALL support" />
            <type>
                <code value="Extension" />
                <profile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-ext-ServiceProviderPreference" />
            </type>
        </element>
        <element id="ServiceRequest.identifier">
            <path value="ServiceRequest.identifier" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.identifier.system">
            <path value="ServiceRequest.identifier.system" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.identifier.value">
            <path value="ServiceRequest.identifier.value" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.basedOn">
            <path value="ServiceRequest.basedOn" />
            <short value="&#120296;&#120294;&#120280; &#120278;&#120276;&#120294;&#120280; &#120294;&#120296;&#120291;&#120291;&#120290;&#120293;&#120295;: Systems that support routing/chaining/splitting SHALL support" />
            <max value="1" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-ServiceRequest" />
            </type>
        </element>
        <element id="ServiceRequest.basedOn.reference">
            <path value="ServiceRequest.basedOn.reference" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.basedOn.identifier">
            <path value="ServiceRequest.basedOn.identifier" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.basedOn.identifier.system">
            <path value="ServiceRequest.basedOn.identifier.system" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.basedOn.identifier.value">
            <path value="ServiceRequest.basedOn.identifier.value" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.replaces">
            <path value="ServiceRequest.replaces" />
            <short value="&#120296;&#120294;&#120280; &#120278;&#120276;&#120294;&#120280; &#120294;&#120296;&#120291;&#120291;&#120290;&#120293;&#120295;: Systems that support routing/chaining/splitting SHALL support" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-ServiceRequest" />
            </type>
        </element>
        <element id="ServiceRequest.replaces.reference">
            <path value="ServiceRequest.replaces.reference" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.replaces.identifier">
            <path value="ServiceRequest.replaces.identifier" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.replaces.identifier.system">
            <path value="ServiceRequest.replaces.identifier.system" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.replaces.identifier.value">
            <path value="ServiceRequest.replaces.identifier.value" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.requisition">
            <path value="ServiceRequest.requisition" />
            <short value="&#120296;&#120294;&#120280; &#120278;&#120276;&#120294;&#120280; &#120294;&#120296;&#120291;&#120291;&#120290;&#120293;&#120295;: Systems that support routing/chaining/splitting SHALL support" />
        </element>
        <element id="ServiceRequest.requisition.system">
            <path value="ServiceRequest.requisition.system" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.requisition.value">
            <path value="ServiceRequest.requisition.value" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.status">
            <path value="ServiceRequest.status" />
            <mustSupport value="true" />
            <binding>
                <strength value="required" />
                <valueSet value="http://hl7.org/fhir/ValueSet/request-status" />
            </binding>
        </element>
        <element id="ServiceRequest.intent">
            <path value="ServiceRequest.intent" />
            <fixedCode value="proposal" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.category">
            <path value="ServiceRequest.category" />
            <mustSupport value="true" />
            <binding>
                <strength value="preferred" />
                <valueSet value="http://fhir.infoway-inforoute.ca/ValueSet/interventioncodesubsetcare" />
            </binding>
        </element>
        <element id="ServiceRequest.code">
            <path value="ServiceRequest.code" />
            <short value="Note that the meaning of this field is to be used in conjunction with ServiceRequest.performer pointing to a HealthCareservice, and .code further specifies the service, for example code could be a specific procedure under the specificed HealthcareService (e.g., HealthcareService = Orthopaedic Surgeon, code=Knee Surgery)" />
            <mustSupport value="true" />
            <binding>
                <strength value="extensible" />
                <valueSet value="http://fhir.infoway-inforoute.ca/ValueSet/interventioncodesubsetcare" />
            </binding>
        </element>
        <element id="ServiceRequest.subject">
            <path value="ServiceRequest.subject" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Patient" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.subject.reference">
            <path value="ServiceRequest.subject.reference" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.subject.identifier">
            <path value="ServiceRequest.subject.identifier" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.subject.identifier.system">
            <path value="ServiceRequest.subject.identifier.system" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.subject.identifier.value">
            <path value="ServiceRequest.subject.identifier.value" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.authoredOn">
            <path value="ServiceRequest.authoredOn" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.requester">
            <path value="ServiceRequest.requester" />
            <min value="1" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-PractitionerRole" />
                <targetProfile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Patient" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.requester.extension">
            <path value="ServiceRequest.requester.extension" />
            <slicing>
                <discriminator>
                    <type value="value" />
                    <path value="url" />
                </discriminator>
                <ordered value="false" />
                <rules value="open" />
            </slicing>
        </element>
        <element id="ServiceRequest.requester.extension:ServiceRequesterDelegate">
            <path value="ServiceRequest.requester.extension" />
            <sliceName value="ServiceRequesterDelegate" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="Extension" />
                <profile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-ext-ServiceRequesterDelegate" />
            </type>
        </element>
        <element id="ServiceRequest.requester.reference">
            <path value="ServiceRequest.requester.reference" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.requester.identifier">
            <path value="ServiceRequest.requester.identifier" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.requester.identifier.system">
            <path value="ServiceRequest.requester.identifier.system" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.requester.identifier.value">
            <path value="ServiceRequest.requester.identifier.value" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.performer">
            <path value="ServiceRequest.performer" />
            <min value="1" />
            <max value="*" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-PractitionerRole" />
                <targetProfile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-HealthcareService" />
            </type>
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.performer.extension">
            <path value="ServiceRequest.performer.extension" />
            <slicing>
                <discriminator>
                    <type value="value" />
                    <path value="url" />
                </discriminator>
                <ordered value="false" />
                <rules value="open" />
            </slicing>
        </element>
        <element id="ServiceRequest.performer.extension:PerformerIdentifier">
            <path value="ServiceRequest.performer.extension" />
            <sliceName value="PerformerIdentifier" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="Extension" />
                <profile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-performer-identifier-EXT" />
            </type>
        </element>
        <element id="ServiceRequest.performer.reference">
            <path value="ServiceRequest.performer.reference" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.performer.identifier">
            <path value="ServiceRequest.performer.identifier" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.performer.identifier.system">
            <path value="ServiceRequest.performer.identifier.system" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.performer.identifier.value">
            <path value="ServiceRequest.performer.identifier.value" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.reasonCode">
            <path value="ServiceRequest.reasonCode" />
            <mustSupport value="true" />
            <binding>
                <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName">
                    <valueString value="ServiceRequestReason" />
                </extension>
                <strength value="preferred" />
                <description value="Diagnosis or problem codes justifying the reason for requesting the service investigation." />
                <valueSet value="http://hl7.org/fhir/ValueSet/procedure-reason" />
            </binding>
        </element>
        <element id="ServiceRequest.supportingInfo">
            <path value="ServiceRequest.supportingInfo" />
            <definition value="Additional clinical information about the patient or specimen that may influence the services or their interpretations. This information includes diagnosis, clinical findings and other observations.  In laboratory ordering these are typically referred to as &quot;ask at order entry questions (AOEs)&quot;.  This includes observations explicitly requested by the producer (filler) to provide context or supporting information needed to complete the order. For example,  reporting the amount of inspired oxygen for blood gas measurements." />
            <comment value="To represent information about how the services are to be delivered use the `instructions` element. This element can be used to provide a Patient Summary as well." />
            <type>
                <code value="Reference" />
                <targetProfile value="http://hl7.org/fhir/StructureDefinition/Resource">
                    <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support">
                        <valueBoolean value="false" />
                    </extension>
                </targetProfile>
                <targetProfile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-DocumentReference">
                    <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support">
                        <valueBoolean value="true" />
                    </extension>
                </targetProfile>
                <targetProfile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Communication">
                    <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support">
                        <valueBoolean value="true" />
                    </extension>
                </targetProfile>
                <targetProfile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-QuestionnaireResponse">
                    <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support">
                        <valueBoolean value="true" />
                    </extension>
                </targetProfile>
                <targetProfile value="http://fhir.infoway-inforoute.ca/io/psca/StructureDefinition/condition-ca-ps">
                    <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support">
                        <valueBoolean value="false" />
                    </extension>
                </targetProfile>
                <targetProfile value="http://fhir.infoway-inforoute.ca/io/psca/StructureDefinition/allergyintolerance-ca-ps">
                    <extension url="http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support">
                        <valueBoolean value="false" />
                    </extension>
                </targetProfile>
            </type>
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.supportingInfo.reference">
            <path value="ServiceRequest.supportingInfo.reference" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.supportingInfo.identifier">
            <path value="ServiceRequest.supportingInfo.identifier" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.supportingInfo.identifier.system">
            <path value="ServiceRequest.supportingInfo.identifier.system" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.supportingInfo.identifier.value">
            <path value="ServiceRequest.supportingInfo.identifier.value" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.note">
            <path value="ServiceRequest.note" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.note.author[x]">
            <path value="ServiceRequest.note.author[x]" />
            <slicing>
                <discriminator>
                    <type value="type" />
                    <path value="$this" />
                </discriminator>
                <ordered value="false" />
                <rules value="open" />
            </slicing>
        </element>
        <element id="ServiceRequest.note.author[x]:authorReference">
            <path value="ServiceRequest.note.author[x]" />
            <sliceName value="authorReference" />
            <min value="0" />
            <max value="1" />
            <type>
                <code value="Reference" />
                <targetProfile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Practitioner" />
                <targetProfile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Organization" />
                <targetProfile value="http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Patient" />
            </type>
        </element>
        <element id="ServiceRequest.note.author[x]:authorReference.reference">
            <path value="ServiceRequest.note.author[x].reference" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.note.author[x]:authorReference.identifier">
            <path value="ServiceRequest.note.author[x].identifier" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.note.author[x]:authorReference.identifier.system">
            <path value="ServiceRequest.note.author[x].identifier.system" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
        <element id="ServiceRequest.note.author[x]:authorReference.identifier.value">
            <path value="ServiceRequest.note.author[x].identifier.value" />
            <min value="1" />
            <mustSupport value="true" />
        </element>
    </differential>
</StructureDefinition>
{
    "resourceType": "StructureDefinition",
    "id": "CA-eReC-ServiceRequest",
    "url": "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-ServiceRequest",
    "name": "ServiceRequest",
    "title": "ServiceRequest",
    "status": "draft",
    "description": "ServiceRequest is the main resource used to send all referral related information to the destination system.",
    "fhirVersion": "4.0.1",
    "kind": "resource",
    "abstract": false,
    "type": "ServiceRequest",
    "baseDefinition": "http://hl7.org/fhir/StructureDefinition/ServiceRequest",
    "derivation": "constraint",
    "differential": {
        "element":  [
            {
                "id": "ServiceRequest.extension",
                "path": "ServiceRequest.extension",
                "slicing": {
                    "discriminator":  [
                        {
                            "type": "value",
                            "path": "url"
                        }
                    ],
                    "ordered": false,
                    "rules": "open"
                }
            },
            {
                "id": "ServiceRequest.extension:PatientPresentLocation",
                "path": "ServiceRequest.extension",
                "sliceName": "PatientPresentLocation",
                "short": "USE CASE SUPPORT: Systems deployed in Ontario SHALL support",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Patient-Present-Location-EXT"
                        ]
                    }
                ]
            },
            {
                "id": "ServiceRequest.extension:DARC",
                "path": "ServiceRequest.extension",
                "sliceName": "DARC",
                "short": "USE CASE SUPPORT: Systems deployed in Ontario SHALL support",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/DARC-EXT"
                        ]
                    }
                ]
            },
            {
                "id": "ServiceRequest.extension:DART",
                "path": "ServiceRequest.extension",
                "sliceName": "DART",
                "short": "USE CASE SUPPORT: Systems deployed in Ontario SHALL support",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/DART-ext"
                        ]
                    }
                ]
            },
            {
                "id": "ServiceRequest.extension:RoutingOptions",
                "path": "ServiceRequest.extension",
                "sliceName": "RoutingOptions",
                "short": "USE CASE SUPPORT: Systems deployed in Ontario SHALL support",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/Routing-Options-EXT"
                        ]
                    }
                ]
            },
            {
                "id": "ServiceRequest.extension:CopiedParticipants",
                "path": "ServiceRequest.extension",
                "sliceName": "CopiedParticipants",
                "short": "USE CASE SUPPORT: Systems deployed in Ontario SHALL support",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-copied-participants-EXT"
                        ]
                    }
                ]
            },
            {
                "id": "ServiceRequest.extension:ServiceProviderPreference",
                "path": "ServiceRequest.extension",
                "sliceName": "ServiceProviderPreference",
                "short": "USE CASE SUPPORT: Systems deployed in Ontario SHALL support",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-ext-ServiceProviderPreference"
                        ]
                    }
                ]
            },
            {
                "id": "ServiceRequest.identifier",
                "path": "ServiceRequest.identifier",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.identifier.system",
                "path": "ServiceRequest.identifier.system",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.identifier.value",
                "path": "ServiceRequest.identifier.value",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.basedOn",
                "path": "ServiceRequest.basedOn",
                "short": "𝗨𝗦𝗘 𝗖𝗔𝗦𝗘 𝗦𝗨𝗣𝗣𝗢𝗥𝗧: Systems that support routing/chaining/splitting SHALL support",
                "max": "1",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-ServiceRequest"
                        ]
                    }
                ]
            },
            {
                "id": "ServiceRequest.basedOn.reference",
                "path": "ServiceRequest.basedOn.reference",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.basedOn.identifier",
                "path": "ServiceRequest.basedOn.identifier",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.basedOn.identifier.system",
                "path": "ServiceRequest.basedOn.identifier.system",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.basedOn.identifier.value",
                "path": "ServiceRequest.basedOn.identifier.value",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.replaces",
                "path": "ServiceRequest.replaces",
                "short": "𝗨𝗦𝗘 𝗖𝗔𝗦𝗘 𝗦𝗨𝗣𝗣𝗢𝗥𝗧: Systems that support routing/chaining/splitting SHALL support",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-ServiceRequest"
                        ]
                    }
                ]
            },
            {
                "id": "ServiceRequest.replaces.reference",
                "path": "ServiceRequest.replaces.reference",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.replaces.identifier",
                "path": "ServiceRequest.replaces.identifier",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.replaces.identifier.system",
                "path": "ServiceRequest.replaces.identifier.system",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.replaces.identifier.value",
                "path": "ServiceRequest.replaces.identifier.value",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.requisition",
                "path": "ServiceRequest.requisition",
                "short": "𝗨𝗦𝗘 𝗖𝗔𝗦𝗘 𝗦𝗨𝗣𝗣𝗢𝗥𝗧: Systems that support routing/chaining/splitting SHALL support"
            },
            {
                "id": "ServiceRequest.requisition.system",
                "path": "ServiceRequest.requisition.system",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.requisition.value",
                "path": "ServiceRequest.requisition.value",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.status",
                "path": "ServiceRequest.status",
                "mustSupport": true,
                "binding": {
                    "strength": "required",
                    "valueSet": "http://hl7.org/fhir/ValueSet/request-status"
                }
            },
            {
                "id": "ServiceRequest.intent",
                "path": "ServiceRequest.intent",
                "fixedCode": "proposal",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.category",
                "path": "ServiceRequest.category",
                "mustSupport": true,
                "binding": {
                    "strength": "preferred",
                    "valueSet": "http://fhir.infoway-inforoute.ca/ValueSet/interventioncodesubsetcare"
                }
            },
            {
                "id": "ServiceRequest.code",
                "path": "ServiceRequest.code",
                "short": "Note that the meaning of this field is to be used in conjunction with ServiceRequest.performer pointing to a HealthCareservice, and .code further specifies the service, for example code could be a specific procedure under the specificed HealthcareService (e.g., HealthcareService = Orthopaedic Surgeon, code=Knee Surgery)",
                "mustSupport": true,
                "binding": {
                    "strength": "extensible",
                    "valueSet": "http://fhir.infoway-inforoute.ca/ValueSet/interventioncodesubsetcare"
                }
            },
            {
                "id": "ServiceRequest.subject",
                "path": "ServiceRequest.subject",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Patient"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.subject.reference",
                "path": "ServiceRequest.subject.reference",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.subject.identifier",
                "path": "ServiceRequest.subject.identifier",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.subject.identifier.system",
                "path": "ServiceRequest.subject.identifier.system",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.subject.identifier.value",
                "path": "ServiceRequest.subject.identifier.value",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.authoredOn",
                "path": "ServiceRequest.authoredOn",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.requester",
                "path": "ServiceRequest.requester",
                "min": 1,
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-PractitionerRole",
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Patient"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.requester.extension",
                "path": "ServiceRequest.requester.extension",
                "slicing": {
                    "discriminator":  [
                        {
                            "type": "value",
                            "path": "url"
                        }
                    ],
                    "ordered": false,
                    "rules": "open"
                }
            },
            {
                "id": "ServiceRequest.requester.extension:ServiceRequesterDelegate",
                "path": "ServiceRequest.requester.extension",
                "sliceName": "ServiceRequesterDelegate",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-ext-ServiceRequesterDelegate"
                        ]
                    }
                ]
            },
            {
                "id": "ServiceRequest.requester.reference",
                "path": "ServiceRequest.requester.reference",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.requester.identifier",
                "path": "ServiceRequest.requester.identifier",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.requester.identifier.system",
                "path": "ServiceRequest.requester.identifier.system",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.requester.identifier.value",
                "path": "ServiceRequest.requester.identifier.value",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.performer",
                "path": "ServiceRequest.performer",
                "min": 1,
                "max": "*",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-PractitionerRole",
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-HealthcareService"
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.performer.extension",
                "path": "ServiceRequest.performer.extension",
                "slicing": {
                    "discriminator":  [
                        {
                            "type": "value",
                            "path": "url"
                        }
                    ],
                    "ordered": false,
                    "rules": "open"
                }
            },
            {
                "id": "ServiceRequest.performer.extension:PerformerIdentifier",
                "path": "ServiceRequest.performer.extension",
                "sliceName": "PerformerIdentifier",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "Extension",
                        "profile":  [
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-performer-identifier-EXT"
                        ]
                    }
                ]
            },
            {
                "id": "ServiceRequest.performer.reference",
                "path": "ServiceRequest.performer.reference",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.performer.identifier",
                "path": "ServiceRequest.performer.identifier",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.performer.identifier.system",
                "path": "ServiceRequest.performer.identifier.system",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.performer.identifier.value",
                "path": "ServiceRequest.performer.identifier.value",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.reasonCode",
                "path": "ServiceRequest.reasonCode",
                "mustSupport": true,
                "binding": {
                    "extension":  [
                        {
                            "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-bindingName",
                            "valueString": "ServiceRequestReason"
                        }
                    ],
                    "strength": "preferred",
                    "description": "Diagnosis or problem codes justifying the reason for requesting the service investigation.",
                    "valueSet": "http://hl7.org/fhir/ValueSet/procedure-reason"
                }
            },
            {
                "id": "ServiceRequest.supportingInfo",
                "path": "ServiceRequest.supportingInfo",
                "definition": "Additional clinical information about the patient or specimen that may influence the services or their interpretations. This information includes diagnosis, clinical findings and other observations.  In laboratory ordering these are typically referred to as \"ask at order entry questions (AOEs)\".  This includes observations explicitly requested by the producer (filler) to provide context or supporting information needed to complete the order. For example,  reporting the amount of inspired oxygen for blood gas measurements.",
                "comment": "To represent information about how the services are to be delivered use the `instructions` element. This element can be used to provide a Patient Summary as well.",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://hl7.org/fhir/StructureDefinition/Resource",
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-DocumentReference",
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Communication",
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-QuestionnaireResponse",
                            "http://fhir.infoway-inforoute.ca/io/psca/StructureDefinition/condition-ca-ps",
                            "http://fhir.infoway-inforoute.ca/io/psca/StructureDefinition/allergyintolerance-ca-ps"
                        ],
                        "_targetProfile":  [
                            {
                                "extension":  [
                                    {
                                        "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support",
                                        "valueBoolean": false
                                    }
                                ]
                            },
                            {
                                "extension":  [
                                    {
                                        "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support",
                                        "valueBoolean": true
                                    }
                                ]
                            },
                            {
                                "extension":  [
                                    {
                                        "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support",
                                        "valueBoolean": true
                                    }
                                ]
                            },
                            {
                                "extension":  [
                                    {
                                        "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support",
                                        "valueBoolean": true
                                    }
                                ]
                            },
                            {
                                "extension":  [
                                    {
                                        "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support",
                                        "valueBoolean": false
                                    }
                                ]
                            },
                            {
                                "extension":  [
                                    {
                                        "url": "http://hl7.org/fhir/StructureDefinition/elementdefinition-type-must-support",
                                        "valueBoolean": false
                                    }
                                ]
                            }
                        ]
                    }
                ],
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.supportingInfo.reference",
                "path": "ServiceRequest.supportingInfo.reference",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.supportingInfo.identifier",
                "path": "ServiceRequest.supportingInfo.identifier",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.supportingInfo.identifier.system",
                "path": "ServiceRequest.supportingInfo.identifier.system",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.supportingInfo.identifier.value",
                "path": "ServiceRequest.supportingInfo.identifier.value",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.note",
                "path": "ServiceRequest.note",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.note.author[x]",
                "path": "ServiceRequest.note.author[x]",
                "slicing": {
                    "discriminator":  [
                        {
                            "type": "type",
                            "path": "$this"
                        }
                    ],
                    "ordered": false,
                    "rules": "open"
                }
            },
            {
                "id": "ServiceRequest.note.author[x]:authorReference",
                "path": "ServiceRequest.note.author[x]",
                "sliceName": "authorReference",
                "min": 0,
                "max": "1",
                "type":  [
                    {
                        "code": "Reference",
                        "targetProfile":  [
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Practitioner",
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Organization",
                            "http://fhir.infoway-inforoute.ca/io/CA-eReC/StructureDefinition/CA-eReC-Patient"
                        ]
                    }
                ]
            },
            {
                "id": "ServiceRequest.note.author[x]:authorReference.reference",
                "path": "ServiceRequest.note.author[x].reference",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.note.author[x]:authorReference.identifier",
                "path": "ServiceRequest.note.author[x].identifier",
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.note.author[x]:authorReference.identifier.system",
                "path": "ServiceRequest.note.author[x].identifier.system",
                "min": 1,
                "mustSupport": true
            },
            {
                "id": "ServiceRequest.note.author[x]:authorReference.identifier.value",
                "path": "ServiceRequest.note.author[x].identifier.value",
                "min": 1,
                "mustSupport": true
            }
        ]
    }
}

Terminology bindings

PathConformanceValueSet
ServiceRequest.statusrequiredhttp://hl7.org/fhir/ValueSet/request-status
ServiceRequest.categorypreferredhttp://fhir.infoway-inforoute.ca/ValueSet/interventioncodesubsetcare
ServiceRequest.codeextensiblehttp://fhir.infoway-inforoute.ca/ValueSet/interventioncodesubsetcare
ServiceRequest.reasonCodepreferredhttp://hl7.org/fhir/ValueSet/procedure-reason

Constraints

PathIdGradeDetailsExpression
ServiceRequest; ServiceRequest; ServiceRequest; ServiceRequest; ServiceRequest; ServiceRequest; ServiceRequest.meta; ServiceRequest.implicitRules; ServiceRequest.language; ServiceRequest.text; ServiceRequest.extension; ServiceRequest.extension; ServiceRequest.extension:PatientPresentLocation; ServiceRequest.extension:PatientPresentLocation; ServiceRequest.extension:DARC; ServiceRequest.extension:DARC; ServiceRequest.extension:DART; ServiceRequest.extension:DART; ServiceRequest.extension:RoutingOptions; ServiceRequest.extension:RoutingOptions; ServiceRequest.extension:CopiedParticipants; ServiceRequest.extension:CopiedParticipants; ServiceRequest.extension:ServiceProviderPreference; ServiceRequest.extension:ServiceProviderPreference; ServiceRequest.modifierExtension; ServiceRequest.modifierExtension; ServiceRequest.identifier; ServiceRequest.identifier.extension; ServiceRequest.identifier.extension; ServiceRequest.identifier.use; ServiceRequest.identifier.type; ServiceRequest.identifier.system; ServiceRequest.identifier.value; ServiceRequest.identifier.period; ServiceRequest.identifier.assigner; ServiceRequest.instantiatesCanonical; ServiceRequest.instantiatesUri; ServiceRequest.basedOn; ServiceRequest.basedOn.extension; ServiceRequest.basedOn.extension; ServiceRequest.basedOn.reference; ServiceRequest.basedOn.type; ServiceRequest.basedOn.identifier; ServiceRequest.basedOn.identifier.extension; ServiceRequest.basedOn.identifier.extension; ServiceRequest.basedOn.identifier.use; ServiceRequest.basedOn.identifier.type; ServiceRequest.basedOn.identifier.system; ServiceRequest.basedOn.identifier.value; ServiceRequest.basedOn.identifier.period; ServiceRequest.basedOn.identifier.assigner; ServiceRequest.basedOn.display; ServiceRequest.replaces; ServiceRequest.replaces.extension; ServiceRequest.replaces.extension; ServiceRequest.replaces.reference; ServiceRequest.replaces.type; ServiceRequest.replaces.identifier; ServiceRequest.replaces.identifier.extension; ServiceRequest.replaces.identifier.extension; ServiceRequest.replaces.identifier.use; ServiceRequest.replaces.identifier.type; ServiceRequest.replaces.identifier.system; ServiceRequest.replaces.identifier.value; ServiceRequest.replaces.identifier.period; ServiceRequest.replaces.identifier.assigner; ServiceRequest.replaces.display; ServiceRequest.requisition; ServiceRequest.requisition.extension; ServiceRequest.requisition.extension; ServiceRequest.requisition.use; ServiceRequest.requisition.type; ServiceRequest.requisition.system; ServiceRequest.requisition.value; ServiceRequest.requisition.period; ServiceRequest.requisition.assigner; ServiceRequest.status; ServiceRequest.intent; ServiceRequest.category; ServiceRequest.priority; ServiceRequest.doNotPerform; ServiceRequest.code; ServiceRequest.orderDetail; ServiceRequest.quantity[x]; ServiceRequest.subject; ServiceRequest.subject.extension; ServiceRequest.subject.extension; ServiceRequest.subject.reference; ServiceRequest.subject.type; ServiceRequest.subject.identifier; ServiceRequest.subject.identifier.extension; ServiceRequest.subject.identifier.extension; ServiceRequest.subject.identifier.use; ServiceRequest.subject.identifier.type; ServiceRequest.subject.identifier.system; ServiceRequest.subject.identifier.value; ServiceRequest.subject.identifier.period; ServiceRequest.subject.identifier.assigner; ServiceRequest.subject.display; ServiceRequest.encounter; ServiceRequest.occurrence[x]; ServiceRequest.asNeeded[x]; ServiceRequest.authoredOn; ServiceRequest.requester; ServiceRequest.requester.extension; ServiceRequest.requester.extension; ServiceRequest.requester.extension:ServiceRequesterDelegate; ServiceRequest.requester.extension:ServiceRequesterDelegate; ServiceRequest.requester.reference; ServiceRequest.requester.type; ServiceRequest.requester.identifier; ServiceRequest.requester.identifier.extension; ServiceRequest.requester.identifier.extension; ServiceRequest.requester.identifier.use; ServiceRequest.requester.identifier.type; ServiceRequest.requester.identifier.system; ServiceRequest.requester.identifier.value; ServiceRequest.requester.identifier.period; ServiceRequest.requester.identifier.assigner; ServiceRequest.requester.display; ServiceRequest.performerType; ServiceRequest.performer; ServiceRequest.performer.extension; ServiceRequest.performer.extension; ServiceRequest.performer.extension:PerformerIdentifier; ServiceRequest.performer.extension:PerformerIdentifier; ServiceRequest.performer.reference; ServiceRequest.performer.type; ServiceRequest.performer.identifier; ServiceRequest.performer.identifier.extension; ServiceRequest.performer.identifier.extension; ServiceRequest.performer.identifier.use; ServiceRequest.performer.identifier.type; ServiceRequest.performer.identifier.system; ServiceRequest.performer.identifier.value; ServiceRequest.performer.identifier.period; ServiceRequest.performer.identifier.assigner; ServiceRequest.performer.display; ServiceRequest.locationCode; ServiceRequest.locationReference; ServiceRequest.reasonCode; ServiceRequest.reasonReference; ServiceRequest.insurance; ServiceRequest.supportingInfo; ServiceRequest.supportingInfo.extension; ServiceRequest.supportingInfo.extension; ServiceRequest.supportingInfo.reference; ServiceRequest.supportingInfo.type; ServiceRequest.supportingInfo.identifier; ServiceRequest.supportingInfo.identifier.extension; ServiceRequest.supportingInfo.identifier.extension; ServiceRequest.supportingInfo.identifier.use; ServiceRequest.supportingInfo.identifier.type; ServiceRequest.supportingInfo.identifier.system; ServiceRequest.supportingInfo.identifier.value; ServiceRequest.supportingInfo.identifier.period; ServiceRequest.supportingInfo.identifier.assigner; ServiceRequest.supportingInfo.display; ServiceRequest.specimen; ServiceRequest.bodySite; ServiceRequest.note; ServiceRequest.note.extension; ServiceRequest.note.extension; ServiceRequest.note.author[x]; ServiceRequest.note.author[x]:authorReference; ServiceRequest.note.author[x]:authorReference.extension; ServiceRequest.note.author[x]:authorReference.extension; ServiceRequest.note.author[x]:authorReference.reference; ServiceRequest.note.author[x]:authorReference.type; ServiceRequest.note.author[x]:authorReference.identifier; ServiceRequest.note.author[x]:authorReference.identifier.extension; ServiceRequest.note.author[x]:authorReference.identifier.extension; ServiceRequest.note.author[x]:authorReference.identifier.use; ServiceRequest.note.author[x]:authorReference.identifier.type; ServiceRequest.note.author[x]:authorReference.identifier.system; ServiceRequest.note.author[x]:authorReference.identifier.value; ServiceRequest.note.author[x]:authorReference.identifier.period; ServiceRequest.note.author[x]:authorReference.identifier.assigner; ServiceRequest.note.author[x]:authorReference.display; ServiceRequest.note.time; ServiceRequest.note.text; ServiceRequest.patientInstruction; ServiceRequest.relevantHistorydom-2; dom-3; dom-4; dom-5; dom-6; prr-1; ele-1; ele-1; ele-1; ele-1; ele-1; ext-1; ele-1; ext-1; ele-1; ext-1; ele-1; ext-1; ele-1; ext-1; ele-1; ext-1; ele-1; ext-1; ele-1; ext-1; ele-1; ele-1; ext-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ext-1; ele-1; ele-1; ele-1; ele-1; ext-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ext-1; ele-1; ele-1; ele-1; ele-1; ext-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ext-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ext-1; ele-1; ele-1; ele-1; ele-1; ext-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ext-1; ele-1; ext-1; ele-1; ele-1; ele-1; ele-1; ext-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ext-1; ele-1; ext-1; ele-1; ele-1; ele-1; ele-1; ext-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ext-1; ele-1; ele-1; ele-1; ele-1; ext-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ext-1; ele-1; ele-1; ele-1; ext-1; ele-1; ele-1; ele-1; ele-1; ext-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1; ele-1error; error; error; error; warning; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; error; errorIf the resource is contained in another resource, it SHALL NOT contain nested Resources; If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource; If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated; If a resource is contained in another resource, it SHALL NOT have a security label; A resource should have narrative for robust management; orderDetail SHALL only be present if code is present; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; Must have either extensions or value[x], not both; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or children; All FHIR elements must have a @value or childrencontained.contained.empty(); 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(); contained.meta.versionId.empty() and contained.meta.lastUpdated.empty(); contained.meta.security.empty(); text.`div`.exists(); orderDetail.empty() or code.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); extension.exists() != value.exists(); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count()); hasValue() or (children().count() > id.count())

Usage

ServiceRequest is the main resource used to send all referral related information to the destination system.

Note: Systems that support Routing, Chaining or Splitting SHALL support .basedOn, .replaces, and .requisition

Notes

.extension:PatientPresentLocation

  • Used for determining the location of the patient, if it is different than the patient's home address, at the time of the referral.

.extension:DARC

  • Used to support the analytics use case in Ontario eReferral-eConsult guide. It is required to identify the dates affecting a patient's readiness to consult.

.extension:DART

  • Used to support the analytics use case in Ontario eReferral-eConsult guide. It is required to identify the dates affecting a patient's readiness to consult.

.extension:RoutingOptions

  • Required for Referral Source Type identification. Used when only one referral routing object expected.

.extension:CopiedParticipants

  • Used to copy updates to the ServiceRequest in cases of forwarding referrals.

.identifier

  • Business identifers associate the information exchanged between systems with a real world entity
  • Any number of business identifiers MAY be included in a ServiceRequest resource, where:
    • an eReC Requester SHALL always provide a single official business identifier for each eReferral or eConsult shared via messaging, where:
      • use SHALL be populated with the code "official"
      • the combination of value and system:
        • SHALL be globally unique unless the business identifier is shared with a Parent ServicRequest (see Routing below)
        • SHOULD be populated with a value = a UUID and system = "urn:ietf:rfc:3986" when another existing and appropriate system doesn't exist
    • the eReC Requester MAY provide other identifiers needed to support local requirements
    • the eReC Performer SHALL provide all business identifiers received when sending back a ServiceRequest within a message Bundle.entry
    • there SHALL only be one official identifier associated with a ServiceRequest

  • 𝗨𝗦𝗘 𝗖𝗔𝗦𝗘 𝗦𝗨𝗣𝗣𝗢𝗥𝗧: Systems that create ServiceRequests to support Routing, Splitting, or Chaining workflows SHALL populate the official identifier as follows:

    • Routing: the official .identifier SHALL be the same for both the parent and child ServiceRequests
    • Splitting: each child ServiceRequest SHALL have an official .identifier assigned that is unique from the parent
    • Chaining: each child ServiceRequest SHALL have an official .identifier assigned that is unique from the parent
  • Where present, business identifiers provided in a ServiceRequest MAY be used to reference this resource in subsequent messages

  • identifier.system and identifier.value SHALL be mustSupport whenever there is a reference or identifier present

.basedOn

  • 𝗨𝗦𝗘 𝗖𝗔𝗦𝗘 𝗦𝗨𝗣𝗣𝗢𝗥𝗧: Systems that support Chaining SHALL support this element

  • When a service provider performing a parent ServiceRequest creates child ServiceRequest using the Chaining workflow, .basedOn SHALL be populated on the new (child) ServiceRequest with a reference to the parent.

  • If the child ServiceRequest is being transmitted via messaging, this element SHALL be populated with a reference to the parent, either as a reference to a resource within the message as a Bundle.entry

.replaces

  • 𝗨𝗦𝗘 𝗖𝗔𝗦𝗘 𝗦𝗨𝗣𝗣𝗢𝗥𝗧: Systems that support Routing or Splitting SHALL support this element

  • When a service provider performing a parent ServiceRequest creates child ServiceRequest(s) using either the Routing or Splitting workflow, .replaces SHALL be populated on the new (child) ServiceRequest with a reference to the parent.

  • If the child ServiceRequest is being transmitted via messaging, this element SHALL be populated with a reference to the parent, either as a reference to a resource within the message as a Bundle.entry

.requisition

  • 𝗨𝗦𝗘 𝗖𝗔𝗦𝗘 𝗦𝗨𝗣𝗣𝗢𝗥𝗧: Systems that support Splitting SHALL support this element

  • Used in cases where multiple connected referrals are made simultaneously (i.e. a .requisition)

  • In these cases:

    • multiple ServiceRequests SHALL be referenced in MessageHeader.focus
    • each of the ServiceRequests in MessageHeader.focus SHALL have the same identifier in ServiceRequest.requisition
    • the identifier used in ServiceRequest.requisition SHALL also be used in MessageHeader.extension:ReferralIdentifier
  • When splitting a received parent ServiceRequest to create many child ServiceRequests, .requisition SHALL be copied from the official .identifier from the parent ServiceRequest

  • Note that additional business rules apply to requisitions

  • For eReferral usage: It is highly recommended that the common elements should match between multiple ServiceRequests (e.g., patient, requester, etc...) Requests are linked either by a .basedOn relationship (i.e. one request is fulfilling another) or by having a common requisition. Requests that are part of the same requisition are generally treated independently from the perspective of changing their state or maintaining them after initial creation.

.status

  • Used to communicate the current status of the ServiceRequest on the requester's system

.intent

  • populate with the fixed value: "proposal"

.category

  • this is not needed for P2P referrals
  • for CAT/CI, this is the specialty being request, eg. Urology, Othopedics, etc.

.code

  • SHOULD include a code from https://fhir.infoway-inforoute.ca/ValueSet/interventioncodesubsetcare
  • specifies the specific type of service to be performed, eg. Urinalysis, Renal/Bladder Ultrasound

.subject

  • Identifies the patient being referred to the service provider
  • SHALL be populated with a reference to a Patient (CA:eReC) resource
  • If the ServiceRequest is being transmitted via messaging SHALL .reference a resource included in the message as a Bundle.entry

.authoredOn

  • For eReferral usage: .authoredOn is the submission time of the sending system
  • Note: if this element corresponds to the dateTime the author "signed" the request, it could be populated with a time before the message was actually submitted

.requester

  • Identifies the person who requested the service
  • SHALL be populated with a reference to a PractitionerRole (CA:eReC) resource or, for self-referrals, a Patient (CA:eReC) resource
  • If the information is being transmitted via messaging, this element SHALL either .reference a resource included in the message as a Bundle.entry

.performer

  • Identifies the requested service or service provider
  • If the information is being transmitted via messaging, this element SHALL either .reference a resource included in the message as a Bundle.entry

.reasonCode

  • provides the reason for the referral. This could be coded but is very often conveyed as text

.supportingInfo

  • Used to associate supporting information in the patient's record with a ServiceRequest
  • MAY be populated with references to QuestionnaireResponse (CA:eReC), and/or other FHIR resources in the future to associate structured information with a ServiceRequest
    • Implementers intending to send allergy, intolerance and condition supporting information SHOULD refer to PS-CA versions of these profiles for pan-Canadian guidance until these resources are profiled for future versions of this guide. (AllergyIntolerance (PS-CA), Condition(PS-CA))
  • MAY be populated with references to DocumentReference (CA:eReC) to associate binary attachments with a ServiceRequest. The Patient Summary may be attached as PDF document here for future use.
  • MAY also attach Patient Summary documents here
  • If the ServiceRequest is being transmitted via messaging, this element SHALL either:
    • .reference a resource included in the message as a Bundle.entry, or
    • include an .identifier previously known to both systems

.note

  • Used to communicate information that cannot be referenced in supportingInfo with a ServiceRequest

  • MAY be used when the referral source system has a custom data capture form with fields are not mapped to a resource (e.g., Food preference, home visit risk factors, etc...).

  • If note.author and note.time are not populated, these SHOULD be assumed to be the requester and authoredOn respectively (this is expected to be the normal use case)

  • FOR eREFERRAL USAGE:

  • note is used to include additional information in the referral that is not captured by an existing resource or in a DocumentReference. This is often used when the sending application has a custom data capture form with fields are not mapped to a resource (e.g., Food preference, home visit risk factors, etc...).

  • For systems that do not have structured annotations, they can simply communicate a single annotation with no author or time. This element may need to be included in narrative because of the potential for modifying information.

  • Annotations SHOULD NOT be used to communicate "modifying" information that could be computable. (This is a SHOULD because enforcing user behavior is nearly impossible).

Table of Contents | IG © based on FHIR R4 | Package package:ca.infoway.io.erec@1.1.1-dft-ballot | Version History
HL7® and FHIR® are the registered trademarks of Health Level Seven International