Da Vinci - Coverage Requirements Discovery
2.1.0 - STU 2.1 United States of America flag

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

Extension: Coverage Information

Official URL: http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information Version: 2.1.0
Standards status: Trial-use Maturity Level: 1 Computable Name: CRDCoverageInformation
Other Identifiers: OID:2.16.840.1.113883.4.642.40.18.42.2

Captures assertions from a payer about whether the service is covered and/or requires prior authorization.

Context of Use

Usage info

Usage:

Formal Views of Extension Content

Description of Profiles, Differentials, Snapshots, and how the XML and JSON presentations work.

This structure is derived from Extension

NameFlagsCard.TypeDescription & Constraintsdoco
.. Extension C 0..* Extension CoverageInfo
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
... extension 4..* Extension Extension
... Slices for extension Content/Rules for all slices
.... extension:coverage S 1..1 Extension Reference to Coverage
..... extension 0..0
..... url 1..1 uri "coverage"
..... value[x] 1..1 Reference(CRD Coverage) Value of extension
.... extension:covered S 1..1 Extension covered | not-covered | conditional
..... extension 0..0
..... url 1..1 uri "covered"
..... value[x] 1..1 code Value of extension
Binding: CRD Coverage Information Covered Value Set (required)
.... extension:pa-needed SC 0..1 Extension no-auth | auth-needed | satisfied | performpa | conditional
..... extension 0..0
..... url 1..1 uri "pa-needed"
..... value[x] 1..1 code Value of extension
Binding: CRD Coverage Information Prior Authorization Value Set (required)
.... extension:doc-needed S 0..* Extension clinical | admin | patient | conditional
..... extension 0..0
..... url 1..1 uri "doc-needed"
..... value[x] 1..1 code Value of extension
Binding: CRD Coverage Information Additional Documentation Value Set (required)
.... extension:doc-purpose SC 0..* Extension withpa | withclaim | withorder | retain-doc | OTH
..... extension 0..0
..... url 1..1 uri "doc-purpose"
..... value[x] 1..1 code Value of extension
Binding: CRD Coverage Information Documentation Reason Value Set (required)
.... extension:info-needed SC 0..* Extension performer | location | timeframe | contract-window | OTH
..... extension 0..0
..... url 1..1 uri "info-needed"
..... value[x] 1..1 code Value of extension
Binding: CRD Information Needed Value Set (required)
.... extension:billingCode S 0..* Extension Billing code
..... extension 0..0
..... url 1..1 uri "billingCode"
..... value[x] 1..1 Coding Value of extension
Binding: USCLSCodes (example)
.... extension:reason SC 0..* Extension Reason for assertion
..... extension 0..0
..... url 1..1 uri "reason"
..... value[x] 1..1 CodeableConcept Value of extension
Binding: CRD Coverage Assertion Reasons (extensible)
.... extension:detail S 0..* Extension detail for assertion
..... extension 2..* Extension Extension
..... Slices for extension Content/Rules for all slices
...... extension:code 1..1 Extension Name of name-value pair
....... extension 0..0
....... url 1..1 uri "code"
....... value[x] 0..1 CodeableConcept Value of extension
Binding: CRD Coverage Detail Codes Value Set (extensible)
...... extension:value 1..1 Extension Value of name-value pair
....... extension 0..0
....... url 1..1 uri "value"
....... value[x] 0..1 Value of extension
........ valueBoolean boolean
........ valueString string
........ valueUrl url
........ valuePeriod Period
........ valueQuantity Quantity(SimpleQuantity)
...... extension:qualification 0..1 Extension Additional info about detail
....... extension 0..0
....... url 1..1 uri "qualification"
....... value[x] 0..1 string Value of extension
..... url 1..1 uri "detail"
..... value[x] 0..0
.... extension:dependency S 0..* Extension Resources that impact this assertion
..... extension 0..0
..... url 1..1 uri "dependency"
..... value[x] 0..1 Reference(CRD Appointment with Order | CRD Appointment without Order | CRD Communication Request | CRD Device Request | CRD Medication Request | CRD Nutrition Order | CRD Service Request) Value of extension
.... extension:questionnaire SC 0..* Extension Questionnaire to complete
..... extension 0..0
..... url 1..1 uri "questionnaire"
..... value[x] 0..1 canonical(Questionnaire) Value of extension
.... extension:date S 1..1 Extension Assertion date
..... extension 0..0
..... url 1..1 uri "date"
..... value[x] 1..1 date Value of extension
.... extension:coverage-assertion-id S 1..1 Extension Coverage assertion trace number
..... extension 0..0
..... url 1..1 uri "coverage-assertion-id"
..... value[x] 0..1 string Value of extension
.... extension:satisfied-pa-id SC 0..1 Extension Satisfied prior auth number
..... extension 0..0
..... url 1..1 uri "satisfied-pa-id"
..... value[x] 0..1 string Value of extension
.... extension:contact S 0..* Extension Contact information
..... extension 0..0
..... url 1..1 uri "contact"
..... value[x] 0..1 ContactPoint Value of extension
.... extension:expiry-date S 0..1 Extension Expiration date
..... extension 0..0
..... url 1..1 uri "expiry-date"
..... value[x] 0..1 date Value of extension
... url 1..1 uri "http://hl7.org/fhir/us/davinci-crd/StructureDefinition/ext-coverage-information"

