R4 Draft for Comment

This page is part of the FHIR Specification (v3.2.0: R4 Ballot 1). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3

12.21 Resource DeviceRequest - Content

Orders and Observations Work GroupMaturity Level: 0 Draft Compartments: Device, Encounter, Patient, Practitioner

Represents a request for a patient to employ a medical device. The device may be an implantable device, or an external assistive device, such as a walker.

STU Note: In terms of scope and usage, the Orders and Observations workgroups wish to draw the attention of reviewers and implementers to the following issue:

  1. We are seeking input from the implementation community on whether to combine DeviceRequest and VisionPrescription for R4. The parameters element was added to DeviceRequest for representing custom details for ordering devices. With this change, VisionPrescription significantly overlaps DeviceRequest. To illustrate this, the devicerequest-left-lens and devicerequest-right-lens examples are based on the general glasses example in VisionPrescription.

This resource is a request resource from a FHIR workflow perspective - see Workflow.

This resource describes the request for the use of a device by a patient. The device may be any pertinent device specified in the Device resource. Examples of devices that may be requested include wheelchair, hearing aids, or an insulin pump. The request may lead to the dispensing of the device to the patient or for use by the patient.

The device use request may represent an order or a prescription entered by a practitioner in a CPOE system or a proposal made by a clinical decision support (CDS) system based on a patient's clinical record and context of care.

This resource deals with the allocation of a device to a patient and while it may contain instructions on how to use the device, the data about getting the device to the patient is addressed in other resources. For example, Certain devices must be implanted via a surgical or other procedure and the implantation or explantation is represented in the [Procedure](procedure.html) or [ServiceRequest](servicerequest.html) resource.

The SupplyRequest resource is similar in that it deals with requesting a particular item for a specific patient. However, DeviceRequest is concerned with items where there is a patient focus, or instructions regarding their use, whereas SupplyRequest is concerned with inventory management.

This resource is referenced by CarePlan and Observation

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. DeviceRequest DDomainResourceMedical device request
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ0..*IdentifierExternal Request identifier
... instantiates Σ0..*uriProtocol or definition
... basedOn Σ0..*Reference(Any)What request fulfills
... priorRequest Σ0..*Reference(Any)What request replaces
... groupIdentifier Σ0..1IdentifierIdentifier of composite request
... status ?!Σ0..1codedraft | active | suspended | completed | entered-in-error | cancelled
RequestStatus (Required)
... intent ?!Σ1..1CodeableConceptproposal | plan | original-order | encoded | reflex-order
RequestIntent (Required)
... priority Σ0..1codeIndicates how quickly the {{title}} should be addressed with respect to other requests
RequestPriority (Required)
... code[x] Σ1..1Device requested
FHIR Device Types (Example)
.... codeReferenceReference(Device)
.... codeCodeableConceptCodeableConcept
... parameter 0..*BackboneElementDevice details
.... code 0..1CodeableConceptDevice detail
.... value[x] 0..1Value of detail
..... valueCodeableConceptCodeableConcept
..... valueQuantityQuantity
..... valueRangeRange
..... valueBooleanboolean
... subject Σ1..1Reference(Patient | Group | Location | Device)Focus of request
... context Σ0..1Reference(Encounter | EpisodeOfCare)Encounter or Episode motivating request
... occurrence[x] Σ0..1Desired time or schedule for use
.... occurrenceDateTimedateTime
.... occurrencePeriodPeriod
.... occurrenceTimingTiming
... authoredOn Σ0..1dateTimeWhen recorded
... requester Σ0..1Reference(Device | Practitioner | PractitionerRole | Organization)Who/what is requesting diagnostics
... performerType Σ0..1CodeableConceptFille role
Participant Roles (Example)
... performer Σ0..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Requested Filler
... reasonCode Σ0..*CodeableConceptCoded Reason for request
Condition/Problem/Diagnosis Codes (Example)
... reasonReference Σ0..*Reference(Condition | Observation | DiagnosticReport | DocumentReference)Linked Reason for request
... insurance 0..*Reference(Coverage | ClaimResponse)Associated insurance coverage
... supportingInfo 0..*Reference(Any)Additional clinical information
... note 0..*AnnotationNotes or comments
... relevantHistory 0..*Reference(Provenance)Request provenance

doco Documentation for this format

UML Diagram (Legend)

