Da Vinci - Coverage Requirements Discovery
2.2.1 - STU 2.2

Da Vinci - Coverage Requirements Discovery, published by HL7 International / Financial Management. This guide is not an authorized publication; it is the continuous build for version 2.2.1 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/davinci-crd/ and changes regularly. See the Directory of published versions

## Resource Profile: CRD Device Request

Official URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-devicerequest | Version: 2.2.1 | Highlight text changes?
Standards status: Trial-use Active as of 2026-03-26 | Maturity Level: 4 | Computable Name: CRDDeviceRequest
Other Identifiers: OID:2.16.840.1.113883.4.642.40.18.42.9

This profile specifies extensions and constraints on the DeviceRequest resource to support coverage requirements discovery.

### Usage

CRD Clients SHALL use the CRD DeviceRequest profile to resolve references to DeviceRequest resources passed to CRD Servers (e.g. `selections` context references) and to populate `draftOrders` context objects when invoking the following CDS Hooks: §prof-6

- order-select
- order-sign
- order-dispatch

!

Information provided in Must Support elements will commonly be required for CRD Servers to perform coverage requirements discovery.

Usages:

- Use this Profile: CRD CDSHooks Additional Orders Response (Logical Definition), CRD CDSHooks Alternate Request Response (Logical Definition), CRD CDSHooks Coverage Information Response (Logical Definition) and CRD Bundle of Request Resources
- Refer to this Profile: Coverage Information and CRD Appointment with Order
- CapabilityStatements using this Profile: CRD Client USCDI 1, CRD Client USCDI 3 and CRD Client USCDI 4

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

