This is the Continuous Integration Build of the USCoreR4 Implementation Guide, based on FHIR Version 3.6.0. See the Directory of published versions
StructureDefinition-us-core-documentreference
This profile sets minimum expectations for searching and fetching patient documents using the DocumentReference Resource. It is compatible with the ITI-68 in IHE MHD specification. It identifies the mandatory core elements, extensions, vocabularies and value sets which SHALL be present in the DocumentReference resource when using this profile.
Example Usage Scenarios:
The following are example usage scenarios for the US Core DocumentReference profile:
- Query for all documents belonging to a Patient
- Query for clinical summary information about a patient (access a patient’s Continuity of Care Document (CCD))
Mandatory Data Elements and Terminology
The following data-elements are mandatory (i.e data MUST be present). These are presented below in a simple human-readable explanation. Profile specific guidance and examples are provided as well. The Formal Profile Definition below provides the formal summary, definitions, and terminology requirements.
Each DocumentReference must have:
- a patient
- a code describing the type of document
- a status
- date and time the reference was created (STU3 requirement, removed in R4)
- an https address where the document can be retrieved
In addition it should have (if available):
- a business identifier for the DocumentReference (possibly generated by the transcription system or EHR)
- a document creation date
- a code identifying the specific details about the format of the document — over and above the content’s MIME type
- the patient encounter date that is being referenced
Profile specific implementation guidance:
For a C-CDA Clinical Summary of Care (CCD):
- The document type code is the LOINC code 34133-9 Summary of episode note.
- The format code is
urn:hl7-org:sdwg:ccda-structuredBody:2.1
- The https address may refer to a FHIR Binary Resource (i.e. [base]/Binary/[id]) address or a FHIR Document Bundle (i.e [base]/Bundle/[id] address on the server.
Examples
- DocumentReference-episode-summary Retrieve a URL for an episode summary note (CCD).
Formal Views of Profile Content
Description of Profiles, Differentials, and Snapshots.
The official URL for this profile is: http://hl7.org/fhir/us/core-r4/StructureDefinition/us-core-documentreference
Published on Sun Dec 10 00:00:00 PST 2017 as a active by HL7 US Realm Steering Committee.
This profile builds on DocumentReference
Summary of the Mandatory Requirements
- One status in
DocumentReference.status
- DocumentReference.status is bound to DocumentReferenceStatus value set
- One document type code in
DocumentReference.type
which is bound to Document Type value set - One reference to a patient in
DocumentReference.subject
- A date and time in
DocumentReference.indexed
- One url of the document in
DocumentReference.content.attachment
- a mime type in
DocumentReference.content.attachment.contentType
which is bound to MimeType value set - a url of the document in
DocumentReference.content.attachment.url
- a mime type in
SHOULD have:
- One identifier in
DocumentReference.identifier
- One dateTime value in
DocumentReference.created
- One format code in
DocumentReference.content.format
with an extensible binding to DocumentReference format value set - One reference to an encounter in
DocumentReference.context.encounter
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | 0..* | US Core DocumentReference Profile | ||
![]() ![]() ![]() | S | 0..1 | Identifier | |
![]() ![]() ![]() | S | 1..1 | code | Binding: DocumentReferenceStatus (required) |
![]() ![]() ![]() | S | 1..1 | CodeableConcept | Binding: DocumentTypeValueSet (required) |
![]() ![]() ![]() | S | 1..1 | Reference(US Core Patient Profile) | |
![]() ![]() ![]() | S | 0..1 | instant | |
![]() ![]() ![]() | S | 1..1 | BackboneElement | |
![]() ![]() ![]() ![]() | S | 1..1 | Attachment | |
![]() ![]() ![]() ![]() ![]() | S | 1..1 | code | |
![]() ![]() ![]() ![]() ![]() | S | 1..1 | url | |
![]() ![]() ![]() ![]() | S | 0..1 | Coding | Binding: DocumentReferenceFormatCodeSet (extensible) |
![]() ![]() ![]() | S | 0..1 | BackboneElement | |
![]() ![]() ![]() ![]() | S | 0..1 | Reference(US Core Encounter Profile) | |
![]() |
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | I | 0..* | US Core DocumentReference Profile | |
![]() ![]() ![]() | Σ | 0..1 | id | Logical id of this artifact |
![]() ![]() ![]() | Σ | 0..1 | Meta | Metadata about the resource |
![]() ![]() ![]() | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() ![]() | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) | |
![]() ![]() ![]() | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
![]() ![]() ![]() | 0..* | Resource | Contained, inline Resources | |
![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() | ?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() ![]() | Σ | 0..1 | Identifier | Master Version Specific Identifier |
![]() ![]() ![]() | SΣ | 0..1 | Identifier | Other identifiers for the document |
![]() ![]() ![]() | ?!SΣ | 1..1 | code | current | superseded | entered-in-error Binding: DocumentReferenceStatus (required) |
![]() ![]() ![]() | Σ | 0..1 | code | preliminary | final | appended | amended | entered-in-error Binding: CompositionStatus (required) |
![]() ![]() ![]() | SΣ | 1..1 | CodeableConcept | Kind of document (LOINC if possible) Binding: DocumentTypeValueSet (required) |
![]() ![]() ![]() | Σ | 0..* | CodeableConcept | Categorization of document Binding: DocumentClassValueSet (example) |
![]() ![]() ![]() | SΣ | 1..1 | Reference(US Core Patient Profile) | Who/what is the subject of the document |
![]() ![]() ![]() | SΣ | 0..1 | instant | When this document reference was created |
![]() ![]() ![]() | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | Device | Patient | RelatedPerson) | Who and/or what authored the document |
![]() ![]() ![]() | 0..1 | Reference(Practitioner | Organization) | Who/what authenticated the document | |
![]() ![]() ![]() | 0..1 | Reference(Organization) | Organization which maintains the document | |
![]() ![]() ![]() | ΣI | 0..* | BackboneElement | Relationships to other documents |
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() | Σ | 1..1 | code | replaces | transforms | signs | appends Binding: DocumentRelationshipType (required) |
![]() ![]() ![]() ![]() | Σ | 1..1 | Reference(DocumentReference) | Target of the relationship |
![]() ![]() ![]() | Σ | 0..1 | string | Human-readable description |
![]() ![]() ![]() | Σ | 0..* | CodeableConcept | Document security-tags Binding: All Security Labels (extensible) |
![]() ![]() ![]() | SΣI | 1..1 | BackboneElement | Document referenced |
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() | SΣ | 1..1 | Attachment | Where to access the document |
![]() ![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() | SΣ | 1..1 | code | Mime type of the content, with charset etc. Binding: Mime Types (required) Example General': text/plain; charset=UTF-8, image/png |
![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | code | Human language of the content (BCP-47) Binding: CommonLanguages (preferred) Example General': en-AU |
![]() ![]() ![]() ![]() ![]() | 0..1 | base64Binary | Data inline, base64ed | |
![]() ![]() ![]() ![]() ![]() | SΣ | 1..1 | url | Uri where the data can be found Example General': http://www.acme.com/logo-small.png |
![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | unsignedInt | Number of bytes of content (if url provided) |
![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | base64Binary | Hash of the data (sha-1, base64ed) |
![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | string | Label to display in place of the data Example General': Official Corporate Logo |
![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | dateTime | Date attachment was first created |
![]() ![]() ![]() ![]() | SΣ | 0..1 | Coding | Format/content rules for the document Binding: DocumentReferenceFormatCodeSet (extensible) |
![]() ![]() ![]() | SΣI | 0..1 | BackboneElement | Clinical context of document |
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() | S | 0..1 | Reference(US Core Encounter Profile) | Context of the document content |
![]() ![]() ![]() ![]() | 0..* | CodeableConcept | Main clinical acts documented Binding: v3 Code System ActCode (example) | |
![]() ![]() ![]() ![]() | Σ | 0..1 | Period | Time of service that is being documented |
![]() ![]() ![]() ![]() | 0..1 | CodeableConcept | Kind of facility where patient was seen Binding: FacilityTypeCodeValueSet (example) | |
![]() ![]() ![]() ![]() | 0..1 | CodeableConcept | Additional details about where the content was created (e.g. clinical specialty) Binding: PracticeSettingCodeValueSet (example) | |
![]() ![]() ![]() ![]() | 0..1 | Reference(Patient) | Patient demographics from source | |
![]() ![]() ![]() ![]() | 0..* | Reference(Resource) | Related identifiers or resources | |
![]() |
Differential View
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | 0..* | US Core DocumentReference Profile | ||
![]() ![]() ![]() | S | 0..1 | Identifier | |
![]() ![]() ![]() | S | 1..1 | code | Binding: DocumentReferenceStatus (required) |
![]() ![]() ![]() | S | 1..1 | CodeableConcept | Binding: DocumentTypeValueSet (required) |
![]() ![]() ![]() | S | 1..1 | Reference(US Core Patient Profile) | |
![]() ![]() ![]() | S | 0..1 | instant | |
![]() ![]() ![]() | S | 1..1 | BackboneElement | |
![]() ![]() ![]() ![]() | S | 1..1 | Attachment | |
![]() ![]() ![]() ![]() ![]() | S | 1..1 | code | |
![]() ![]() ![]() ![]() ![]() | S | 1..1 | url | |
![]() ![]() ![]() ![]() | S | 0..1 | Coding | Binding: DocumentReferenceFormatCodeSet (extensible) |
![]() ![]() ![]() | S | 0..1 | BackboneElement | |
![]() ![]() ![]() ![]() | S | 0..1 | Reference(US Core Encounter Profile) | |
![]() |
Snapshot View
Name | Flags | Card. | Type | Description & Constraints![]() |
---|---|---|---|---|
![]() ![]() | I | 0..* | US Core DocumentReference Profile | |
![]() ![]() ![]() | Σ | 0..1 | id | Logical id of this artifact |
![]() ![]() ![]() | Σ | 0..1 | Meta | Metadata about the resource |
![]() ![]() ![]() | ?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() ![]() | 0..1 | code | Language of the resource content Binding: CommonLanguages (preferred) | |
![]() ![]() ![]() | 0..1 | Narrative | Text summary of the resource, for human interpretation | |
![]() ![]() ![]() | 0..* | Resource | Contained, inline Resources | |
![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() | ?! | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() ![]() | Σ | 0..1 | Identifier | Master Version Specific Identifier |
![]() ![]() ![]() | SΣ | 0..1 | Identifier | Other identifiers for the document |
![]() ![]() ![]() | ?!SΣ | 1..1 | code | current | superseded | entered-in-error Binding: DocumentReferenceStatus (required) |
![]() ![]() ![]() | Σ | 0..1 | code | preliminary | final | appended | amended | entered-in-error Binding: CompositionStatus (required) |
![]() ![]() ![]() | SΣ | 1..1 | CodeableConcept | Kind of document (LOINC if possible) Binding: DocumentTypeValueSet (required) |
![]() ![]() ![]() | Σ | 0..* | CodeableConcept | Categorization of document Binding: DocumentClassValueSet (example) |
![]() ![]() ![]() | SΣ | 1..1 | Reference(US Core Patient Profile) | Who/what is the subject of the document |
![]() ![]() ![]() | SΣ | 0..1 | instant | When this document reference was created |
![]() ![]() ![]() | Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | Device | Patient | RelatedPerson) | Who and/or what authored the document |
![]() ![]() ![]() | 0..1 | Reference(Practitioner | Organization) | Who/what authenticated the document | |
![]() ![]() ![]() | 0..1 | Reference(Organization) | Organization which maintains the document | |
![]() ![]() ![]() | ΣI | 0..* | BackboneElement | Relationships to other documents |
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() | Σ | 1..1 | code | replaces | transforms | signs | appends Binding: DocumentRelationshipType (required) |
![]() ![]() ![]() ![]() | Σ | 1..1 | Reference(DocumentReference) | Target of the relationship |
![]() ![]() ![]() | Σ | 0..1 | string | Human-readable description |
![]() ![]() ![]() | Σ | 0..* | CodeableConcept | Document security-tags Binding: All Security Labels (extensible) |
![]() ![]() ![]() | SΣI | 1..1 | BackboneElement | Document referenced |
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() | SΣ | 1..1 | Attachment | Where to access the document |
![]() ![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url | |
![]() ![]() ![]() ![]() ![]() | SΣ | 1..1 | code | Mime type of the content, with charset etc. Binding: Mime Types (required) Example General': text/plain; charset=UTF-8, image/png |
![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | code | Human language of the content (BCP-47) Binding: CommonLanguages (preferred) Example General': en-AU |
![]() ![]() ![]() ![]() ![]() | 0..1 | base64Binary | Data inline, base64ed | |
![]() ![]() ![]() ![]() ![]() | SΣ | 1..1 | url | Uri where the data can be found Example General': http://www.acme.com/logo-small.png |
![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | unsignedInt | Number of bytes of content (if url provided) |
![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | base64Binary | Hash of the data (sha-1, base64ed) |
![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | string | Label to display in place of the data Example General': Official Corporate Logo |
![]() ![]() ![]() ![]() ![]() | Σ | 0..1 | dateTime | Date attachment was first created |
![]() ![]() ![]() ![]() | SΣ | 0..1 | Coding | Format/content rules for the document Binding: DocumentReferenceFormatCodeSet (extensible) |
![]() ![]() ![]() | SΣI | 0..1 | BackboneElement | Clinical context of document |
![]() ![]() ![]() ![]() | 0..1 | string | Unique id for inter-element referencing | |
![]() ![]() ![]() ![]() | 0..* | Extension | Additional content defined by implementations | |
![]() ![]() ![]() ![]() | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() ![]() | S | 0..1 | Reference(US Core Encounter Profile) | Context of the document content |
![]() ![]() ![]() ![]() | 0..* | CodeableConcept | Main clinical acts documented Binding: v3 Code System ActCode (example) | |
![]() ![]() ![]() ![]() | Σ | 0..1 | Period | Time of service that is being documented |
![]() ![]() ![]() ![]() | 0..1 | CodeableConcept | Kind of facility where patient was seen Binding: FacilityTypeCodeValueSet (example) | |
![]() ![]() ![]() ![]() | 0..1 | CodeableConcept | Additional details about where the content was created (e.g. clinical specialty) Binding: PracticeSettingCodeValueSet (example) | |
![]() ![]() ![]() ![]() | 0..1 | Reference(Patient) | Patient demographics from source | |
![]() ![]() ![]() ![]() | 0..* | Reference(Resource) | Related identifiers or resources | |
![]() |
Downloads: StructureDefinition: (XML, JSON), Schema: XML Schematron
Quick Start
Below is an overview of the required set of RESTful FHIR interactions - for example, search and read operations - for this profile. See the Conformance requirements for a complete list of supported RESTful interactions for this IG.
Typically, DocumentReference resources are used with document indexing systems, such as IHE XDS. However, document references may also may be created “on-the-fly” in response to a Document Query request. In other words there MAY NOT be pre-existing index of references to a patient’s documents at the FHIR endpoint. This results in an empty bundle being returned when searching using a normal FHIR Query. Therefore, the $docref operation has been defined to both create and fetch patient DocumentReference Resources.
The following search criteria describe fetching pre-indexed documents and those created “on-the-fly”.
Searching pre-indexed documents:
GET [base]/DocumentReference?patient=[id]
Example: GET [base]/DocumentReference?patient=2169591
Support: Mandatory to support search by patient.
Implementation Notes: Search for all documents for a patient. Fetches a bundle of all DocumentReference resources for the specified patient (how to search by reference).
GET [base]/DocumentReference?patient=[id]&type=[type]&period=[date]
Example: GET [base]/DocumentReference?patient=2169591&type=34133-9&period=ge2016-01-01
Support: Optional to support search by patient and type and date range.
Implementation Notes: Fetches a bundle of all DocumentReference resources for the specified patient for a given time period and document type. (how to search by reference), (how to search by token), and (how to search by date).
Searching documents using the $docref operation:
Functional behavior of Server when responding to the $docref operation:
- SHALL return at least a reference to CCD document, if available, but MAY provide references to other document types as well.
- If a context date range is supplied the server SHOULD provide references to any document that falls within the date range
- If no date range is supplied, then the server SHALL provide references to last or current encounter
GET [base]/DocumentReference/$docref?patient=[id]
Example: see $docref operation
Support: Mandatory to support response to operation.
Implementation Notes: Search for CCD document from the last encounter and MAY search for other document types from the last encounter as well. Fetches a bundle of DocumentReference resources for the specified patient (how to search by reference).