Da Vinci Clinical Data Exchange (CDex)
2.1.0 - STU 2.1 United States of America flag

Da Vinci Clinical Data Exchange (CDex), published by HL7 International / Payer/Provider Information Exchange Work Group. 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-ecdx/ and changes regularly. See the Directory of published versions

Conforming to CDex Task Based Approach

Page standards status: Trial-use

Introduction

CDex Task-based transactions have many optional capabilities. Systems may choose some or all of these capabilities and implement any combination. Refer to the CDex CapabilityStatements resources for conformance expectations for the various actors and roles. In contrast to the expectations in the CDex CapabilityStatements, Systems SHOULD define what they support in their local capability statement in one or more of the following ways:§

  1. (Preferred) Formally derived implementable profile from CDex Task Data Request Profile
  2. Document their systems' capabilities for requesting attachments in CapabilityStatement.rest.resource.documentation for the Task resource.
  3. (Preferred) Formal OperationDefinition derived from $submit-attachment
  4. Document their systems' capabilities for submitting attachments in CapabilityStatement.rest.documentation

Actors for CDex Task Data Request Profile

  • Data Source in the Role of Data Source Server
  • Data Consumer in the Role of Data Consumer Client

Task-based Interaction Functional Requirements

Capability Required Optional
Signatures  
Polling  
Subscriptions  
Support of Provenance  

Capabilities for Task-based Requests

Capability Must Support* Optional
Requesting Attachments Using Attachment Codes  
Requesting Attachments Using FHIR RESTful Query Syntax  
Requesting Attachments Using Free Text  
Requesting Attachments Using Questionnaire  
Support of Contained Task Outputs  
Signatures  
Representing The Purpose Of Use (POU) For The Requested Data  
Support of Work Queues Tags  
Support of Formal Authorizations  

* See the next section

CDex Must Support Definition

The CDex Profile elements consist of Mandatory, Must Support, and Optional elements. Elements that are neither Mandatory or Must Support are Optional. Mandatory elements are elements with a minimum cardinality greater than 0. Must Support elements are marked with the mustSupport flag and SHALL be interpreted as follows:

Task Source
Data Source server where the Task is stored and updated, or Data Consumer client that POST the Task to Data Source server.
Task Consumer
Data Consumer client receiving a Task from the Data Source server due to a FHIR interaction.
  • If the minimum cardinality of an element is greater than 0, the element is required and the Task Source SHALL populating the data element with value unless:
    • The profile references a dataAbsentReason (DAR) extension, then the Task Source SHALL use that extension to communicate the reason for missing data.
  • If the minimum cardinality of an element is equal to 0, the Task Source SHALL be capable of populating the data element when sharing Task compliant with a CDex profile. Although the system needs to demonstrate it is capable of populating and sharing of the element, it is acceptable to omit the element if the system doesn't have values in a particular instance. A system that is incapable of ever sharing the the element would be non-conformant.
  • The Task Consumer SHALL be capable of processing Task instances containing the data elements without generating an error or causing the application to fail.

NOTE: mustSupport indicates what Da Vinci CDex conformant systems are expected to be able to handle. Systems are free to include additional data - and receivers SHOULD NOT reject instances that contain unexpected data elements if those elements are not modifier elements. However, Task Sources cannot rely on Task Consumers to store, process, or do anything other than ignore data that is not marked as mustSupport. §§§§§§

CDex Task Based Approach Requirements

This section lists all narrative conformance statements in the Task Based Approach section of this IG. The tables offer a concise summary for implementers to identify essential requirements and support evaluation and testing. The data is also available as [CSV] and [Excel] files, as well as in [CDex Requirements Resources].

Data Consumer Requirements

Key Context Conformance Requirement
CONF-057 the task resource SHALL

For CDex Task-based transactions, the [CDex Task Data Request Profile] SHALL be used by the Data Consumer to solicit information from a system. It represents both the data request and the returned data and provides information such as why it needs to be completed, who is to complete it, who is asking for it, when it is due, etc. The Task's status is updated as the task is fulfilled. For a detailed description of all the mandatory, [must support], and optional elements, as well as formal definitions and profile views, see the [CDex Task Data Request Profile] page.

CONF-058 task reason SHALL

When known, Task.reasonCode or Task.reasonReference SHALL reference the object that directly leads to the task - a particular claim, for example.

CONF-082 StructureDefinition-cdex-task-data-request.html SHALL

Clients SHALL support all four profiles.

CONF-087 task-based-conformance.html SHALL

The CDex Profile elements consist of Mandatory, Must Support, and Optional elements. Elements that are neither Mandatory or Must Support are Optional. Mandatory elements are elements with a minimum cardinality greater than 0. [Must Support] elements are marked with the mustSupport flag and SHALL be interpreted as follows:

CONF-089 task-based-conformance.html SHALL

element is required and the Task Source SHALL populating the data element with value unless:

CONF-091 task-based-conformance.html SHALL

Source SHALL use that extension to communicate the reason for missing data.

CONF-093 task-based-conformance.html SHALL
  • If the minimum cardinality of an element is equal to 0, the Task Source SHALL be capable of populating the data element when sharing Task compliant with a CDex profile. Although the system needs to demonstrate it is capable of populating and sharing of the element, it is acceptable to omit the element if the system doesn't have values in a particular instance. A system that is incapable of ever sharing the