doco Documentation for this format

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSetURI
Extension.extension:covered.value[x]requiredCRDCoveredInfo
http://hl7.org/fhir/us/davinci-crd/ValueSet/coverageInfo
from this IG
Extension.extension:pa-needed.value[x]requiredCRDCoveragePaDetail
http://hl7.org/fhir/us/davinci-crd/ValueSet/coveragePaDetail
from this IG
Extension.extension:doc-needed.value[x]requiredCRDAdditionalDoc
http://hl7.org/fhir/us/davinci-crd/ValueSet/AdditionalDocumentation
from this IG
Extension.extension:doc-purpose.value[x]requiredCRDDocReason
http://hl7.org/fhir/us/davinci-crd/ValueSet/DocReason
from this IG
Extension.extension:info-needed.value[x]requiredCRDInformationNeeded
http://hl7.org/fhir/us/davinci-crd/ValueSet/informationNeeded
from this IG
Extension.extension:billingCode.value[x]exampleUSCLSCodes
http://hl7.org/fhir/ValueSet/service-uscls
from the FHIR Standard
Extension.extension:reason.value[x]extensibleCRDCoverageAssertionReasons
http://hl7.org/fhir/us/davinci-crd/ValueSet/coverageAssertionReasons
from this IG
Extension.extension:detail.extension:code.value[x]extensibleCRDCoverageDetailCodes
http://hl7.org/fhir/us/davinci-crd/ValueSet/coverageDetail
from this IG

Constraints

IdGradePath(s)DetailsRequirements
crd-ci-q1errorExtensionQuestionnaire is only allowed when doc-needed exists
: extension.where(url='questionnaire').exists() implies extension.where(url = 'doc-needed').exists()
crd-ci-q2errorExtensionIf 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-q3errorExtension'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-q4errorExtensionIf '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-q5errorExtension'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-q6errorExtensionIf '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-q7errorExtensionIf 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')
ele-1error**ALL** elementsAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1error**ALL** extensionsMust have either extensions or value[x], not both
: extension.exists() != value.exists()

Notes:

doc-needed vs. info-needed

This extension has two properties with similar names which may cause some confusion. Each has a very distinct purpose.

'doc-needed' is used to indicate the need for additional information to be collected (typically via DTR questionnaires) in order for the payer to make decisions about coverage and prior authorization. It indicates the type of user who will need to provide the answers. Once those answers are provided, a decision about coverage and at least whether prior authorization is necessary should be possible.

'info-needed' is used when the information provided in the hook payload isn't even sufficient to determine what questions might be asked. For example, it may be necessary to know the performer, the location, have a better sense on the timeframe for service delivery, etc. In this case, the payer is indicating that a 'useful' response will need to wait until the relevant information is available. This might be a later hook in the same system (e.g. an ''order-dispatch'' or ''appointment-book'' if needing to know the performer or location), or might mean that a decision won't be able to be made until the patient hits the ''encounter-start'' hook in the performing system. The extension element indicates the nature of the information needed, which should give the provider an idea of where in the workflow a decision is likely.