DeviceRequest (DomainResource)Identifiers assigned to this order by the orderer or by the receiveridentifier : Identifier [0..*]Protocol or definition followed by this request. For example: The proposed act must be performed if the indicated conditions occur, e.g.., shortness of breath, SpO2 less than x%instantiates : uri [0..*]Plan/proposal/order fulfilled by this requestbasedOn : Reference [0..*] « Any »The request takes the place of the referenced completed or terminated request(s)priorRequest : Reference [0..*] « Any »Composite request this is part ofgroupIdentifier : Identifier [0..1]The status of the request (this element modifies the meaning of other elements)status : code [0..1] « Codes representing the status of the request. (Strength=Required)RequestStatus! »Whether the request is a proposal, plan, an original order or a reflex order (this element modifies the meaning of other elements)intent : CodeableConcept [1..1] « The kind of diagnostic request (Strength=Required)RequestIntent! »Indicates how quickly the {{title}} should be addressed with respect to other requestspriority : code [0..1] « Identifies the level of importance to be assigned to actioning the request (Strength=Required)RequestPriority! »The details of the device to be usedcode[x] : Type [1..1] « Reference(Device)|CodeableConcept; Codes for devices that can be requested (Strength=Example)FHIR Device Types?? »The patient who will use the devicesubject : Reference [1..1] « Patient|Group|Location|Device »An encounter that provides additional context in which this request is madecontext : Reference [0..1] « Encounter|EpisodeOfCare »The timing schedule for the use of the device. The Schedule data type allows many different expressions, for example. "Every 8 hours"; "Three times a day"; "1/2 an hour before breakfast for 10 days from 23-Dec 2011:"; "15 Oct 2013, 17 Oct 2013 and 1 Nov 2013"occurrence[x] : Type [0..1] « dateTime|Period|Timing »When the request transitioned to being actionableauthoredOn : dateTime [0..1]The individual who initiated the request and has responsibility for its activationrequester : Reference [0..1] « Device|Practitioner|PractitionerRole| Organization »Desired type of performer for doing the diagnostic testingperformerType : CodeableConcept [0..1] « Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc. (Strength=Example)Participant Roles?? »The desired perfomer for doing the diagnostic testingperformer : Reference [0..1] « Practitioner|PractitionerRole| Organization|CareTeam|HealthcareService|Patient|Device| RelatedPerson »Reason or justification for the use of this devicereasonCode : CodeableConcept [0..*] « Diagnosis or problem codes justifying the reason for requesting the device. (Strength=Example)Condition/Problem/Diagnosis ?? »Reason or justification for the use of this devicereasonReference : Reference [0..*] « Condition|Observation| DiagnosticReport|DocumentReference »Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be required for delivering the requested serviceinsurance : Reference [0..*] « Coverage|ClaimResponse »Additional clinical information about the patient that may influence the request fulfilment. For example, this may includes body where on the subject's the device will be used ( i.e. the target site)supportingInfo : Reference [0..*] « Any »Details about this request that were not represented at all or sufficiently in one of the attributes provided in a class. These may include for example a comment, an instruction, or a note associated with the statementnote : Annotation [0..*]Key events in the history of the requestrelevantHistory : Reference [0..*] « Provenance »ParameterA code or string that identifies the device detail being assertedcode : CodeableConcept [0..1]The value of the device detailvalue[x] : Type [0..1] « CodeableConcept|Quantity|Range|boolean »Specific parameters for the ordered item. For example, the prism value for lensesparameter[0..*]

XML Template

<DeviceRequest xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier External Request identifier --></identifier>
 <instantiates value="[uri]"/><!-- 0..* Protocol or definition -->
 <basedOn><!-- 0..* Reference(Any) What request fulfills --></basedOn>
 <priorRequest><!-- 0..* Reference(Any) What request replaces --></priorRequest>
 <groupIdentifier><!-- 0..1 Identifier Identifier of composite request --></groupIdentifier>
 <status value="[code]"/><!-- 0..1 draft | active | suspended | completed | entered-in-error | cancelled -->
 <intent><!-- 1..1 CodeableConcept proposal | plan | original-order | encoded | reflex-order  --></intent>
 <priority value="[code]"/><!-- 0..1 Indicates how quickly the {{title}} should be addressed with respect to other requests -->
 <code[x]><!-- 1..1 Reference(Device)|CodeableConcept Device requested --></code[x]>
 <parameter>  <!-- 0..* Device details -->
  <code><!-- 0..1 CodeableConcept Device detail --></code>
  <value[x]><!-- 0..1 CodeableConcept|Quantity|Range|boolean Value of detail --></value[x]>
 </parameter>
 <subject><!-- 1..1 Reference(Patient|Group|Location|Device) Focus of request --></subject>
 <context><!-- 0..1 Reference(Encounter|EpisodeOfCare) Encounter or Episode motivating request --></context>
 <occurrence[x]><!-- 0..1 dateTime|Period|Timing Desired time or schedule for use --></occurrence[x]>
 <authoredOn value="[dateTime]"/><!-- 0..1 When recorded -->
 <requester><!-- 0..1 Reference(Device|Practitioner|PractitionerRole|Organization) Who/what is requesting diagnostics --></requester>
 <performerType><!-- 0..1 CodeableConcept Fille role --></performerType>
 <performer><!-- 0..1 Reference(Practitioner|PractitionerRole|Organization|
   CareTeam|HealthcareService|Patient|Device|RelatedPerson) Requested Filler --></performer>
 <reasonCode><!-- 0..* CodeableConcept Coded Reason for request --></reasonCode>
 <reasonReference><!-- 0..* Reference(Condition|Observation|DiagnosticReport|
   DocumentReference) Linked Reason for request --></reasonReference>
 <insurance><!-- 0..* Reference(Coverage|ClaimResponse) Associated insurance coverage --></insurance>
 <supportingInfo><!-- 0..* Reference(Any) Additional clinical information --></supportingInfo>
 <note><!-- 0..* Annotation Notes or comments --></note>
 <relevantHistory><!-- 0..* Reference(Provenance) Request provenance --></relevantHistory>