CONF-095 task-based-conformance.html SHALL
  • The Task Consumer SHALL be capable of processing Task instances
CONF-062 polling SHOULD

Data consumers can poll for a single Task or across several Tasks. The polling frequency balances responsiveness (short interval between data creation and consumer notification) against not over-taxing the Data Source's resources. Data Consumers SHOULD perform this operation in an automated/background manner after 1 minute to return automated responses and no more than every 5 minutes for the first 30 minutes and no more frequently than once every hour after that.

CONF-078 introduction SHOULD

CDex Task-based transactions have many optional capabilities. Systems may choose some or all of these capabilities and implement any combination. Refer to the CDex [CapabilityStatements] resources for conformance expectations for the various actors and roles. In contrast to the expectations in the CDex CapabilityStatements, Systems SHOULD define what they support in their local capability statement in one or more of the following ways:

CONF-097 task-based-conformance.html SHOULD-NOT

data - and receivers SHOULD NOT reject instances that contain unexpected data elements if those elements are not [modifier elements]. However, Task Sources cannot rely on Task Consumers to store, process, or do anything other than ignore data that is not marked as mustSupport.

Data Source Requirements

Key Context Conformance Requirement
CONF-059 task state machine SHALL

Figure 8 below illustrates a "typical" state machine for CDex Task. The Data Consumer creates the Task with a status of "requested". The Data Source updates the status of the Task as appropriate. The Data Source SHALL support all the statuses in the [HRex Task Status ValueSet]. The Data Source

CONF-064 subscription SHALL

Da Vinci CDex Data Sources who choose to support Subscription SHALL comply with the [Subscription R5 Backport Implementation Guide] and the Da Vinci Health Record Exchange (HRex) Subscription requirements for subscribing to Task updates. These implementation guides "pre-adopt" the FHIR R5 topic-based subscription approach in R4 implementations since most U.S. EHR vendors have agreed to support it.

CONF-065 hrex task subscription topic SHALL
  • The Data Source SHALL support the HRex Task Subscription Topic and
CONF-067 discovery SHALL
  • The Data Source SHALL support discovery of the CDex Task Update Subscription Topic canonical URL
CONF-080 StructureDefinition-cdex-task-data-request.html SHALL

The Task.reasonReference DocumentReference.author is a *Must Support element with four target profile and three Coverage profiles. Servers SHALL support at least one of them, and when supporting a Coverage profile

CONF-081 StructureDefinition-cdex-task-data-request.html SHALL

support at least one of them, and when supporting a Coverage profile, SHALL support the Coverage Profile based on the US Core version as follows:

CONF-087 task-based-conformance.html SHALL

The CDex Profile elements consist of Mandatory, Must Support, and Optional elements. Elements that are neither Mandatory or Must Support are Optional. Mandatory elements are elements with a minimum cardinality greater than 0. [Must Support] elements are marked with the mustSupport flag and SHALL be interpreted as follows:

CONF-089 task-based-conformance.html SHALL

element is required and the Task Source SHALL populating the data element with value unless:

CONF-091 task-based-conformance.html SHALL

Source SHALL use that extension to communicate the reason for missing data.

CONF-093 task-based-conformance.html SHALL
  • If the minimum cardinality of an element is equal to 0, the Task Source SHALL be capable of populating the data element when sharing Task compliant with a CDex profile. Although the system needs to demonstrate it is capable of populating and sharing of the element, it is acceptable to omit the element if the system doesn't have values in a particular instance. A system that is incapable of ever sharing the
CONF-095 task-based-conformance.html SHALL
  • The Task Consumer SHALL be capable of processing Task instances
CONF-068 discovery SHOULD
  • The Data Source SHOULD support discovery using the CapabilityStatement SubscriptionTopic Canonical extension and
CONF-078 introduction SHOULD

CDex Task-based transactions have many optional capabilities. Systems may choose some or all of these capabilities and implement any combination. Refer to the CDex [CapabilityStatements] resources for conformance expectations for the various actors and roles. In contrast to the expectations in the CDex CapabilityStatements, Systems SHOULD define what they support in their local capability statement in one or more of the following ways:

CONF-085 task-based-approach.html SHOULD
  • if multiple documents need to be signed, systems SHOULD minimize the number of interactions required by the user
CONF-097 task-based-conformance.html SHOULD-NOT

data - and receivers SHOULD NOT reject instances that contain unexpected data elements if those elements are not [modifier elements]. However, Task Sources cannot rely on Task Consumers to store, process, or do anything other than ignore data that is not marked as mustSupport.

CONF-060 task state machine MAY

support all the statuses in the [HRex Task Status ValueSet]. The Data Source MAY support additional transitions, including transitions from terminal states (e.g., back to "in-progress" from "failed" or "completed"). The Data Source

CONF-061 task state machine MAY

support additional transitions, including transitions from terminal states (e.g., back to "in-progress" from "failed" or "completed"). The Data Source MAY use [Task.businessStatus] to track intermediate business statuses for their specific implementation

CONF-066 hrex task subscription topic MAY

support the HRex Task Subscription Topic and MAY support other subscription topics

CONF-069 discovery MAY

support discovery using the CapabilityStatement SubscriptionTopic Canonical extension and MAY support discovery by some other method