Description Differentials, Snapshots, and other representations.

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DeviceRequest |  | 0..* | DeviceRequest | Medical device request
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
contained | S | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url, value:value
extension:Coverage-Information | S C | 0..* | (Complex) | Coverage Info URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information Constraints: crd-ci-q1, crd-ci-q2, crd-ci-q3, crd-ci-q4, crd-ci-q5, crd-ci-q6, crd-ci-q7, crd-ci-q8, crd-ci-q9
extension:EncounterCategory | S | 0..1 | (Complex) | Encounter Category URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category"
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: ActEncounterCode (3.0.0) (required)
extension:ServiceCategory | S | 0..1 | (Complex) | Service Category URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category"
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: X12 Service Type (required)
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | S Σ | 0..* | Identifier | External Request identifier
basedOn | S Σ | 0..* | Reference(Resource) | What request fulfills
status | ?!S Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): Codes representing the status of the request. Example General: draft
intent | ?!Σ | 1..1 | code | proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option Binding: RequestIntent (required): The kind of diagnostic request.
Slices for code[x] | S Σ | 1..1 |  | Device requested Slice: Unordered, Closed by type:$this Binding: CRD Device Request Codes Value Set (extensible)
codeReference |  |  | Reference(CRD Device) |
codeCodeableConcept |  |  | CodeableConcept |
code[x]:codeCodeableConcept | S Σ | 0..1 | CodeableConcept | Device requested Binding: FHIRDeviceTypes (example): Codes for devices that can be requested.
Slices for extension |  |  |  | Content/Rules for all slices
extension:BillingOptions | S | 0..* | CodeableConcept | Expected Billing Code(s) URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-billing-options Binding: CRD Billing Codes Value Set (extensible)
code[x]:codeReference | S Σ | 0..1 | Reference(CRD Device) | Device requested
parameter | S | 0..* | BackboneElement | Device details
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
subject | S Σ | 1..1 | Reference(CRD Patient) | Focus of request
encounter | Σ | 0..1 | Reference(CRD Encounter) | Encounter motivating request
occurrence[x] | S Σ | 0..1 |  | Desired time or schedule for use
occurrenceDateTime |  |  | dateTime |
occurrencePeriod |  |  | Period |
occurrenceTiming |  |  | Timing |
authoredOn | S Σ | 1..1 | dateTime | When recorded
requester | S Σ | 1..1 | Reference(CRD Practitioner S | HRex PractitionerRole Profile S) | Who/what is requesting diagnostics
performer | S Σ | 0..1 | Reference(CRD Practitioner S | HRex PractitionerRole Profile S) | Requested Filler
reasonCode | S Σ | 0..* | CodeableConcept | Coded Reason for request Binding: Condition/Problem/DiagnosisCodes (example): Diagnosis or problem codes justifying the reason for requesting the device.
reasonReference | S Σ | 0..* | Reference(US Core Condition Problems and Health Concerns Profile(7.0.0) | US Core Condition Encounter Diagnosis Profile(7.0.0) | US Core DiagnosticReport Profile for Laboratory Results Reporting(7.0.0) | US Core DiagnosticReport Profile for Report and Note Exchange(7.0.0) | US Core DocumentReference Profile(7.0.0) | Observation) | Linked Reason for request
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
DeviceRequest.extension:EncounterCategory.​value[x] | Base | required | ActEncounterCode | 📍3.0.0 | THO v7.1
DeviceRequest.extension:ServiceCategory.​value[x] | Base | required | X12 Service Type | 📦2.2.1 | This IG
DeviceRequest.status | Base | required | RequestStatus | 📍4.0.1 | FHIR Std.
DeviceRequest.intent | Base | required | RequestIntent | 📍4.0.1 | FHIR Std.
DeviceRequest.code[x] | Base | extensible | CRD Device Request Codes Value Set | 📦2.2.1 | This IG
DeviceRequest.code[x]:codeCodeableConcept | Base | example | FHIR Device Types | 📍4.0.1 | FHIR Std.
DeviceRequest.reasonCode | Base | example | Condition/Problem/Diagnosis Codes | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
crd-ci-q1 | error | DeviceRequest.extension:Coverage-Information | Questionnaire is only allowed when doc-needed exists | `extension.where(url='questionnaire').exists() implies extension.where(url = 'doc-needed').exists()`
crd-ci-q2 | error | DeviceRequest.extension:Coverage-Information | If covered is set to 'not-covered', then 'pa-needed' must not exist. | `extension.where(url = 'covered' and value = 'not-covered').exists() implies extension.where(url = 'pa-needed').exists().not()`
crd-ci-q3 | error | DeviceRequest.extension:Coverage-Information | 'info-needed' SHALL exist if and only if at least one of 'covered', 'pa-needed', or 'doc-needed' is set to 'conditional'. | `extension.where((url = 'covered' or url = 'pa-needed' or url = 'doc-needed') and value = 'conditional').count() >= 1 implies extension.where(url = 'info-needed').exists()`
crd-ci-q4 | error | DeviceRequest.extension:Coverage-Information | If 'pa-needed' is 'satisfied', 'noauth', or 'not-covered', then 'Doc-purpose' cannot be 'withpa'. | `extension.where(url = 'pa-needed' and (value = 'satisfied' or value = 'noauth' or value = 'not-covered')) and extension.where(url = 'doc-purpose').exists() implies extension.where(url = 'doc-purpose').all(value != 'withpa')`
crd-ci-q5 | error | DeviceRequest.extension:Coverage-Information | 'satisfied-pa-id' must exist if and only if 'pa-needed' is set to 'satisfied'. | `extension.where(url = 'pa-needed' and value = 'satisfied').exists() = extension.where(url = 'satisfied-pa-id').exists()`
crd-ci-q6 | error | DeviceRequest.extension:Coverage-Information | If 'info-needed' is OTH, then reason must be specified | `extension.where(url = 'info-needed' and value = 'OTH').exists() implies extension.where(url = 'reason').exists()`
crd-ci-q7 | error | DeviceRequest.extension:Coverage-Information | If reason.coding is present and is not from the extensible value set, then reason.text must be present | `extension.where(url = 'reason').empty() or extension.where(url = 'reason').value.text.exists() or extension.where(url = 'reason').value.memberOf('http://hl7.org/fhir/us/davinci-crd/ValueSet/coverageAssertionReasons')`
crd-ci-q8 | error | DeviceRequest.extension:Coverage-Information | If doc-purpose is present with a value other than 'conditional', then reason must be present | `extension.where(url = 'doc-purpose' and value != 'conditional').exists() implies extension.where(url = 'reason').exists()`
crd-ci-q9 | error | DeviceRequest.extension:Coverage-Information | If any of 'covered', 'pa-needed', or 'doc-needed' is set to 'indeterminate', then reason must be present to explain the issue that is preventing the payer from making a coverage determination. | `extension.where((url = 'covered' or url = 'pa-needed' or url = 'doc-needed') and value = 'indeterminate').count() >= 1 implies extension.where(url = 'reason').exists()`
dom-2 | error | DeviceRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | DeviceRequest | 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 | error | DeviceRequest | 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 | error | DeviceRequest | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | DeviceRequest | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DeviceRequest |  |  | DeviceRequest |
contained | S | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url, value:value
extension:Coverage-Information | S | 0..* | (Complex) | Coverage Info URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information
extension:EncounterCategory | S | 0..1 | (Complex) | Encounter Category URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: ActEncounterCode (3.0.0) (required)
extension:ServiceCategory | S | 0..1 | (Complex) | Service Category URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: X12 Service Type (required)
identifier | S | 0..* | Identifier | External Request identifier
basedOn | S | 0..* | Reference(Resource) | What request fulfills
status | S | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Example General: draft
Slices for code[x] | S | 1..1 |  | Device requested Slice: Unordered, Open by type:$this Binding: CRD Device Request Codes Value Set (extensible)
codeReference |  |  | Reference(CRD Device) |
codeCodeableConcept |  |  | CodeableConcept |
code[x]:codeCodeableConcept | S | 0..1 | CodeableConcept | Device requested
Slices for extension |  |  |  | Content/Rules for all slices
extension:BillingOptions | S | 0..* | CodeableConcept | Expected Billing Code(s) URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-billing-options Binding: CRD Billing Codes Value Set (extensible)
code[x]:codeReference | S | 0..1 | Reference(CRD Device) | Device requested
parameter | S | 0..* | BackboneElement | Device details
subject | S | 1..1 | Reference(CRD Patient) | Focus of request
encounter |  | 0..1 | Reference(CRD Encounter) | Encounter motivating request
occurrence[x] | S | 0..1 | dateTime, Period, Timing | Desired time or schedule for use
authoredOn | S | 1..1 | dateTime | When recorded
requester | S | 1..1 | Reference(CRD Practitioner S | HRex PractitionerRole Profile S) | Who/what is requesting diagnostics
performer | S | 0..1 | Reference(CRD Practitioner S | HRex PractitionerRole Profile S) | Requested Filler
reasonCode | S | 0..* | CodeableConcept | Coded Reason for request
reasonReference | S | 0..* | Reference(US Core Condition Problems and Health Concerns Profile(7.0.0) | US Core Condition Encounter Diagnosis Profile(7.0.0) | US Core DiagnosticReport Profile for Laboratory Results Reporting(7.0.0) | US Core DiagnosticReport Profile for Report and Note Exchange(7.0.0) | US Core DocumentReference Profile(7.0.0) | Observation) | Linked Reason for request
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
DeviceRequest.extension:EncounterCategory.​value[x] | Base | required | ActEncounterCode | 📍3.0.0 | THO v7.1
DeviceRequest.extension:ServiceCategory.​value[x] | Base | required | X12 Service Type | 📦2.2.1 | This IG
DeviceRequest.code[x] | Base | extensible | CRD Device Request Codes Value Set | 📦2.2.1 | This IG

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DeviceRequest |  | 0..* | DeviceRequest | Medical device request
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained | S | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url, value:value
extension:Coverage-Information | S C | 0..* | (Complex) | Coverage Info URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information Constraints: crd-ci-q1, crd-ci-q2, crd-ci-q3, crd-ci-q4, crd-ci-q5, crd-ci-q6, crd-ci-q7, crd-ci-q8, crd-ci-q9
extension:EncounterCategory | S | 0..1 | (Complex) | Encounter Category URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category"
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: ActEncounterCode (3.0.0) (required)
extension:ServiceCategory | S | 0..1 | (Complex) | Service Category URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category"
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: X12 Service Type (required)
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | S Σ | 0..* | Identifier | External Request identifier
instantiatesCanonical | Σ | 0..* | canonical(ActivityDefinition | PlanDefinition) | Instantiates FHIR protocol or definition
instantiatesUri | Σ | 0..* | uri | Instantiates external protocol or definition
basedOn | S Σ | 0..* | Reference(Resource) | What request fulfills
priorRequest | Σ | 0..* | Reference(Resource) | What request replaces
groupIdentifier | Σ | 0..1 | Identifier | Identifier of composite request
status | ?!S Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): Codes representing the status of the request. Example General: draft
intent | ?!Σ | 1..1 | code | proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option Binding: RequestIntent (required): The kind of diagnostic request.
priority | Σ | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request.
Slices for code[x] | S Σ | 1..1 |  | Device requested Slice: Unordered, Closed by type:$this Binding: CRD Device Request Codes Value Set (extensible)
codeReference |  |  | Reference(CRD Device) |
codeCodeableConcept |  |  | CodeableConcept |
code[x]:codeCodeableConcept | S Σ | 0..1 | CodeableConcept | Device requested Binding: FHIRDeviceTypes (example): Codes for devices that can be requested.
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
extension:BillingOptions | S | 0..* | CodeableConcept | Expected Billing Code(s) URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-billing-options Binding: CRD Billing Codes Value Set (extensible)
coding | Σ | 0..* | Coding | Code defined by a terminology system
text | Σ | 0..1 | string | Plain text representation of the concept
code[x]:codeReference | S Σ | 0..1 | Reference(CRD Device) | Device requested
parameter | S | 0..* | BackboneElement | Device details
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
code |  | 0..1 | CodeableConcept | Device detail Binding Description: (example): A code that identifies the device detail.
value[x] |  | 0..1 |  | Value of detail
valueCodeableConcept |  |  | CodeableConcept |
valueQuantity |  |  | Quantity |
valueRange |  |  | Range |
valueBoolean |  |  | boolean |
subject | S Σ | 1..1 | Reference(CRD Patient) | Focus of request
encounter | Σ | 0..1 | Reference(CRD Encounter) | Encounter motivating request
occurrence[x] | S Σ | 0..1 |  | Desired time or schedule for use
occurrenceDateTime |  |  | dateTime |
occurrencePeriod |  |  | Period |
occurrenceTiming |  |  | Timing |
authoredOn | S Σ | 1..1 | dateTime | When recorded
requester | S Σ | 1..1 | Reference(CRD Practitioner S | HRex PractitionerRole Profile S) | Who/what is requesting diagnostics
performerType | Σ | 0..1 | CodeableConcept | Filler role Binding: ParticipantRoles (example): Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc.
performer | S Σ | 0..1 | Reference(CRD Practitioner S | HRex PractitionerRole Profile S) | Requested Filler
reasonCode | S Σ | 0..* | CodeableConcept | Coded Reason for request Binding: Condition/Problem/DiagnosisCodes (example): Diagnosis or problem codes justifying the reason for requesting the device.
reasonReference | S Σ | 0..* | Reference(US Core Condition Problems and Health Concerns Profile(7.0.0) | US Core Condition Encounter Diagnosis Profile(7.0.0) | US Core DiagnosticReport Profile for Laboratory Results Reporting(7.0.0) | US Core DiagnosticReport Profile for Report and Note Exchange(7.0.0) | US Core DocumentReference Profile(7.0.0) | Observation) | Linked Reason for request
insurance |  | 0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage
supportingInfo |  | 0..* | Reference(Resource) | Additional clinical information
note |  | 0..* | Annotation | Notes or comments
relevantHistory |  | 0..* | Reference(Provenance) | Request provenance
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
DeviceRequest.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
DeviceRequest.extension:EncounterCategory.​value[x] | Base | required | ActEncounterCode | 📍3.0.0 | THO v7.1
DeviceRequest.extension:ServiceCategory.​value[x] | Base | required | X12 Service Type | 📦2.2.1 | This IG
DeviceRequest.status | Base | required | RequestStatus | 📍4.0.1 | FHIR Std.
DeviceRequest.intent | Base | required | RequestIntent | 📍4.0.1 | FHIR Std.
DeviceRequest.priority | Base | required | Request priority | 📍4.0.1 | FHIR Std.
DeviceRequest.code[x] | Base | extensible | CRD Device Request Codes Value Set | 📦2.2.1 | This IG
DeviceRequest.code[x]:codeCodeableConcept | Base | example | FHIR Device Types | 📍4.0.1 | FHIR Std.
DeviceRequest.parameter.​code | Base | example |  | Not State | Unknown
DeviceRequest.performerType | Base | example | Participant Roles | 📍4.0.1 | FHIR Std.
DeviceRequest.reasonCode | Base | example | Condition/Problem/Diagnosis Codes | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
crd-ci-q1 | error | DeviceRequest.extension:Coverage-Information | Questionnaire is only allowed when doc-needed exists | `extension.where(url='questionnaire').exists() implies extension.where(url = 'doc-needed').exists()`
crd-ci-q2 | error | DeviceRequest.extension:Coverage-Information | If covered is set to 'not-covered', then 'pa-needed' must not exist. | `extension.where(url = 'covered' and value = 'not-covered').exists() implies extension.where(url = 'pa-needed').exists().not()`
crd-ci-q3 | error | DeviceRequest.extension:Coverage-Information | 'info-needed' SHALL exist if and only if at least one of 'covered', 'pa-needed', or 'doc-needed' is set to 'conditional'. | `extension.where((url = 'covered' or url = 'pa-needed' or url = 'doc-needed') and value = 'conditional').count() >= 1 implies extension.where(url = 'info-needed').exists()`
crd-ci-q4 | error | DeviceRequest.extension:Coverage-Information | If 'pa-needed' is 'satisfied', 'noauth', or 'not-covered', then 'Doc-purpose' cannot be 'withpa'. | `extension.where(url = 'pa-needed' and (value = 'satisfied' or value = 'noauth' or value = 'not-covered')) and extension.where(url = 'doc-purpose').exists() implies extension.where(url = 'doc-purpose').all(value != 'withpa')`
crd-ci-q5 | error | DeviceRequest.extension:Coverage-Information | 'satisfied-pa-id' must exist if and only if 'pa-needed' is set to 'satisfied'. | `extension.where(url = 'pa-needed' and value = 'satisfied').exists() = extension.where(url = 'satisfied-pa-id').exists()`
crd-ci-q6 | error | DeviceRequest.extension:Coverage-Information | If 'info-needed' is OTH, then reason must be specified | `extension.where(url = 'info-needed' and value = 'OTH').exists() implies extension.where(url = 'reason').exists()`
crd-ci-q7 | error | DeviceRequest.extension:Coverage-Information | If reason.coding is present and is not from the extensible value set, then reason.text must be present | `extension.where(url = 'reason').empty() or extension.where(url = 'reason').value.text.exists() or extension.where(url = 'reason').value.memberOf('http://hl7.org/fhir/us/davinci-crd/ValueSet/coverageAssertionReasons')`
crd-ci-q8 | error | DeviceRequest.extension:Coverage-Information | If doc-purpose is present with a value other than 'conditional', then reason must be present | `extension.where(url = 'doc-purpose' and value != 'conditional').exists() implies extension.where(url = 'reason').exists()`
crd-ci-q9 | error | DeviceRequest.extension:Coverage-Information | If any of 'covered', 'pa-needed', or 'doc-needed' is set to 'indeterminate', then reason must be present to explain the issue that is preventing the payer from making a coverage determination. | `extension.where((url = 'covered' or url = 'pa-needed' or url = 'doc-needed') and value = 'indeterminate').count() >= 1 implies extension.where(url = 'reason').exists()`
dom-2 | error | DeviceRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | DeviceRequest | 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 | error | DeviceRequest | 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 | error | DeviceRequest | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | DeviceRequest | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

