US Core Implementation Guide, published by HL7 International / Cross-Group Projects. This guide is not an authorized publication; it is the continuous build for version 8.0.0-ballot built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/HL7/US-Core/ and changes regularly. See the Directory of published versions
Official URL: http://hl7.org/fhir/us/core/OperationDefinition/docref | Version: 8.0.0-ballot | |||
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:
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:
It is used to request a server to generate a document based on the specified parameters.
If no parameters are specified, the server SHALL return a DocumentReference to the patient's current C-CDA CCD.
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.
Generated Narrative: OperationDefinition docref
URL: [base]/DocumentReference/$docref
Use | Name | Scope | Cardinality | Type | Binding | Documentation |
IN | patient | 1..1 | id | The id of the patient resource. If there is no match, an empty Bundle is returned. | ||
IN | start | 0..1 | dateTime | 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. | ||
IN | end | 0..1 | dateTime | 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. | ||
IN | type | 0..* | Coding | Document 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. | |
IN | on-demand | 0..1 | boolean | 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 | ||
IN | profile | 0..* | 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. | ||
OUT | return | 1..1 | Bundle | 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