This page is part of the Da Vinci Coverage Requirements Discovery (CRD) FHIR IG (v1.0.0: STU 1) based on FHIR R4. This is the current published version in its permanent home (it will always be available at this URL). For a full list of available versions, see the Directory of published versions
Defining URL: | http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-devicerequest |
Version: | 1.0.0 |
Name: | DeviceRequest |
Status: | Draft as of 2018-07-25 |
Definition: | This profile specifies extensions and constraints on the DeviceRequest resource to support coverage requirements discovery. |
Publisher: | HL7 International - Financial Management Work Group |
Source Resource: | XML / JSON / Turtle |
The official URL for this profile is:
http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-devicerequest
CRD Clients SHALL use this profile to resolve references to DeviceRequest resources passed to CRD Services (e.g. selections
context references) and to populate draftOrders
context objects when invoking the following CDS Hooks:
Information provided in Must Support elements will commonly be required for CRD Services to perform coverage requirements discovery.
The insurance extension (ext-insurance) allows relevant coverage information to be conveyed with selections and/or draft orders. A search parameter is defined in this guide to enable the prefetch of coverage information when invoking hooks.
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from DeviceRequest
Summary
Mandatory: 3 elements
Must-Support: 14 elements
Fixed Value: 1 element
Structures
This structure refers to these other structures:
Extensions
This structure refers to these extensions:
This structure is derived from DeviceRequest
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
DeviceRequest | 0..* | DeviceRequest | Medical device request | |
id | Σ | 0..1 | string | 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) Max Binding: AllLanguages: A human language. | |
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
ext-insurance | S | 0..* | Reference(Coverage) | Insurance URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-insurance |
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. Fixed Value: 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. |
code[x] | SΣ | 1..1 | Device requested Binding: FHIRDeviceTypes (example): Codes for devices that can be requested. | |
codeReference | Reference(Device) | |||
codeCodeableConcept | CodeableConcept | |||
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: (unbound) (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(Patient) | Focus of request |
encounter | Σ | 0..1 | Reference(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(Practitioner | US Core PractitionerRole Profile) | 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(Practitioner | US Core PractitionerRole Profile) | 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 Profile | US Core Laboratory Result Observation Profile) | Linked Reason for request |
insurance | S | 0..* | Reference(Coverage) | 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 |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
DeviceRequest | 0..* | DeviceRequest | Medical device request | |
ext-insurance | 0..* | Reference(Coverage) | Insurance URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-insurance | |
identifier | Σ | 0..* | Identifier | External Request identifier |
basedOn | Σ | 0..* | Reference(Resource) | What request fulfills |
status | ?!Σ | 1..1 | code | draft | active | on-hold | revoked | completed | entered-in-error | unknown Binding: RequestStatus (required): Codes representing the status of the request. Fixed Value: draft |
code[x] | Σ | 1..1 | Device requested Binding: FHIRDeviceTypes (example): Codes for devices that can be requested. | |
codeReference | Reference(Device) | |||
codeCodeableConcept | CodeableConcept | |||
parameter | 0..* | BackboneElement | Device details | |
subject | Σ | 1..1 | Reference(Patient) | Focus of request |
occurrence[x] | Σ | 0..1 | Desired time or schedule for use | |
occurrenceDateTime | dateTime | |||
occurrencePeriod | Period | |||
occurrenceTiming | Timing | |||
authoredOn | Σ | 1..1 | dateTime | When recorded |
requester | Σ | 1..1 | Reference(Practitioner | US Core PractitionerRole Profile) | Who/what is requesting diagnostics |
performer | Σ | 0..1 | Reference(Practitioner | US Core PractitionerRole Profile) | Requested Filler |
reasonCode | Σ | 0..* | CodeableConcept | Coded Reason for request Binding: Condition/Problem/DiagnosisCodes (example): Diagnosis or problem codes justifying the reason for requesting the device. |
reasonReference | Σ | 0..* | Reference(US Core Condition Profile | US Core Laboratory Result Observation Profile) | Linked Reason for request |
insurance | 0..* | Reference(Coverage) | Associated insurance coverage | |
Documentation for this format |
This structure is derived from DeviceRequest
Summary
Mandatory: 3 elements
Must-Support: 14 elements
Fixed Value: 1 element
Structures
This structure refers to these other structures:
Extensions
This structure refers to these extensions:
Differential View
This structure is derived from DeviceRequest
Snapshot View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
DeviceRequest | 0..* | DeviceRequest | Medical device request | |
id | Σ | 0..1 | string | 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) Max Binding: AllLanguages: A human language. | |
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
contained | 0..* | Resource | Contained, inline Resources | |
extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
ext-insurance | S | 0..* | Reference(Coverage) | Insurance URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-insurance |
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. Fixed Value: 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. |
code[x] | SΣ | 1..1 | Device requested Binding: FHIRDeviceTypes (example): Codes for devices that can be requested. | |
codeReference | Reference(Device) | |||
codeCodeableConcept | CodeableConcept | |||
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: (unbound) (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(Patient) | Focus of request |
encounter | Σ | 0..1 | Reference(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(Practitioner | US Core PractitionerRole Profile) | 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(Practitioner | US Core PractitionerRole Profile) | 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 Profile | US Core Laboratory Result Observation Profile) | Linked Reason for request |
insurance | S | 0..* | Reference(Coverage) | 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 |
Other representations of profile: Schematron
Path | Conformance | ValueSet / Code |
DeviceRequest.language | preferred | CommonLanguages Max Binding: AllLanguages |
DeviceRequest.status | required | Fixed Value: draft |
DeviceRequest.intent | required | RequestIntent |
DeviceRequest.priority | required | RequestPriority |
DeviceRequest.code[x] | example | FHIRDeviceTypes |
DeviceRequest.parameter.code | example | |
DeviceRequest.performerType | example | ParticipantRoles |
DeviceRequest.reasonCode | example | Condition/Problem/DiagnosisCodes |
Id | Path | Details | Requirements |
dom-2 | DeviceRequest | If the resource is contained in another resource, it SHALL NOT contain nested Resources : contained.contained.empty() | |
dom-3 | 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 | 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 | DeviceRequest | If a resource is contained in another resource, it SHALL NOT have a security label : contained.meta.security.empty() | |
dom-6 | DeviceRequest | A resource should have narrative for robust management : text.`div`.exists() | |
ele-1 | DeviceRequest.meta | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.implicitRules | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.language | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.text | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | DeviceRequest.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | DeviceRequest.extension:DeviceRequestInsurance | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | DeviceRequest.extension:DeviceRequestInsurance | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | DeviceRequest.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | DeviceRequest.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | DeviceRequest.identifier | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.instantiatesCanonical | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.instantiatesUri | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.basedOn | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.priorRequest | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.groupIdentifier | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.status | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.intent | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.priority | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.code[x] | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.parameter | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.parameter.extension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | DeviceRequest.parameter.extension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | DeviceRequest.parameter.modifierExtension | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ext-1 | DeviceRequest.parameter.modifierExtension | Must have either extensions or value[x], not both : extension.exists() != value.exists() | |
ele-1 | DeviceRequest.parameter.code | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.parameter.value[x] | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.subject | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.encounter | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.occurrence[x] | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.authoredOn | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.requester | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.performerType | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.performer | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.reasonCode | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.reasonReference | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.insurance | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.supportingInfo | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.note | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) | |
ele-1 | DeviceRequest.relevantHistory | All FHIR elements must have a @value or children : hasValue() or (children().count() > id.count()) |