Summary

Mandatory: 3 elements
Must-Support: 19 elements

Structures

This structure refers to these other structures:

- CRD Device (http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-device)
- CRD Patient (http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-patient)
- CRD Encounter (http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-encounter)
- CRD Practitioner (http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-practitioner)
- HRex PractitionerRole Profile (http://hl7.org/fhir/us/davinci-hrex/StructureDefinition/hrex-practitionerrole)
- US Core Condition Problems and Health Concerns Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-condition-problems-health-concerns|7.0.0)
- US Core Condition Encounter Diagnosis Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-condition-encounter-diagnosis|7.0.0)
- US Core DiagnosticReport Profile for Laboratory Results Reporting (http://hl7.org/fhir/us/core/StructureDefinition/us-core-diagnosticreport-lab|7.0.0)
- US Core DiagnosticReport Profile for Report and Note Exchange (http://hl7.org/fhir/us/core/StructureDefinition/us-core-diagnosticreport-note|7.0.0)
- US Core DocumentReference Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-documentreference|7.0.0)

Extensions

This structure refers to these extensions:

- http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information
- http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category
- http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-billing-options

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of DeviceRequest.code[x]

Maturity: 4

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DeviceRequest |  | 0..* | DeviceRequest | Medical device request
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
contained | S | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url, value:value
extension:Coverage-Information | S C | 0..* | (Complex) | Coverage Info URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information Constraints: crd-ci-q1, crd-ci-q2, crd-ci-q3, crd-ci-q4, crd-ci-q5, crd-ci-q6, crd-ci-q7, crd-ci-q8, crd-ci-q9
extension:EncounterCategory | S | 0..1 | (Complex) | Encounter Category URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category"
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: ActEncounterCode (3.0.0) (required)
extension:ServiceCategory | S | 0..1 | (Complex) | Service Category URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category"
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: X12 Service Type (required)
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | S Σ | 0..* | Identifier | External Request identifier
basedOn | S Σ | 0..* | Reference(Resource) | What request fulfills
status | ?!S Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): Codes representing the status of the request. Example General: draft
intent | ?!Σ | 1..1 | code | proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option Binding: RequestIntent (required): The kind of diagnostic request.
Slices for code[x] | S Σ | 1..1 |  | Device requested Slice: Unordered, Closed by type:$this Binding: CRD Device Request Codes Value Set (extensible)
codeReference |  |  | Reference(CRD Device) |
codeCodeableConcept |  |  | CodeableConcept |
code[x]:codeCodeableConcept | S Σ | 0..1 | CodeableConcept | Device requested Binding: FHIRDeviceTypes (example): Codes for devices that can be requested.
Slices for extension |  |  |  | Content/Rules for all slices
extension:BillingOptions | S | 0..* | CodeableConcept | Expected Billing Code(s) URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-billing-options Binding: CRD Billing Codes Value Set (extensible)
code[x]:codeReference | S Σ | 0..1 | Reference(CRD Device) | Device requested
parameter | S | 0..* | BackboneElement | Device details
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
subject | S Σ | 1..1 | Reference(CRD Patient) | Focus of request
encounter | Σ | 0..1 | Reference(CRD Encounter) | Encounter motivating request
occurrence[x] | S Σ | 0..1 |  | Desired time or schedule for use
occurrenceDateTime |  |  | dateTime |
occurrencePeriod |  |  | Period |
occurrenceTiming |  |  | Timing |
authoredOn | S Σ | 1..1 | dateTime | When recorded
requester | S Σ | 1..1 | Reference(CRD Practitioner S | HRex PractitionerRole Profile S) | Who/what is requesting diagnostics
performer | S Σ | 0..1 | Reference(CRD Practitioner S | HRex PractitionerRole Profile S) | Requested Filler
reasonCode | S Σ | 0..* | CodeableConcept | Coded Reason for request Binding: Condition/Problem/DiagnosisCodes (example): Diagnosis or problem codes justifying the reason for requesting the device.
reasonReference | S Σ | 0..* | Reference(US Core Condition Problems and Health Concerns Profile(7.0.0) | US Core Condition Encounter Diagnosis Profile(7.0.0) | US Core DiagnosticReport Profile for Laboratory Results Reporting(7.0.0) | US Core DiagnosticReport Profile for Report and Note Exchange(7.0.0) | US Core DocumentReference Profile(7.0.0) | Observation) | Linked Reason for request
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
DeviceRequest.extension:EncounterCategory.​value[x] | Base | required | ActEncounterCode | 📍3.0.0 | THO v7.1
DeviceRequest.extension:ServiceCategory.​value[x] | Base | required | X12 Service Type | 📦2.2.1 | This IG
DeviceRequest.status | Base | required | RequestStatus | 📍4.0.1 | FHIR Std.
DeviceRequest.intent | Base | required | RequestIntent | 📍4.0.1 | FHIR Std.
DeviceRequest.code[x] | Base | extensible | CRD Device Request Codes Value Set | 📦2.2.1 | This IG
DeviceRequest.code[x]:codeCodeableConcept | Base | example | FHIR Device Types | 📍4.0.1 | FHIR Std.
DeviceRequest.reasonCode | Base | example | Condition/Problem/Diagnosis Codes | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
crd-ci-q1 | error | DeviceRequest.extension:Coverage-Information | Questionnaire is only allowed when doc-needed exists | `extension.where(url='questionnaire').exists() implies extension.where(url = 'doc-needed').exists()`
crd-ci-q2 | error | DeviceRequest.extension:Coverage-Information | If covered is set to 'not-covered', then 'pa-needed' must not exist. | `extension.where(url = 'covered' and value = 'not-covered').exists() implies extension.where(url = 'pa-needed').exists().not()`
crd-ci-q3 | error | DeviceRequest.extension:Coverage-Information | 'info-needed' SHALL exist if and only if at least one of 'covered', 'pa-needed', or 'doc-needed' is set to 'conditional'. | `extension.where((url = 'covered' or url = 'pa-needed' or url = 'doc-needed') and value = 'conditional').count() >= 1 implies extension.where(url = 'info-needed').exists()`
crd-ci-q4 | error | DeviceRequest.extension:Coverage-Information | If 'pa-needed' is 'satisfied', 'noauth', or 'not-covered', then 'Doc-purpose' cannot be 'withpa'. | `extension.where(url = 'pa-needed' and (value = 'satisfied' or value = 'noauth' or value = 'not-covered')) and extension.where(url = 'doc-purpose').exists() implies extension.where(url = 'doc-purpose').all(value != 'withpa')`
crd-ci-q5 | error | DeviceRequest.extension:Coverage-Information | 'satisfied-pa-id' must exist if and only if 'pa-needed' is set to 'satisfied'. | `extension.where(url = 'pa-needed' and value = 'satisfied').exists() = extension.where(url = 'satisfied-pa-id').exists()`
crd-ci-q6 | error | DeviceRequest.extension:Coverage-Information | If 'info-needed' is OTH, then reason must be specified | `extension.where(url = 'info-needed' and value = 'OTH').exists() implies extension.where(url = 'reason').exists()`
crd-ci-q7 | error | DeviceRequest.extension:Coverage-Information | If reason.coding is present and is not from the extensible value set, then reason.text must be present | `extension.where(url = 'reason').empty() or extension.where(url = 'reason').value.text.exists() or extension.where(url = 'reason').value.memberOf('http://hl7.org/fhir/us/davinci-crd/ValueSet/coverageAssertionReasons')`
crd-ci-q8 | error | DeviceRequest.extension:Coverage-Information | If doc-purpose is present with a value other than 'conditional', then reason must be present | `extension.where(url = 'doc-purpose' and value != 'conditional').exists() implies extension.where(url = 'reason').exists()`
crd-ci-q9 | error | DeviceRequest.extension:Coverage-Information | If any of 'covered', 'pa-needed', or 'doc-needed' is set to 'indeterminate', then reason must be present to explain the issue that is preventing the payer from making a coverage determination. | `extension.where((url = 'covered' or url = 'pa-needed' or url = 'doc-needed') and value = 'indeterminate').count() >= 1 implies extension.where(url = 'reason').exists()`
dom-2 | error | DeviceRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | DeviceRequest | 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 | error | DeviceRequest | 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 | error | DeviceRequest | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | DeviceRequest | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

