US Core Implementation Guide
7.0.0 - STU7 United States of America flag

This page is part of the US Core (v7.0.0: STU7) based on FHIR (HL7® FHIR® Standard) 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

OperationDefinition: US Core Fetch DocumentReference

Official URL: http://hl7.org/fhir/us/core/OperationDefinition/docref Version: 7.0.0
Standards status: Trial-use Maturity Level: 3 Computable Name: USCoreFetchDocumentReference
Other Identifiers: OID:2.16.840.1.113883.4.642.40.2.33.1

Copyright/Legal: Used by permission of HL7 International, all rights reserved Creative Commons License

This operation is used to return all the references to documents related to a patient. It is invoked on a FHIR Server’s DocumentReference endpoint (e.g., [base]/DocumentReference/$docref) and operates across all DocumentReference instances.

The operation requires a patient id and takes the optional input parameters:

  • start date
  • end date
  • document type
  • on-demand
  • profile

and returns a searchset Bundle containing DocumentReference resources for the patient. If the server has stored documents or can create documents for the patient and those documents are available for the user, the server returns the DocumentReference resources associated with documents. This operation’s intended use is to provide a way for providers or patients to access their available documents. The document itself can be subsequently retrieved using the link provided in the DocumentReference.content.attachment.url element. The link could be a FHIR endpoint to a Binary Resource or some other document repository.

This operation is different from a FHIR RESTful query on DocumentReference by patient and type and date range because:

  1. It is used to request a server to generate a document based on the specified parameters.

  2. If no parameters are specified, the server SHALL return a DocumentReference to the patient’s current C-CDA CCD.

  3. If the server cannot generate a document based on the specified parameters, the operation will return an empty search bundle.

Unless the client indicates they are only interested in ‘on-demand’ documents using the on-demand parameter, the server SHOULD return DocumentReference instances for existing documents that meet the request parameters In this regard, this operation is similar to a FHIR RESTful query.

URL: [base]/DocumentReference/$docref

Parameters

UseNameScopeCardinalityTypeBindingDocumentation
INpatient1..1id

The id of the patient resource. If there is no match, an empty Bundle is returned.

INstart0..1dateTime

The date range relates to care dates, not record currency dates - e.g., all records relating to care provided in a specific date range. If no start date is provided, all documents before the end date are in scope. The most recent or current document is in scope if neither a start date nor an end date is provided. The client SHOULD provide values precise to the second + time offset.

INend0..1dateTime

The date range relates to care dates, not record currency dates - e.g., all records relating to care provided in a specific date range. If no end date is provided, all documents after the start date are in scope. The most recent or current document is in scope if neither a start date nor an end date is provided. The client SHOULD provide values precise to the second + time offset.

INtype0..*CodingDocument Type Value Set (Required)

The type relates to document type e.g., for the LOINC code for a C-CDA Clinical Summary of Care (CCD) is 34133-9 (Summary of episode note). If no type is provided, the CCD document, if available, SHALL be in scope, and all other document types MAY be in scope. It is at the server's discretion how to respond if multiple types are provided. The server MAY return documents to any of the specified types. The server's CapabilityStatement should document its behavior and what types it supports.

INon-demand0..1boolean

This on-demand parameter allows the client to dictate whether they are requesting only 'on-demand' or both 'on-demand' and 'stable' documents (or delayed/deferred assembly) that meet the query parameters

INprofile0..*canonical

This parameter allows the client to request documents according to a specific profile using the profile's canonical reference. It is at the server's discretion how to respond if multiple profiles are provided. The server MAY return documents to any of the specified profiles. The server's CapabilityStatement should document its behavior and what profiles it supports.

OUTreturn1..1Bundle

The bundle type is 'searchset' containing DocumentReference resources which SHOULD conform to the US Core DocumentReference Profiles

  • It is assumed that the server has identified and secured the context appropriately and can either associate the authorization context with a single patient or determine whether the context has the rights to the nominated patient if there is one. If there is no nominated patient (e.g., the operation is invoked at the system level) and the context is not associated with a single patient record, then the server should return an error. Specifying the relationship between the context, a user, and patient records is outside the scope of this specification.

  • A server may generate an on-demand document upon returning its DocumentReference during the $docref response or once the client accesses it. This specification places no requirements upon when a server generates an on-demand document and encourages server developers to balance the performance cost of creating unread documents against the response time to retrieve new documents.

  • See the US Core DocumentReference Profile Quick Start Section for example interactions