</DeviceRequest>

JSON Template

{doco
  "resourceType" : "DeviceRequest",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // External Request identifier
  "instantiates" : ["<uri>"], // Protocol or definition
  "basedOn" : [{ Reference(Any) }], // What request fulfills
  "priorRequest" : [{ Reference(Any) }], // What request replaces
  "groupIdentifier" : { Identifier }, // Identifier of composite request
  "status" : "<code>", // draft | active | suspended | completed | entered-in-error | cancelled
  "intent" : { CodeableConcept }, // R!  proposal | plan | original-order | encoded | reflex-order 
  "priority" : "<code>", // Indicates how quickly the {{title}} should be addressed with respect to other requests
  // code[x]: Device requested. One of these 2:
  "codeReference" : { Reference(Device) },
  "codeCodeableConcept" : { CodeableConcept },
  "parameter" : [{ // Device details
    "code" : { CodeableConcept }, // Device detail
    // value[x]: Value of detail. One of these 4:
    "valueCodeableConcept" : { CodeableConcept }
    "valueQuantity" : { Quantity }
    "valueRange" : { Range }
    "valueBoolean" : <boolean>
  }],
  "subject" : { Reference(Patient|Group|Location|Device) }, // R!  Focus of request
  "context" : { Reference(Encounter|EpisodeOfCare) }, // Encounter or Episode motivating request
  // occurrence[x]: Desired time or schedule for use. One of these 3:
  "occurrenceDateTime" : "<dateTime>",
  "occurrencePeriod" : { Period },
  "occurrenceTiming" : { Timing },
  "authoredOn" : "<dateTime>", // When recorded
  "requester" : { Reference(Device|Practitioner|PractitionerRole|Organization) }, // Who/what is requesting diagnostics
  "performerType" : { CodeableConcept }, // Fille role
  "performer" : { Reference(Practitioner|PractitionerRole|Organization|
   CareTeam|HealthcareService|Patient|Device|RelatedPerson) }, // Requested Filler
  "reasonCode" : [{ CodeableConcept }], // Coded Reason for request
  "reasonReference" : [{ Reference(Condition|Observation|DiagnosticReport|
   DocumentReference) }], // Linked Reason for request
  "insurance" : [{ Reference(Coverage|ClaimResponse) }], // Associated insurance coverage
  "supportingInfo" : [{ Reference(Any) }], // Additional clinical information
  "note" : [{ Annotation }], // Notes or comments
  "relevantHistory" : [{ Reference(Provenance) }] // Request provenance
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:DeviceRequest;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:DeviceRequest.identifier [ Identifier ], ... ; # 0..* External Request identifier
  fhir:DeviceRequest.instantiates [ uri ], ... ; # 0..* Protocol or definition
  fhir:DeviceRequest.basedOn [ Reference(Any) ], ... ; # 0..* What request fulfills
  fhir:DeviceRequest.priorRequest [ Reference(Any) ], ... ; # 0..* What request replaces
  fhir:DeviceRequest.groupIdentifier [ Identifier ]; # 0..1 Identifier of composite request
  fhir:DeviceRequest.status [ code ]; # 0..1 draft | active | suspended | completed | entered-in-error | cancelled
  fhir:DeviceRequest.intent [ CodeableConcept ]; # 1..1 proposal | plan | original-order | encoded | reflex-order
  fhir:DeviceRequest.priority [ code ]; # 0..1 Indicates how quickly the {{title}} should be addressed with respect to other requests
  # DeviceRequest.code[x] : 1..1 Device requested. One of these 2
    fhir:DeviceRequest.codeReference [ Reference(Device) ]
    fhir:DeviceRequest.codeCodeableConcept [ CodeableConcept ]
  fhir:DeviceRequest.parameter [ # 0..* Device details
    fhir:DeviceRequest.parameter.code [ CodeableConcept ]; # 0..1 Device detail
    # DeviceRequest.parameter.value[x] : 0..1 Value of detail. One of these 4
      fhir:DeviceRequest.parameter.valueCodeableConcept [ CodeableConcept ]
      fhir:DeviceRequest.parameter.valueQuantity [ Quantity ]
      fhir:DeviceRequest.parameter.valueRange [ Range ]
      fhir:DeviceRequest.parameter.valueBoolean [ boolean ]
  ], ...;
  fhir:DeviceRequest.subject [ Reference(Patient|Group|Location|Device) ]; # 1..1 Focus of request
  fhir:DeviceRequest.context [ Reference(Encounter|EpisodeOfCare) ]; # 0..1 Encounter or Episode motivating request
  # DeviceRequest.occurrence[x] : 0..1 Desired time or schedule for use. One of these 3
    fhir:DeviceRequest.occurrenceDateTime [ dateTime ]
    fhir:DeviceRequest.occurrencePeriod [ Period ]
    fhir:DeviceRequest.occurrenceTiming [ Timing ]
  fhir:DeviceRequest.authoredOn [ dateTime ]; # 0..1 When recorded
  fhir:DeviceRequest.requester [ Reference(Device|Practitioner|PractitionerRole|Organization) ]; # 0..1 Who/what is requesting diagnostics
  fhir:DeviceRequest.performerType [ CodeableConcept ]; # 0..1 Fille role
  fhir:DeviceRequest.performer [ Reference(Practitioner|PractitionerRole|Organization|CareTeam|HealthcareService|Patient|
  Device|RelatedPerson) ]; # 0..1 Requested Filler
  fhir:DeviceRequest.reasonCode [ CodeableConcept ], ... ; # 0..* Coded Reason for request
  fhir:DeviceRequest.reasonReference [ Reference(Condition|Observation|DiagnosticReport|DocumentReference) ], ... ; # 0..* Linked Reason for request
  fhir:DeviceRequest.insurance [ Reference(Coverage|ClaimResponse) ], ... ; # 0..* Associated insurance coverage
  fhir:DeviceRequest.supportingInfo [ Reference(Any) ], ... ; # 0..* Additional clinical information
  fhir:DeviceRequest.note [ Annotation ], ... ; # 0..* Notes or comments
  fhir:DeviceRequest.relevantHistory [ Reference(Provenance) ], ... ; # 0..* Request provenance
]