Differential View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DeviceRequest |  |  | DeviceRequest |
contained | S | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url, value:value
extension:Coverage-Information | S | 0..* | (Complex) | Coverage Info URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information
extension:EncounterCategory | S | 0..1 | (Complex) | Encounter Category URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: ActEncounterCode (3.0.0) (required)
extension:ServiceCategory | S | 0..1 | (Complex) | Service Category URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: X12 Service Type (required)
identifier | S | 0..* | Identifier | External Request identifier
basedOn | S | 0..* | Reference(Resource) | What request fulfills
status | S | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Example General: draft
Slices for code[x] | S | 1..1 |  | Device requested Slice: Unordered, Open by type:$this Binding: CRD Device Request Codes Value Set (extensible)
codeReference |  |  | Reference(CRD Device) |
codeCodeableConcept |  |  | CodeableConcept |
code[x]:codeCodeableConcept | S | 0..1 | CodeableConcept | Device requested
Slices for extension |  |  |  | Content/Rules for all slices
extension:BillingOptions | S | 0..* | CodeableConcept | Expected Billing Code(s) URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-billing-options Binding: CRD Billing Codes Value Set (extensible)
code[x]:codeReference | S | 0..1 | Reference(CRD Device) | Device requested
parameter | S | 0..* | BackboneElement | Device details
subject | S | 1..1 | Reference(CRD Patient) | Focus of request
encounter |  | 0..1 | Reference(CRD Encounter) | Encounter motivating request
occurrence[x] | S | 0..1 | dateTime, Period, Timing | Desired time or schedule for use
authoredOn | S | 1..1 | dateTime | When recorded
requester | S | 1..1 | Reference(CRD Practitioner S | HRex PractitionerRole Profile S) | Who/what is requesting diagnostics
performer | S | 0..1 | Reference(CRD Practitioner S | HRex PractitionerRole Profile S) | Requested Filler
reasonCode | S | 0..* | CodeableConcept | Coded Reason for request
reasonReference | S | 0..* | Reference(US Core Condition Problems and Health Concerns Profile(7.0.0) | US Core Condition Encounter Diagnosis Profile(7.0.0) | US Core DiagnosticReport Profile for Laboratory Results Reporting(7.0.0) | US Core DiagnosticReport Profile for Report and Note Exchange(7.0.0) | US Core DocumentReference Profile(7.0.0) | Observation) | Linked Reason for request
Documentation for this format

