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.1.0 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
Official URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/profile-devicerequest | Version: 2.1.0 | |||
Standards status: Trial-use | Maturity Level: 3 | Computable Name: CRDDeviceRequest |
This profile specifies extensions and constraints on the DeviceRequest resource to support coverage requirements discovery.
CRD Clients SHALL use this 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:
Information provided in Must Support elements will commonly be required for CRD Servers to perform coverage requirements discovery.
Usage:
Description of Profiles, Differentials, Snapshots and how the different presentations work.
This structure is derived from DeviceRequest
Path | Conformance | ValueSet | URI |
DeviceRequest.code[x] | extensible | CRDDeviceRequestshttp://hl7.org/fhir/us/davinci-crd/ValueSet/deviceRequest from this IG |
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
DeviceRequest | 0..* | DeviceRequest | Medical device request | |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
Coverage-Information | SC | 0..* | (Complex) | CoverageInfo URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information crd-ci-q1: Questionnaire is only allowed when doc-needed exists crd-ci-q2: If covered is set to 'not-covered', then 'pa-needed' must not exist. crd-ci-q3: 'info-needed' SHALL exist if and only if at least one of 'covered', 'pa-needed', or 'doc-needed' is set to 'conditional'. crd-ci-q4: If 'pa-needed' is 'satisfied', then 'Doc-purpose' can't be 'withpa'. crd-ci-q5: 'satisfied-pa-id' must exist if and only if 'pa-needed' is set to 'satisfied'. crd-ci-q6: If 'info-needed' is Other, then reason must be specified crd-ci-q7: If reason.coding is present and is not from the extensible value set, then reason.text must be present |
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. |
code[x] | SΣ | 1..1 | Device requested Binding: CRD Device Request Codes Value Set (extensible) | |
codeReference | Reference(CRD Device) | |||
codeCodeableConcept | CodeableConcept | |||
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(US Core Practitioner Profile(7.0.0) | HRex PractitionerRole Profile) | Who/what is requesting diagnostics |
performer | SΣ | 0..1 | Reference(US Core Practitioner Profile(7.0.0) | HRex 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(Condition | Observation | DiagnosticReport | DocumentReference) | Linked Reason for request |
Documentation for this format |
Path | Conformance | ValueSet | URI |
DeviceRequest.status | required | RequestStatushttp://hl7.org/fhir/ValueSet/request-status|4.0.1 from the FHIR Standard | |
DeviceRequest.intent | required | RequestIntenthttp://hl7.org/fhir/ValueSet/request-intent|4.0.1 from the FHIR Standard | |
DeviceRequest.code[x] | extensible | CRDDeviceRequestshttp://hl7.org/fhir/us/davinci-crd/ValueSet/deviceRequest from this IG | |
DeviceRequest.reasonCode | example | Condition/Problem/DiagnosisCodeshttp://hl7.org/fhir/ValueSet/condition-code from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
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', then 'Doc-purpose' can't be 'withpa'. : extension.where(url = 'pa-needed' and value = 'satisfied') 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 Other, then reason must be specified : extension.where(url = 'info-needed' and value = 'Other').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') | |
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 | ||||
---|---|---|---|---|---|---|---|---|
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.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
Coverage-Information | SC | 0..* | (Complex) | CoverageInfo URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information crd-ci-q1: Questionnaire is only allowed when doc-needed exists crd-ci-q2: If covered is set to 'not-covered', then 'pa-needed' must not exist. crd-ci-q3: 'info-needed' SHALL exist if and only if at least one of 'covered', 'pa-needed', or 'doc-needed' is set to 'conditional'. crd-ci-q4: If 'pa-needed' is 'satisfied', then 'Doc-purpose' can't be 'withpa'. crd-ci-q5: 'satisfied-pa-id' must exist if and only if 'pa-needed' is set to 'satisfied'. crd-ci-q6: If 'info-needed' is Other, then reason must be specified crd-ci-q7: If reason.coding is present and is not from the extensible value set, then reason.text must be present | ||||
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. | ||||
code[x] | SΣ | 1..1 | Device requested Binding: CRD Device Request Codes Value Set (extensible) | |||||
codeReference | Reference(CRD 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 Description (No ValueSet): (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(US Core Practitioner Profile(7.0.0) 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(US Core Practitioner Profile(7.0.0) 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(Condition | Observation | DiagnosticReport | DocumentReference) | 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 |
Path | Conformance | ValueSet | URI | |||
DeviceRequest.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
DeviceRequest.status | required | RequestStatushttp://hl7.org/fhir/ValueSet/request-status|4.0.1 from the FHIR Standard | ||||
DeviceRequest.intent | required | RequestIntenthttp://hl7.org/fhir/ValueSet/request-intent|4.0.1 from the FHIR Standard | ||||
DeviceRequest.priority | required | RequestPriorityhttp://hl7.org/fhir/ValueSet/request-priority|4.0.1 from the FHIR Standard | ||||
DeviceRequest.code[x] | extensible | CRDDeviceRequestshttp://hl7.org/fhir/us/davinci-crd/ValueSet/deviceRequest from this IG | ||||
DeviceRequest.parameter.code | example | |||||
DeviceRequest.performerType | example | ParticipantRoleshttp://hl7.org/fhir/ValueSet/participant-role from the FHIR Standard | ||||
DeviceRequest.reasonCode | example | Condition/Problem/DiagnosisCodeshttp://hl7.org/fhir/ValueSet/condition-code from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
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', then 'Doc-purpose' can't be 'withpa'. : extension.where(url = 'pa-needed' and value = 'satisfied') 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 Other, then reason must be specified : extension.where(url = 'info-needed' and value = 'Other').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') | |
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() |
This structure is derived from DeviceRequest
Summary
Mandatory: 3 elements
Must-Support: 13 elements
Structures
This structure refers to these other structures:
Extensions
This structure refers to these extensions:
Maturity: 3
Differential View
This structure is derived from DeviceRequest
Path | Conformance | ValueSet | URI |
DeviceRequest.code[x] | extensible | CRDDeviceRequestshttp://hl7.org/fhir/us/davinci-crd/ValueSet/deviceRequest from this IG |
Key Elements View
Name | Flags | Card. | Type | Description & Constraints |
---|---|---|---|---|
DeviceRequest | 0..* | DeviceRequest | Medical device request | |
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |
Coverage-Information | SC | 0..* | (Complex) | CoverageInfo URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information crd-ci-q1: Questionnaire is only allowed when doc-needed exists crd-ci-q2: If covered is set to 'not-covered', then 'pa-needed' must not exist. crd-ci-q3: 'info-needed' SHALL exist if and only if at least one of 'covered', 'pa-needed', or 'doc-needed' is set to 'conditional'. crd-ci-q4: If 'pa-needed' is 'satisfied', then 'Doc-purpose' can't be 'withpa'. crd-ci-q5: 'satisfied-pa-id' must exist if and only if 'pa-needed' is set to 'satisfied'. crd-ci-q6: If 'info-needed' is Other, then reason must be specified crd-ci-q7: If reason.coding is present and is not from the extensible value set, then reason.text must be present |
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. |
code[x] | SΣ | 1..1 | Device requested Binding: CRD Device Request Codes Value Set (extensible) | |
codeReference | Reference(CRD Device) | |||
codeCodeableConcept | CodeableConcept | |||
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(US Core Practitioner Profile(7.0.0) | HRex PractitionerRole Profile) | Who/what is requesting diagnostics |
performer | SΣ | 0..1 | Reference(US Core Practitioner Profile(7.0.0) | HRex 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(Condition | Observation | DiagnosticReport | DocumentReference) | Linked Reason for request |
Documentation for this format |
Path | Conformance | ValueSet | URI |
DeviceRequest.status | required | RequestStatushttp://hl7.org/fhir/ValueSet/request-status|4.0.1 from the FHIR Standard | |
DeviceRequest.intent | required | RequestIntenthttp://hl7.org/fhir/ValueSet/request-intent|4.0.1 from the FHIR Standard | |
DeviceRequest.code[x] | extensible | CRDDeviceRequestshttp://hl7.org/fhir/us/davinci-crd/ValueSet/deviceRequest from this IG | |
DeviceRequest.reasonCode | example | Condition/Problem/DiagnosisCodeshttp://hl7.org/fhir/ValueSet/condition-code from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
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', then 'Doc-purpose' can't be 'withpa'. : extension.where(url = 'pa-needed' and value = 'satisfied') 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 Other, then reason must be specified : extension.where(url = 'info-needed' and value = 'Other').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') | |
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() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints | ||||
---|---|---|---|---|---|---|---|---|
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.
| |||||
text | 0..1 | Narrative | Text summary of the resource, for human interpretation | |||||
contained | 0..* | Resource | Contained, inline Resources | |||||
Slices for extension | 0..* | Extension | Extension Slice: Unordered, Open by value:url | |||||
Coverage-Information | SC | 0..* | (Complex) | CoverageInfo URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information crd-ci-q1: Questionnaire is only allowed when doc-needed exists crd-ci-q2: If covered is set to 'not-covered', then 'pa-needed' must not exist. crd-ci-q3: 'info-needed' SHALL exist if and only if at least one of 'covered', 'pa-needed', or 'doc-needed' is set to 'conditional'. crd-ci-q4: If 'pa-needed' is 'satisfied', then 'Doc-purpose' can't be 'withpa'. crd-ci-q5: 'satisfied-pa-id' must exist if and only if 'pa-needed' is set to 'satisfied'. crd-ci-q6: If 'info-needed' is Other, then reason must be specified crd-ci-q7: If reason.coding is present and is not from the extensible value set, then reason.text must be present | ||||
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. | ||||
code[x] | SΣ | 1..1 | Device requested Binding: CRD Device Request Codes Value Set (extensible) | |||||
codeReference | Reference(CRD 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 Description (No ValueSet): (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(US Core Practitioner Profile(7.0.0) 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(US Core Practitioner Profile(7.0.0) 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(Condition | Observation | DiagnosticReport | DocumentReference) | 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 |
Path | Conformance | ValueSet | URI | |||
DeviceRequest.language | preferred | CommonLanguages
http://hl7.org/fhir/ValueSet/languages from the FHIR Standard | ||||
DeviceRequest.status | required | RequestStatushttp://hl7.org/fhir/ValueSet/request-status|4.0.1 from the FHIR Standard | ||||
DeviceRequest.intent | required | RequestIntenthttp://hl7.org/fhir/ValueSet/request-intent|4.0.1 from the FHIR Standard | ||||
DeviceRequest.priority | required | RequestPriorityhttp://hl7.org/fhir/ValueSet/request-priority|4.0.1 from the FHIR Standard | ||||
DeviceRequest.code[x] | extensible | CRDDeviceRequestshttp://hl7.org/fhir/us/davinci-crd/ValueSet/deviceRequest from this IG | ||||
DeviceRequest.parameter.code | example | |||||
DeviceRequest.performerType | example | ParticipantRoleshttp://hl7.org/fhir/ValueSet/participant-role from the FHIR Standard | ||||
DeviceRequest.reasonCode | example | Condition/Problem/DiagnosisCodeshttp://hl7.org/fhir/ValueSet/condition-code from the FHIR Standard |
Id | Grade | Path(s) | Details | Requirements |
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', then 'Doc-purpose' can't be 'withpa'. : extension.where(url = 'pa-needed' and value = 'satisfied') 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 Other, then reason must be specified : extension.where(url = 'info-needed' and value = 'Other').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') | |
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() |
This structure is derived from DeviceRequest
Summary
Mandatory: 3 elements
Must-Support: 13 elements
Structures
This structure refers to these other structures:
Extensions
This structure refers to these extensions:
Maturity: 3
Other representations of profile: CSV, Excel, Schematron