Changes since DSTU2

DeviceRequest
DeviceRequest.instantiates
  • Added Element
DeviceRequest.basedOn
  • Added Element
DeviceRequest.priorRequest
  • Added Element
DeviceRequest.groupIdentifier
  • Added Element
DeviceRequest.status
  • Change value set from http://hl7.org/fhir/ValueSet/device-use-request-status to http://hl7.org/fhir/ValueSet/request-status
DeviceRequest.intent
  • Added Element
DeviceRequest.priority
  • Change value set from http://hl7.org/fhir/ValueSet/device-use-request-priority to http://hl7.org/fhir/ValueSet/request-priority
  • Default Value "If missing, normal priority" added
DeviceRequest.code[x]
  • Added Element
DeviceRequest.parameter
  • Added Element
DeviceRequest.parameter.code
  • Added Element
DeviceRequest.parameter.value[x]
  • Added Element
DeviceRequest.subject
  • Add Reference(Group), Add Reference(Location), Add Reference(Device)
DeviceRequest.context
  • Renamed from encounter to context
  • Add Reference(EpisodeOfCare)
DeviceRequest.occurrence[x]
  • Added Element
DeviceRequest.authoredOn
  • Added Element
DeviceRequest.requester
  • Added Element
DeviceRequest.performerType
  • Added Element
DeviceRequest.performer
  • Added Element
DeviceRequest.reasonCode
  • Renamed from indication to reasonCode
DeviceRequest.reasonReference
  • Added Element
DeviceRequest.insurance
  • Added Element
DeviceRequest.supportingInfo
  • Added Element
DeviceRequest.note
  • Renamed from notes to note
  • Type changed from string to Annotation
DeviceRequest.relevantHistory
  • Added Element
DeviceRequest.bodySite[x]
  • deleted
DeviceRequest.device
  • deleted
DeviceRequest.prnReason
  • deleted
DeviceRequest.orderedOn
  • deleted
DeviceRequest.recordedOn
  • deleted