#### Terminology Bindings (Differential)

Path | Status | Usage | ValueSet | Version | Source
DeviceRequest.extension:EncounterCategory.​value[x] | Base | required | ActEncounterCode | 📍3.0.0 | THO v7.1
DeviceRequest.extension:ServiceCategory.​value[x] | Base | required | X12 Service Type | 📦2.2.1 | This IG
DeviceRequest.code[x] | Base | extensible | CRD Device Request Codes Value Set | 📦2.2.1 | This IG

Snapshot ViewView

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DeviceRequest |  | 0..* | DeviceRequest | Medical device request
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred): A human language.
Additional Bindings | Purpose
AllLanguages | Max Binding
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained | S | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url, value:value
extension:Coverage-Information | S C | 0..* | (Complex) | Coverage Info URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information Constraints: crd-ci-q1, crd-ci-q2, crd-ci-q3, crd-ci-q4, crd-ci-q5, crd-ci-q6, crd-ci-q7, crd-ci-q8, crd-ci-q9
extension:EncounterCategory | S | 0..1 | (Complex) | Encounter Category URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category"
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: ActEncounterCode (3.0.0) (required)
extension:ServiceCategory | S | 0..1 | (Complex) | Service Category URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category"
value[x] |  | 0..1 | CodeableConcept | Value of extension Binding: X12 Service Type (required)
modifierExtension | ?! | 0..* | Extension | Extensions that cannot be ignored
identifier | S Σ | 0..* | Identifier | External Request identifier
instantiatesCanonical | Σ | 0..* | canonical(ActivityDefinition | PlanDefinition) | Instantiates FHIR protocol or definition
instantiatesUri | Σ | 0..* | uri | Instantiates external protocol or definition
basedOn | S Σ | 0..* | Reference(Resource) | What request fulfills
priorRequest | Σ | 0..* | Reference(Resource) | What request replaces
groupIdentifier | Σ | 0..1 | Identifier | Identifier of composite request
status | ?!S Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): Codes representing the status of the request. Example General: draft
intent | ?!Σ | 1..1 | code | proposal | plan | directive | order | original-order | reflex-order | filler-order | instance-order | option Binding: RequestIntent (required): The kind of diagnostic request.
priority | Σ | 0..1 | code | routine | urgent | asap | stat Binding: RequestPriority (required): Identifies the level of importance to be assigned to actioning the request.
Slices for code[x] | S Σ | 1..1 |  | Device requested Slice: Unordered, Closed by type:$this Binding: CRD Device Request Codes Value Set (extensible)
codeReference |  |  | Reference(CRD Device) |
codeCodeableConcept |  |  | CodeableConcept |
code[x]:codeCodeableConcept | S Σ | 0..1 | CodeableConcept | Device requested Binding: FHIRDeviceTypes (example): Codes for devices that can be requested.
id |  | 0..1 | string | Unique id for inter-element referencing
Slices for extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
extension:BillingOptions | S | 0..* | CodeableConcept | Expected Billing Code(s) URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-billing-options Binding: CRD Billing Codes Value Set (extensible)
coding | Σ | 0..* | Coding | Code defined by a terminology system
text | Σ | 0..1 | string | Plain text representation of the concept
code[x]:codeReference | S Σ | 0..1 | Reference(CRD Device) | Device requested
parameter | S | 0..* | BackboneElement | Device details
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
code |  | 0..1 | CodeableConcept | Device detail Binding Description: (example): A code that identifies the device detail.
value[x] |  | 0..1 |  | Value of detail
valueCodeableConcept |  |  | CodeableConcept |
valueQuantity |  |  | Quantity |
valueRange |  |  | Range |
valueBoolean |  |  | boolean |
subject | S Σ | 1..1 | Reference(CRD Patient) | Focus of request
encounter | Σ | 0..1 | Reference(CRD Encounter) | Encounter motivating request
occurrence[x] | S Σ | 0..1 |  | Desired time or schedule for use
occurrenceDateTime |  |  | dateTime |
occurrencePeriod |  |  | Period |
occurrenceTiming |  |  | Timing |
authoredOn | S Σ | 1..1 | dateTime | When recorded
requester | S Σ | 1..1 | Reference(CRD Practitioner S | HRex PractitionerRole Profile S) | Who/what is requesting diagnostics
performerType | Σ | 0..1 | CodeableConcept | Filler role Binding: ParticipantRoles (example): Indicates specific responsibility of an individual within the care team, such as "Primary physician", "Team coordinator", "Caregiver", etc.
performer | S Σ | 0..1 | Reference(CRD Practitioner S | HRex PractitionerRole Profile S) | Requested Filler
reasonCode | S Σ | 0..* | CodeableConcept | Coded Reason for request Binding: Condition/Problem/DiagnosisCodes (example): Diagnosis or problem codes justifying the reason for requesting the device.
reasonReference | S Σ | 0..* | Reference(US Core Condition Problems and Health Concerns Profile(7.0.0) | US Core Condition Encounter Diagnosis Profile(7.0.0) | US Core DiagnosticReport Profile for Laboratory Results Reporting(7.0.0) | US Core DiagnosticReport Profile for Report and Note Exchange(7.0.0) | US Core DocumentReference Profile(7.0.0) | Observation) | Linked Reason for request
insurance |  | 0..* | Reference(Coverage | ClaimResponse) | Associated insurance coverage
supportingInfo |  | 0..* | Reference(Resource) | Additional clinical information
note |  | 0..* | Annotation | Notes or comments
relevantHistory |  | 0..* | Reference(Provenance) | Request provenance
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
DeviceRequest.language | Base | preferred | Common Languages | 📍4.0.1 | FHIR Std.
DeviceRequest.extension:EncounterCategory.​value[x] | Base | required | ActEncounterCode | 📍3.0.0 | THO v7.1
DeviceRequest.extension:ServiceCategory.​value[x] | Base | required | X12 Service Type | 📦2.2.1 | This IG
DeviceRequest.status | Base | required | RequestStatus | 📍4.0.1 | FHIR Std.
DeviceRequest.intent | Base | required | RequestIntent | 📍4.0.1 | FHIR Std.
DeviceRequest.priority | Base | required | Request priority | 📍4.0.1 | FHIR Std.
DeviceRequest.code[x] | Base | extensible | CRD Device Request Codes Value Set | 📦2.2.1 | This IG
DeviceRequest.code[x]:codeCodeableConcept | Base | example | FHIR Device Types | 📍4.0.1 | FHIR Std.
DeviceRequest.parameter.​code | Base | example |  | Not State | Unknown
DeviceRequest.performerType | Base | example | Participant Roles | 📍4.0.1 | FHIR Std.
DeviceRequest.reasonCode | Base | example | Condition/Problem/Diagnosis Codes | 📍4.0.1 | FHIR Std.