DeviceRequest.timing[x]
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON.

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. DeviceRequest DDomainResourceMedical device request
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ0..*IdentifierExternal Request identifier
... instantiates Σ0..*uriProtocol or definition
... basedOn Σ0..*Reference(Any)What request fulfills
... priorRequest Σ0..*Reference(Any)What request replaces
... groupIdentifier Σ0..1IdentifierIdentifier of composite request
... status ?!Σ0..1codedraft | active | suspended | completed | entered-in-error | cancelled
RequestStatus (Required)
... intent ?!Σ1..1CodeableConceptproposal | plan | original-order | encoded | reflex-order
RequestIntent (Required)
... priority Σ0..1codeIndicates how quickly the {{title}} should be addressed with respect to other requests
RequestPriority (Required)
... code[x] Σ1..1Device requested
FHIR Device Types (Example)
.... codeReferenceReference(Device)
.... codeCodeableConceptCodeableConcept
... parameter 0..*BackboneElementDevice details
.... code 0..1CodeableConceptDevice detail
.... value[x] 0..1Value of detail
..... valueCodeableConceptCodeableConcept
..... valueQuantityQuantity
..... valueRangeRange
..... valueBooleanboolean
... subject Σ1..1Reference(Patient | Group | Location | Device)Focus of request
... context Σ0..1Reference(Encounter | EpisodeOfCare)Encounter or Episode motivating request
... occurrence[x] Σ0..1Desired time or schedule for use
.... occurrenceDateTimedateTime
.... occurrencePeriodPeriod
.... occurrenceTimingTiming
... authoredOn Σ0..1dateTimeWhen recorded
... requester Σ0..1Reference(Device | Practitioner | PractitionerRole | Organization)Who/what is requesting diagnostics
... performerType Σ0..1CodeableConceptFille role
Participant Roles (Example)
... performer Σ0..1Reference(Practitioner | PractitionerRole | Organization | CareTeam | HealthcareService | Patient | Device | RelatedPerson)Requested Filler
... reasonCode Σ0..*CodeableConceptCoded Reason for request
Condition/Problem/Diagnosis Codes (Example)
... reasonReference Σ0..*Reference(Condition | Observation | DiagnosticReport | DocumentReference)Linked Reason for request
... insurance 0..*Reference(Coverage | ClaimResponse)Associated insurance coverage
... supportingInfo 0..*Reference(Any)Additional clinical information
... note 0..*AnnotationNotes or comments
... relevantHistory 0..*Reference(Provenance)Request provenance

doco Documentation for this format

UML Diagram (Legend)

DeviceRequest (DomainResource)Identifiers assigned to this order by the orderer or by the receiveridentifier : Identifier [0..*]Protocol or definition followed by this request. For example: The proposed act must be performed if the indicated conditions occur, e.g.., shortness of breath, SpO2 less than x%instantiates : uri [0..*]Plan/proposal/order fulfilled by this requestbasedOn : Reference [0..*] « Any »The request takes the place of the referenced completed or terminated request(s)priorRequest : Reference [0..*] « Any »Composite request this is part ofgroupIdentifier : Identifier [0..1]The status of the request (this element modifies the meaning of other elements)status : code [0..1] « Codes representing the status of the request. (Strength=Required)RequestStatus! »Whether the request is a proposal, plan, an original order or a reflex order (this element modifies the meaning of other elements)intent : CodeableConcept [1..1] « The kind of diagnostic request (Strength=Required)RequestIntent! »Indicates how quickly the {{title}} should be addressed with respect to other requestspriority : code [0..1] « Identifies the level of importance to be assigned to actioning the request (Strength=Required)RequestPriority! »The details of the device to be usedcode[x] : Type [1..1] « Reference(Device)|CodeableConcept; Codes for devices that can be requested (Strength=Example)FHIR Device Types?? »The patient who will use the devicesubject : Reference [1..1] « Patient|Group|Location|Device »An encounter that provides additional context in which this request is madecontext : Reference [0..1] « Encounter|EpisodeOfCare »The timing schedule for the use of the device. The Schedule data type allows many different expressions, for example. "Every 8 hours"; "Three times a day"; "1/2 an hour before breakfast for 10 days from 23-Dec 2011:"; "15 Oct 2013, 17 Oct 2013 and 1 Nov 2013"occurrence[x] : Type [0..1] « dateTime|Period|Timing »When the request transitioned to being actionableauthoredOn : dateTime [0..1]The individual who initiated the request and has responsibility for its activationrequester : Reference [0..1] « Device|Practitioner|PractitionerRole| Organization »Desired type of performer for doing the diagnostic testingperformerType : CodeableConcept [0..1] « Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc. (Strength=Example)Participant Roles?? »The desired perfomer for doing the diagnostic testingperformer : Reference [0..1] « Practitioner|PractitionerRole| Organization|CareTeam|HealthcareService|Patient|Device| RelatedPerson »Reason or justification for the use of this devicereasonCode : CodeableConcept [0..*] « Diagnosis or problem codes justifying the reason for requesting the device. (Strength=Example)Condition/Problem/Diagnosis ?? »Reason or justification for the use of this devicereasonReference : Reference [0..*] « Condition|Observation| DiagnosticReport|DocumentReference »Insurance plans, coverage extensions, pre-authorizations and/or pre-determinations that may be required for delivering the requested serviceinsurance : Reference [0..*] « Coverage|ClaimResponse »Additional clinical information about the patient that may influence the request fulfilment. For example, this may includes body where on the subject's the device will be used ( i.e. the target site)supportingInfo : Reference [0..*] « Any »Details about this request that were not represented at all or sufficiently in one of the attributes provided in a class. These may include for example a comment, an instruction, or a note associated with the statementnote : Annotation [0..*]Key events in the history of the requestrelevantHistory : Reference [0..*] « Provenance »ParameterA code or string that identifies the device detail being assertedcode : CodeableConcept [0..1]The value of the device detailvalue[x] : Type [0..1] « CodeableConcept|Quantity|Range|boolean »Specific parameters for the ordered item. For example, the prism value for lensesparameter[0..*]