#### Constraints

Id | Grade | Path(s) | Description | Expression
crd-ci-q1 | error | DeviceRequest.extension:Coverage-Information | Questionnaire is only allowed when doc-needed exists | `extension.where(url='questionnaire').exists() implies extension.where(url = 'doc-needed').exists()`
crd-ci-q2 | error | DeviceRequest.extension:Coverage-Information | If covered is set to 'not-covered', then 'pa-needed' must not exist. | `extension.where(url = 'covered' and value = 'not-covered').exists() implies extension.where(url = 'pa-needed').exists().not()`
crd-ci-q3 | error | DeviceRequest.extension:Coverage-Information | 'info-needed' SHALL exist if and only if at least one of 'covered', 'pa-needed', or 'doc-needed' is set to 'conditional'. | `extension.where((url = 'covered' or url = 'pa-needed' or url = 'doc-needed') and value = 'conditional').count() >= 1 implies extension.where(url = 'info-needed').exists()`
crd-ci-q4 | error | DeviceRequest.extension:Coverage-Information | If 'pa-needed' is 'satisfied', 'noauth', or 'not-covered', then 'Doc-purpose' cannot be 'withpa'. | `extension.where(url = 'pa-needed' and (value = 'satisfied' or value = 'noauth' or value = 'not-covered')) and extension.where(url = 'doc-purpose').exists() implies extension.where(url = 'doc-purpose').all(value != 'withpa')`
crd-ci-q5 | error | DeviceRequest.extension:Coverage-Information | 'satisfied-pa-id' must exist if and only if 'pa-needed' is set to 'satisfied'. | `extension.where(url = 'pa-needed' and value = 'satisfied').exists() = extension.where(url = 'satisfied-pa-id').exists()`
crd-ci-q6 | error | DeviceRequest.extension:Coverage-Information | If 'info-needed' is OTH, then reason must be specified | `extension.where(url = 'info-needed' and value = 'OTH').exists() implies extension.where(url = 'reason').exists()`
crd-ci-q7 | error | DeviceRequest.extension:Coverage-Information | If reason.coding is present and is not from the extensible value set, then reason.text must be present | `extension.where(url = 'reason').empty() or extension.where(url = 'reason').value.text.exists() or extension.where(url = 'reason').value.memberOf('http://hl7.org/fhir/us/davinci-crd/ValueSet/coverageAssertionReasons')`
crd-ci-q8 | error | DeviceRequest.extension:Coverage-Information | If doc-purpose is present with a value other than 'conditional', then reason must be present | `extension.where(url = 'doc-purpose' and value != 'conditional').exists() implies extension.where(url = 'reason').exists()`
crd-ci-q9 | error | DeviceRequest.extension:Coverage-Information | If any of 'covered', 'pa-needed', or 'doc-needed' is set to 'indeterminate', then reason must be present to explain the issue that is preventing the payer from making a coverage determination. | `extension.where((url = 'covered' or url = 'pa-needed' or url = 'doc-needed') and value = 'indeterminate').count() >= 1 implies extension.where(url = 'reason').exists()`
dom-2 | error | DeviceRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | DeviceRequest | 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 | error | DeviceRequest | 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 | error | DeviceRequest | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | DeviceRequest | A resource should have narrative for robust management | `text.`div`.exists()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

Summary

Mandatory: 3 elements
Must-Support: 19 elements

Structures

This structure refers to these other structures:

- CRD Device (http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-device)
- CRD Patient (http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-patient)
- CRD Encounter (http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-encounter)
- CRD Practitioner (http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-practitioner)
- HRex PractitionerRole Profile (http://hl7.org/fhir/us/davinci-hrex/StructureDefinition/hrex-practitionerrole)
- US Core Condition Problems and Health Concerns Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-condition-problems-health-concerns|7.0.0)
- US Core Condition Encounter Diagnosis Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-condition-encounter-diagnosis|7.0.0)
- US Core DiagnosticReport Profile for Laboratory Results Reporting (http://hl7.org/fhir/us/core/StructureDefinition/us-core-diagnosticreport-lab|7.0.0)
- US Core DiagnosticReport Profile for Report and Note Exchange (http://hl7.org/fhir/us/core/StructureDefinition/us-core-diagnosticreport-note|7.0.0)
- US Core DocumentReference Profile (http://hl7.org/fhir/us/core/StructureDefinition/us-core-documentreference|7.0.0)

Extensions

This structure refers to these extensions:

- http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information
- http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-request-category
- http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-billing-options

Slices

This structure defines the following Slices:

- The element 1 is sliced based on the value of DeviceRequest.code[x]

Maturity: 4

Other representations of profile: CSV, Excel, Schematron