XML Template

<DeviceRequest xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier External Request identifier --></identifier>
 <instantiates value="[uri]"/><!-- 0..* Protocol or definition -->
 <basedOn><!-- 0..* Reference(Any) What request fulfills --></basedOn>
 <priorRequest><!-- 0..* Reference(Any) What request replaces --></priorRequest>
 <groupIdentifier><!-- 0..1 Identifier Identifier of composite request --></groupIdentifier>
 <status value="[code]"/><!-- 0..1 draft | active | suspended | completed | entered-in-error | cancelled -->
 <intent><!-- 1..1 CodeableConcept proposal | plan | original-order | encoded | reflex-order  --></intent>
 <priority value="[code]"/><!-- 0..1 Indicates how quickly the {{title}} should be addressed with respect to other requests -->
 <code[x]><!-- 1..1 Reference(Device)|CodeableConcept Device requested --></code[x]>
 <parameter>  <!-- 0..* Device details -->
  <code><!-- 0..1 CodeableConcept Device detail --></code>
  <value[x]><!-- 0..1 CodeableConcept|Quantity|Range|boolean Value of detail --></value[x]>
 </parameter>
 <subject><!-- 1..1 Reference(Patient|Group|Location|Device) Focus of request --></subject>
 <context><!-- 0..1 Reference(Encounter|EpisodeOfCare) Encounter or Episode motivating request --></context>
 <occurrence[x]><!-- 0..1 dateTime|Period|Timing Desired time or schedule for use --></occurrence[x]>
 <authoredOn value="[dateTime]"/><!-- 0..1 When recorded -->
 <requester><!-- 0..1 Reference(Device|Practitioner|PractitionerRole|Organization) Who/what is requesting diagnostics --></requester>
 <performerType><!-- 0..1 CodeableConcept Fille role --></performerType>
 <performer><!-- 0..1 Reference(Practitioner|PractitionerRole|Organization|
   CareTeam|HealthcareService|Patient|Device|RelatedPerson) Requested Filler --></performer>
 <reasonCode><!-- 0..* CodeableConcept Coded Reason for request --></reasonCode>
 <reasonReference><!-- 0..* Reference(Condition|Observation|DiagnosticReport|
   DocumentReference) Linked Reason for request --></reasonReference>
 <insurance><!-- 0..* Reference(Coverage|ClaimResponse) Associated insurance coverage --></insurance>
 <supportingInfo><!-- 0..* Reference(Any) Additional clinical information --></supportingInfo>
 <note><!-- 0..* Annotation Notes or comments --></note>
 <relevantHistory><!-- 0..* Reference(Provenance) Request provenance --></relevantHistory>
</DeviceRequest>

JSON Template

{doco
  "resourceType" : "DeviceRequest",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // External Request identifier
  "instantiates" : ["<uri>"], // Protocol or definition
  "basedOn" : [{ Reference(Any) }], // What request fulfills
  "priorRequest" : [{ Reference(Any) }], // What request replaces
  "groupIdentifier" : { Identifier }, // Identifier of composite request
  "status" : "<code>", // draft | active | suspended | completed | entered-in-error | cancelled
  "intent" : { CodeableConcept }, // R!  proposal | plan | original-order | encoded | reflex-order 
  "priority" : "<code>", // Indicates how quickly the {{title}} should be addressed with respect to other requests
  // code[x]: Device requested. One of these 2:
  "codeReference" : { Reference(Device) },
  "codeCodeableConcept" : { CodeableConcept },
  "parameter" : [{ // Device details
    "code" : { CodeableConcept }, // Device detail
    // value[x]: Value of detail. One of these 4:
    "valueCodeableConcept" : { CodeableConcept }
    "valueQuantity" : { Quantity }
    "valueRange" : { Range }
    "valueBoolean" : <boolean>
  }],
  "subject" : { Reference(Patient|Group|Location|Device) }, // R!  Focus of request
  "context" : { Reference(Encounter|EpisodeOfCare) }, // Encounter or Episode motivating request
  // occurrence[x]: Desired time or schedule for use. One of these 3:
  "occurrenceDateTime" : "<dateTime>",
  "occurrencePeriod" : { Period },
  "occurrenceTiming" : { Timing },
  "authoredOn" : "<dateTime>", // When recorded
  "requester" : { Reference(Device|Practitioner|PractitionerRole|Organization) }, // Who/what is requesting diagnostics
  "performerType" : { CodeableConcept }, // Fille role
  "performer" : { Reference(Practitioner|PractitionerRole|Organization|
   CareTeam|HealthcareService|Patient|Device|RelatedPerson) }, // Requested Filler
  "reasonCode" : [{ CodeableConcept }], // Coded Reason for request
  "reasonReference" : [{ Reference(Condition|Observation|DiagnosticReport|
   DocumentReference) }], // Linked Reason for request
  "insurance" : [{ Reference(Coverage|ClaimResponse) }], // Associated insurance coverage
  "supportingInfo" : [{ Reference(Any) }], // Additional clinical information
  "note" : [{ Annotation }], // Notes or comments
  "relevantHistory" : [{ Reference(Provenance) }] // Request provenance
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:DeviceRequest;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:DeviceRequest.identifier [ Identifier ], ... ; # 0..* External Request identifier
  fhir:DeviceRequest.instantiates [ uri ], ... ; # 0..* Protocol or definition
  fhir:DeviceRequest.basedOn [ Reference(Any) ], ... ; # 0..* What request fulfills
  fhir:DeviceRequest.priorRequest [ Reference(Any) ], ... ; # 0..* What request replaces
  fhir:DeviceRequest.groupIdentifier [ Identifier ]; # 0..1 Identifier of composite request
  fhir:DeviceRequest.status [ code ]; # 0..1 draft | active | suspended | completed | entered-in-error | cancelled
  fhir:DeviceRequest.intent [ CodeableConcept ]; # 1..1 proposal | plan | original-order | encoded | reflex-order
  fhir:DeviceRequest.priority [ code ]; # 0..1 Indicates how quickly the {{title}} should be addressed with respect to other requests
  # DeviceRequest.code[x] : 1..1 Device requested. One of these 2
    fhir:DeviceRequest.codeReference [ Reference(Device) ]
    fhir:DeviceRequest.codeCodeableConcept [ CodeableConcept ]
  fhir:DeviceRequest.parameter [ # 0..* Device details
    fhir:DeviceRequest.parameter.code [ CodeableConcept ]; # 0..1 Device detail
    # DeviceRequest.parameter.value[x] : 0..1 Value of detail. One of these 4
      fhir:DeviceRequest.parameter.valueCodeableConcept [ CodeableConcept ]
      fhir:DeviceRequest.parameter.valueQuantity [ Quantity ]
      fhir:DeviceRequest.parameter.valueRange [ Range ]
      fhir:DeviceRequest.parameter.valueBoolean [ boolean ]
  ], ...;
  fhir:DeviceRequest.subject [ Reference(Patient|Group|Location|Device) ]; # 1..1 Focus of request
  fhir:DeviceRequest.context [ Reference(Encounter|EpisodeOfCare) ]; # 0..1 Encounter or Episode motivating request
  # DeviceRequest.occurrence[x] : 0..1 Desired time or schedule for use. One of these 3
    fhir:DeviceRequest.occurrenceDateTime [ dateTime ]
    fhir:DeviceRequest.occurrencePeriod [ Period ]
    fhir:DeviceRequest.occurrenceTiming [ Timing ]
  fhir:DeviceRequest.authoredOn [ dateTime ]; # 0..1 When recorded
  fhir:DeviceRequest.requester [ Reference(Device|Practitioner|PractitionerRole|Organization) ]; # 0..1 Who/what is requesting diagnostics
  fhir:DeviceRequest.performerType [ CodeableConcept ]; # 0..1 Fille role
  fhir:DeviceRequest.performer [ Reference(Practitioner|PractitionerRole|Organization|CareTeam|HealthcareService|Patient|
  Device|RelatedPerson) ]; # 0..1 Requested Filler
  fhir:DeviceRequest.reasonCode [ CodeableConcept ], ... ; # 0..* Coded Reason for request
  fhir:DeviceRequest.reasonReference [ Reference(Condition|Observation|DiagnosticReport|DocumentReference) ], ... ; # 0..* Linked Reason for request
  fhir:DeviceRequest.insurance [ Reference(Coverage|ClaimResponse) ], ... ; # 0..* Associated insurance coverage
  fhir:DeviceRequest.supportingInfo [ Reference(Any) ], ... ; # 0..* Additional clinical information
  fhir:DeviceRequest.note [ Annotation ], ... ; # 0..* Notes or comments
  fhir:DeviceRequest.relevantHistory [ Reference(Provenance) ], ... ; # 0..* Request provenance
]

Changes since DSTU2

DeviceRequest
DeviceRequest.instantiates
  • Added Element
DeviceRequest.basedOn
  • Added Element
DeviceRequest.priorRequest
  • Added Element
DeviceRequest.groupIdentifier
  • Added Element
DeviceRequest.status
  • Change value set from http://hl7.org/fhir/ValueSet/device-use-request-status to http://hl7.org/fhir/ValueSet/request-status
DeviceRequest.intent
  • Added Element
DeviceRequest.priority
  • Change value set from http://hl7.org/fhir/ValueSet/device-use-request-priority to http://hl7.org/fhir/ValueSet/request-priority
  • Default Value "If missing, normal priority" added
DeviceRequest.code[x]
  • Added Element
DeviceRequest.parameter
  • Added Element
DeviceRequest.parameter.code
  • Added Element
DeviceRequest.parameter.value[x]
  • Added Element
DeviceRequest.subject
  • Add Reference(Group), Add Reference(Location), Add Reference(Device)
DeviceRequest.context
  • Renamed from encounter to context
  • Add Reference(EpisodeOfCare)
DeviceRequest.occurrence[x]
  • Added Element
DeviceRequest.authoredOn
  • Added Element
DeviceRequest.requester
  • Added Element
DeviceRequest.performerType
  • Added Element
DeviceRequest.performer
  • Added Element
DeviceRequest.reasonCode
  • Renamed from indication to reasonCode
DeviceRequest.reasonReference
  • Added Element
DeviceRequest.insurance
  • Added Element
DeviceRequest.supportingInfo
  • Added Element
DeviceRequest.note
  • Renamed from notes to note
  • Type changed from string to Annotation
DeviceRequest.relevantHistory
  • Added Element
DeviceRequest.bodySite[x]
  • deleted
DeviceRequest.device
  • deleted
DeviceRequest.prnReason
  • deleted
DeviceRequest.orderedOn
  • deleted
DeviceRequest.recordedOn
  • deleted
DeviceRequest.timing[x]
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON.

 

Alternate definitions: Master Definition (XML, JSON), XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions & the dependency analysis

PathDefinitionTypeReference
DeviceRequest.status Codes representing the status of the request.RequiredRequestStatus
DeviceRequest.intent The kind of diagnostic requestRequiredhttp://build.fhir.org/valueset-request-intent.html
DeviceRequest.priority Identifies the level of importance to be assigned to actioning the requestRequiredRequestPriority
DeviceRequest.code[x] Codes for devices that can be requestedExampleFHIR Device Types
DeviceRequest.parameter.code A code that identifies the device detail.UnknownNo details provided yet
DeviceRequest.performerType Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc.ExampleParticipant Roles
DeviceRequest.reasonCode Diagnosis or problem codes justifying the reason for requesting the device.ExampleCondition/Problem/Diagnosis Codes

Notes to reviewers:

At this time, the code bindings are placeholders to be fleshed out upon further review by the community.

Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

NameTypeDescriptionExpressionIn Common
authored-ondateWhen the request transitioned to being actionableDeviceRequest.authoredOn
based-onreferencePlan/proposal/order fulfilled by this requestDeviceRequest.basedOn
(Any)
codetokenCode for what is being requested/orderedDeviceRequest.code.as(CodeableConcept)8 Resources
devicereferenceReference to resource that is being requested/orderedDeviceRequest.code.as(Reference)
(Device)
encounterreferenceEncounter or Episode during which request was createdDeviceRequest.context
(EpisodeOfCare, Encounter)
12 Resources
event-datedateWhen service should occurDeviceRequest.occurrence.as(dateTime) | DeviceRequest.occurrence.as(Period)
group-identifiertokenComposite request this is part ofDeviceRequest.groupIdentifier
identifiertokenBusiness identifier for request/orderDeviceRequest.identifier26 Resources
instantiatesuriProtocol or definition followed by this requestDeviceRequest.instantiates
insurancereferenceAssociated insurance coverageDeviceRequest.insurance
(ClaimResponse, Coverage)
intenttokenproposal | plan | original-order |reflex-orderDeviceRequest.intent
patientreferenceIndividual the service is ordered forDeviceRequest.subject
(Patient)
29 Resources
performerreferenceDesired performer for serviceDeviceRequest.performer
(Practitioner, Organization, CareTeam, Device, Patient, HealthcareService, PractitionerRole, RelatedPerson)
priorrequestreferenceRequest takes the place of referenced completed or terminated requestsDeviceRequest.priorRequest
(Any)
requesterreferenceWho/what is requesting service DeviceRequest.requester
(Practitioner, Organization, Device, PractitionerRole)
statustokenentered-in-error | draft | active |suspended | completed DeviceRequest.status
subjectreferenceIndividual the service is ordered forDeviceRequest.subject
(Group, Device, Patient, Location)