Mobile access to Health Documents (MHD)
5.0.1-current - ci-build

Mobile access to Health Documents (MHD), published by IHE IT Infrastructure Technical Committee. This guide is not an authorized publication; it is the continuous build for version 5.0.1-current built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/IHE/ITI.MHD/ and changes regularly. See the Directory of published versions

## Resource Profile: MHD DocumentReference Comprehensive

Official URL: https://profiles.ihe.net/ITI/MHD/StructureDefinition/IHE.MHD.Comprehensive.DocumentReference | Version: 5.0.1-current
Active as of 2026-01-13 | Computable Name: ComprehensiveDocumentReference

A profile on the DocumentReference resource for MHD Comprehensive Option with Contained (not UnContained), compatible with XDS-on-FHIR and XCA use.

- MHD is based on the IHE Document Sharing model,
- the 3:4.1 Abstract Metadata Model, and
- the use defined here is FHIR DocumentReference implementation of the
- ebRIM implementation at 3:4.2.3.2 Document Entry.
- with use-cases and constraints found in 3:4.3 Additional Document Sharing Requirements

Usages:

- Use this Profile: MHD Comprehensive Provide Document Bundle and MHD Find Document References Comprehensive Response message
- Examples for this Profile: DocumentReference/ex-DocumentReferenceComprehensive, DocumentReference/ex-DocumentReferenceComprehensiveDelayedAssembly, DocumentReference/ex-DocumentReferenceComprehensiveOnDemand and DocumentReference/ex-DocumentReferenceComprehensiveWithBinary

You can also check for usages in the FHIR IG Statistics

### Formal Views of Profile Content

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

- Key Elements Table
- Differential Table
- Snapshot Table
- Statistics/References
- All

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DocumentReference | C | 0..* | UnContainedComprehensiveDocumentReference | A reference to a document Constraints: docRef-1, docRef-2
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  |  |  | Content/Rules for all slices
extension:sourcePatient | S | 0..1 | (Complex) | Source Patient Information URL: http://hl7.org/fhir/StructureDefinition/documentreference-sourcepatient
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.org/fhir/StructureDefinition/documentreference-sourcepatient"
value[x] |  | 1..1 | Reference(Patient) {c} | Value of extension
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
extension:referenceId | S | 0..* | Identifier | Holds values from DocumentEntry.referenceIdList that are not appropriate for .context or .basedOn URL: https://profiles.ihe.net/ITI/MHD/StructureDefinition/ihe-referenceId
Slices for identifier | S Σ | 1..* | Identifier | Business identifiers for the document Slice: Unordered, Open by value:type
identifier:entryUUID | S Σ | 0..1 | EntryUUIDIdentifier | Business identifier for the DocumentReference
identifier:uniqueId | S Σ | 1..1 | UniqueIdIdentifier | Unique identifier for the referenced Document
status | ?!Σ | 1..1 | code | current | superseded | entered-in-error Binding: MHD DocumentReference status codes (required)
type | S Σ | 1..1 | CodeableConcept | Kind of document (LOINC if possible) Binding: FHIRDocumentTypeCodes (preferred): Precise type of clinical document.
category | S Σ | 1..1 | CodeableConcept | Categorization of document Binding: ReferencedItemCategoryValueSet (example): High-level kind of document at a macro level.
subject | S Σ | 1..1 | Reference(Patient) | Who/what is the subject of the document
context | C | 0..* | Reference(Appointment | Encounter | EpisodeOfCare) | Context of the document content
facilityType | S C | 1..1 | CodeableConcept | Kind of facility where patient was seen Binding: FacilityTypeCodeValueSet (example): XDS Facility Type.
practiceSetting | S C | 1..1 | CodeableConcept | Additional details about where the content was created (e.g. clinical specialty) Binding: PracticeSettingCodeValueSet (example): Additional details about where the content was created (e.g. clinical specialty).
period | S Σ | 0..1 | Period | Time of service that is being documented
date | S Σ | 0..1 | instant | When this document reference was created
author | S Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | Device | Patient | RelatedPerson | CareTeam) {c} | Who and/or what authored the document
attester |  | 0..1 | BackboneElement | Attests to accuracy of the document
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
mode |  | 1..1 | CodeableConcept | personal | professional | legal | official Binding: CompositionAttestationMode (preferred): The way in which a person authenticated a document.
party |  | 1..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) {c} | Who attested the document
relatesTo | S Σ | 0..* | BackboneElement | Relationships to other documents
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
code | Σ | 1..1 | CodeableConcept | The relationship type with another document Binding: DocumentRelationshipType (extensible): The type of relationship between the documents.
target | Σ | 1..1 | Reference(DocumentReference) | Target of the relationship
securityLabel | S Σ | 1..* | CodeableConcept | Document security-tags Binding: SecurityLabelExamples (example): Example Security Labels from the Healthcare Privacy and Security Classification System.
content | Σ | 1..1 | BackboneElement | Document referenced
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
attachment | Σ | 1..1 | Attachment | Where to access the document
contentType | Σ C | 1..1 | code | Mime type of the content, with charset etc. Binding: MimeTypes (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049) Example General: text/plain; charset=UTF-8, image/png
language | S Σ | 1..1 | code | Human language of the content (BCP-47) Binding: AllLanguages (required): IETF language tag for a human language.
Additional Bindings | Purpose
CommonLanguages | Starter
Example General: en-AU
url | Σ | 1..1 | url | Uri where the data can be found Example General: http://www.acme.com/logo-small.png
creation | S Σ | 1..1 | dateTime | Date attachment was first created
profile | S Σ | 1..1 | BackboneElement | Content profile rules for the document
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
Slices for value[x] | Σ | 1..1 | Coding | Code|uri|canonical Slice: Unordered, Closed by type:$this Binding: HL7 ValueSet of Format Codes for use with Document Sharing (preferred): Document Format Codes.
value[x]:valueCoding | Σ | 1..1 | Coding | Code|uri|canonical Binding: HL7 ValueSet of Format Codes for use with Document Sharing (preferred): Document Format Codes.
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
DocumentReference.status | Base | required | MHD DocumentReference status codes | 📦5.0.1-current | This IG
DocumentReference.type | Base | preferred | FHIR Document Type Codes | 📍5.0.0 | FHIR Std.
DocumentReference.category | Base | example | Referenced Item Category Value Set | 📍5.0.0 | FHIR Std.
DocumentReference.facilityType | Base | example | Facility Type Code Value Set | 📍5.0.0 | FHIR Std.
DocumentReference.practiceSetting | Base | example | Practice Setting Code Value Set | 📍5.0.0 | FHIR Std.
DocumentReference.attester.​mode | Base | preferred | Composition Attestation Mode | 📍5.0.0 | FHIR Std.
DocumentReference.relatesTo.​code | Base | extensible | Document Relationship Type | 📍5.0.0 | FHIR Std.
DocumentReference.securityLabel | Base | example | Example set of Security Labels | 📍5.0.0 | FHIR Std.
DocumentReference.content.​attachment.contentType | Base | required | Mime Types | 📍5.0.0 | FHIR Std.
DocumentReference.content.​attachment.language | Base | required | All Languages | 📍5.0.0 | FHIR Std.
DocumentReference.content.​profile.value[x] | Base | preferred | HL7 ValueSet of Format Codes for use with Document Sharing | 📦2.1.0 | THO v7.0
DocumentReference.content.​profile.value[x]:valueCoding | Base | preferred | HL7 ValueSet of Format Codes for use with Document Sharing | 📦2.1.0 | THO v7.0

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | DocumentReference | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | DocumentReference | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | DocumentReference | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | DocumentReference | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | DocumentReference | A resource should have narrative for robust management | `text.`div`.exists()`
docRef-1 | warning | DocumentReference | facilityType SHALL only be present if context is not an encounter | `facilityType.empty() or context.where(resolve() is Encounter).empty()`
docRef-2 | warning | DocumentReference | practiceSetting SHALL only be present if context is not present | `practiceSetting.empty() or context.where(resolve() is Encounter).empty()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from UnContainedComprehensiveDocumentReference

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DocumentReference |  | 0..* | UnContainedComprehensiveDocumentReference | A reference to a document
Slices for extension |  |  |  | Content/Rules for all slices
extension:sourcePatient |  | 0..1 | DRSourcePatient | Source Patient Information
value[x] |  | 1..1 | Reference(Patient) {c} | Value of extension
author |  | 0..* | Reference(Practitioner | PractitionerRole | Organization | Device | Patient | RelatedPerson | CareTeam) {c} | Who and/or what authored the document
attester |  |  |  |
party |  | 1..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) {c} | Who attested the document
Documentation for this format

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DocumentReference | C | 0..* | UnContainedComprehensiveDocumentReference | A reference to a document Constraints: docRef-1, docRef-2
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
versionId | Σ | 0..1 | id | Version specific identifier
lastUpdated | Σ | 0..1 | instant | When the resource version last changed
source | Σ | 0..1 | uri | Identifies where the resource comes from
profile | Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to
security | Σ | 0..* | Coding | Security Labels applied to this resource Binding: AllSecurityLabels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
tag | Σ | 0..* | Coding | Tags applied to this resource Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: AllLanguages (required): IETF language tag for a human language
Additional Bindings | Purpose
CommonLanguages | Starter
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:sourcePatient | S | 0..1 | (Complex) | Source Patient Information URL: http://hl7.org/fhir/StructureDefinition/documentreference-sourcepatient
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.org/fhir/StructureDefinition/documentreference-sourcepatient"
value[x] |  | 1..1 | Reference(Patient) {c} | Value of extension
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") - must be a resource in resources Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
identifier | Σ C | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ C | 0..1 | string | Text alternative for the resource
extension:referenceId | S | 0..* | Identifier | Holds values from DocumentEntry.referenceIdList that are not appropriate for .context or .basedOn URL: https://profiles.ihe.net/ITI/MHD/StructureDefinition/ihe-referenceId
Slices for identifier | S Σ | 1..* | Identifier | Business identifiers for the document Slice: Unordered, Open by value:type
identifier:entryUUID | S Σ | 0..1 | EntryUUIDIdentifier | Business identifier for the DocumentReference
identifier:uniqueId | S Σ | 1..1 | UniqueIdIdentifier | Unique identifier for the referenced Document
version | Σ | 0..1 | string | An explicitly assigned identifer of a variation of the content in the DocumentReference
basedOn |  | 0..* | Reference(Appointment | AppointmentResponse | CarePlan | Claim | CommunicationRequest | Contract | CoverageEligibilityRequest | DeviceRequest | EnrollmentRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | RequestOrchestration | ServiceRequest | SupplyRequest | VisionPrescription) | Procedure that caused this media to be created
status | ?!Σ | 1..1 | code | current | superseded | entered-in-error Binding: MHD DocumentReference status codes (required)
modality | Σ | 0..* | CodeableConcept | Imaging modality used Binding: Modality (extensible): Type of acquired data in the instance.
type | S Σ | 1..1 | CodeableConcept | Kind of document (LOINC if possible) Binding: FHIRDocumentTypeCodes (preferred): Precise type of clinical document.
category | S Σ | 1..1 | CodeableConcept | Categorization of document Binding: ReferencedItemCategoryValueSet (example): High-level kind of document at a macro level.
subject | S Σ | 1..1 | Reference(Patient) | Who/what is the subject of the document
context | C | 0..* | Reference(Appointment | Encounter | EpisodeOfCare) | Context of the document content
event |  | 0..* | CodeableReference() | Main clinical acts documented Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
concept | Σ | 1..1 | CodeableConcept | Reference to a concept (by class)
reference | Σ | 0..1 | Reference() | Reference to a resource (by instance)
bodySite | Σ | 0..* | CodeableReference(BodyStructure) | Body part included Binding: SNOMEDCTBodyStructures (example): SNOMED CT Body site concepts
facilityType | S C | 1..1 | CodeableConcept | Kind of facility where patient was seen Binding: FacilityTypeCodeValueSet (example): XDS Facility Type.
practiceSetting | S C | 1..1 | CodeableConcept | Additional details about where the content was created (e.g. clinical specialty) Binding: PracticeSettingCodeValueSet (example): Additional details about where the content was created (e.g. clinical specialty).
period | S Σ | 0..1 | Period | Time of service that is being documented
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
start | Σ C | 0..1 | dateTime | Starting time with inclusive boundary
end | Σ C | 0..1 | dateTime | End time with inclusive boundary, if not ongoing
date | S Σ | 0..1 | instant | When this document reference was created
author | S Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | Device | Patient | RelatedPerson | CareTeam) {c} | Who and/or what authored the document
attester |  | 0..1 | BackboneElement | Attests to accuracy of the document
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
mode |  | 1..1 | CodeableConcept | personal | professional | legal | official Binding: CompositionAttestationMode (preferred): The way in which a person authenticated a document.
time |  | 0..1 | dateTime | When the document was attested
party |  | 1..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) {c} | Who attested the document
custodian |  | 0..1 | Reference(Organization) | Organization which maintains the document
relatesTo | S Σ | 0..* | BackboneElement | Relationships to other documents
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
code | Σ | 1..1 | CodeableConcept | The relationship type with another document Binding: DocumentRelationshipType (extensible): The type of relationship between the documents.
target | Σ | 1..1 | Reference(DocumentReference) | Target of the relationship
description | Σ | 0..1 | markdown | Human-readable description
securityLabel | S Σ | 1..* | CodeableConcept | Document security-tags Binding: SecurityLabelExamples (example): Example Security Labels from the Healthcare Privacy and Security Classification System.
content | Σ | 1..1 | BackboneElement | Document referenced
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
attachment | Σ | 1..1 | Attachment | Where to access the document
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
contentType | Σ C | 1..1 | code | Mime type of the content, with charset etc. Binding: MimeTypes (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049) Example General: text/plain; charset=UTF-8, image/png
language | S Σ | 1..1 | code | Human language of the content (BCP-47) Binding: AllLanguages (required): IETF language tag for a human language.
Additional Bindings | Purpose
CommonLanguages | Starter
Example General: en-AU
url | Σ | 1..1 | url | Uri where the data can be found Example General: http://www.acme.com/logo-small.png
size | Σ | 0..1 | integer64 | Number of bytes of content (if url provided)
hash | Σ | 0..1 | base64Binary | Hash of the data (sha-1, base64ed)
title | Σ | 0..1 | string | Label to display in place of the data Example General: Official Corporate Logo
creation | S Σ | 1..1 | dateTime | Date attachment was first created
height |  | 0..1 | positiveInt | Height of the image in pixels (photo/video)
width |  | 0..1 | positiveInt | Width of the image in pixels (photo/video)
frames |  | 0..1 | positiveInt | Number of frames if > 1 (photo)
duration |  | 0..1 | decimal | Length in seconds (audio / video)
pages |  | 0..1 | positiveInt | Number of printed pages
profile | S Σ | 1..1 | BackboneElement | Content profile rules for the document
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
Slices for value[x] | Σ | 1..1 | Coding | Code|uri|canonical Slice: Unordered, Closed by type:$this Binding: HL7 ValueSet of Format Codes for use with Document Sharing (preferred): Document Format Codes.
value[x]:valueCoding | Σ | 1..1 | Coding | Code|uri|canonical Binding: HL7 ValueSet of Format Codes for use with Document Sharing (preferred): Document Format Codes.
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
DocumentReference.meta.​security | Base | extensible | All Security Labels | 📍5.0.0 | FHIR Std.
DocumentReference.meta.​tag | Base | example | Common Tags | 📍5.0.0 | FHIR Std.
DocumentReference.language | Base | required | All Languages | 📍5.0.0 | FHIR Std.
DocumentReference.extension:sourcePatient.​value[x].type | Base | extensible | Resource Types | 📍5.0.0 | FHIR Std.
DocumentReference.status | Base | required | MHD DocumentReference status codes | 📦5.0.1-current | This IG
DocumentReference.modality | Base | extensible | Modality | ⏿2025.3.20250714 | tx.fhir.org
DocumentReference.type | Base | preferred | FHIR Document Type Codes | 📍5.0.0 | FHIR Std.
DocumentReference.category | Base | example | Referenced Item Category Value Set | 📍5.0.0 | FHIR Std.
DocumentReference.event | Base | example | v3 Code System ActCode | 📦3.0.0 | THO v7.0
DocumentReference.bodySite | Base | example | SNOMED CT Body Structures | 📍5.0.0 | FHIR Std.
DocumentReference.facilityType | Base | example | Facility Type Code Value Set | 📍5.0.0 | FHIR Std.
DocumentReference.practiceSetting | Base | example | Practice Setting Code Value Set | 📍5.0.0 | FHIR Std.
DocumentReference.attester.​mode | Base | preferred | Composition Attestation Mode | 📍5.0.0 | FHIR Std.
DocumentReference.relatesTo.​code | Base | extensible | Document Relationship Type | 📍5.0.0 | FHIR Std.
DocumentReference.securityLabel | Base | example | Example set of Security Labels | 📍5.0.0 | FHIR Std.
DocumentReference.content.​attachment.contentType | Base | required | Mime Types | 📍5.0.0 | FHIR Std.
DocumentReference.content.​attachment.language | Base | required | All Languages | 📍5.0.0 | FHIR Std.
DocumentReference.content.​profile.value[x] | Base | preferred | HL7 ValueSet of Format Codes for use with Document Sharing | 📦2.1.0 | THO v7.0
DocumentReference.content.​profile.value[x]:valueCoding | Base | preferred | HL7 ValueSet of Format Codes for use with Document Sharing | 📦2.1.0 | THO v7.0

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | DocumentReference | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | DocumentReference | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | DocumentReference | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | DocumentReference | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | DocumentReference | A resource should have narrative for robust management | `text.`div`.exists()`
docRef-1 | warning | DocumentReference | facilityType SHALL only be present if context is not an encounter | `facilityType.empty() or context.where(resolve() is Encounter).empty()`
docRef-2 | warning | DocumentReference | practiceSetting SHALL only be present if context is not present | `practiceSetting.empty() or context.where(resolve() is Encounter).empty()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from UnContainedComprehensiveDocumentReference

Summary

Key Elements View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DocumentReference | C | 0..* | UnContainedComprehensiveDocumentReference | A reference to a document Constraints: docRef-1, docRef-2
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  |  |  | Content/Rules for all slices
extension:sourcePatient | S | 0..1 | (Complex) | Source Patient Information URL: http://hl7.org/fhir/StructureDefinition/documentreference-sourcepatient
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.org/fhir/StructureDefinition/documentreference-sourcepatient"
value[x] |  | 1..1 | Reference(Patient) {c} | Value of extension
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
extension:referenceId | S | 0..* | Identifier | Holds values from DocumentEntry.referenceIdList that are not appropriate for .context or .basedOn URL: https://profiles.ihe.net/ITI/MHD/StructureDefinition/ihe-referenceId
Slices for identifier | S Σ | 1..* | Identifier | Business identifiers for the document Slice: Unordered, Open by value:type
identifier:entryUUID | S Σ | 0..1 | EntryUUIDIdentifier | Business identifier for the DocumentReference
identifier:uniqueId | S Σ | 1..1 | UniqueIdIdentifier | Unique identifier for the referenced Document
status | ?!Σ | 1..1 | code | current | superseded | entered-in-error Binding: MHD DocumentReference status codes (required)
type | S Σ | 1..1 | CodeableConcept | Kind of document (LOINC if possible) Binding: FHIRDocumentTypeCodes (preferred): Precise type of clinical document.
category | S Σ | 1..1 | CodeableConcept | Categorization of document Binding: ReferencedItemCategoryValueSet (example): High-level kind of document at a macro level.
subject | S Σ | 1..1 | Reference(Patient) | Who/what is the subject of the document
context | C | 0..* | Reference(Appointment | Encounter | EpisodeOfCare) | Context of the document content
facilityType | S C | 1..1 | CodeableConcept | Kind of facility where patient was seen Binding: FacilityTypeCodeValueSet (example): XDS Facility Type.
practiceSetting | S C | 1..1 | CodeableConcept | Additional details about where the content was created (e.g. clinical specialty) Binding: PracticeSettingCodeValueSet (example): Additional details about where the content was created (e.g. clinical specialty).
period | S Σ | 0..1 | Period | Time of service that is being documented
date | S Σ | 0..1 | instant | When this document reference was created
author | S Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | Device | Patient | RelatedPerson | CareTeam) {c} | Who and/or what authored the document
attester |  | 0..1 | BackboneElement | Attests to accuracy of the document
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
mode |  | 1..1 | CodeableConcept | personal | professional | legal | official Binding: CompositionAttestationMode (preferred): The way in which a person authenticated a document.
party |  | 1..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) {c} | Who attested the document
relatesTo | S Σ | 0..* | BackboneElement | Relationships to other documents
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
code | Σ | 1..1 | CodeableConcept | The relationship type with another document Binding: DocumentRelationshipType (extensible): The type of relationship between the documents.
target | Σ | 1..1 | Reference(DocumentReference) | Target of the relationship
securityLabel | S Σ | 1..* | CodeableConcept | Document security-tags Binding: SecurityLabelExamples (example): Example Security Labels from the Healthcare Privacy and Security Classification System.
content | Σ | 1..1 | BackboneElement | Document referenced
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
attachment | Σ | 1..1 | Attachment | Where to access the document
contentType | Σ C | 1..1 | code | Mime type of the content, with charset etc. Binding: MimeTypes (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049) Example General: text/plain; charset=UTF-8, image/png
language | S Σ | 1..1 | code | Human language of the content (BCP-47) Binding: AllLanguages (required): IETF language tag for a human language.
Additional Bindings | Purpose
CommonLanguages | Starter
Example General: en-AU
url | Σ | 1..1 | url | Uri where the data can be found Example General: http://www.acme.com/logo-small.png
creation | S Σ | 1..1 | dateTime | Date attachment was first created
profile | S Σ | 1..1 | BackboneElement | Content profile rules for the document
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
Slices for value[x] | Σ | 1..1 | Coding | Code|uri|canonical Slice: Unordered, Closed by type:$this Binding: HL7 ValueSet of Format Codes for use with Document Sharing (preferred): Document Format Codes.
value[x]:valueCoding | Σ | 1..1 | Coding | Code|uri|canonical Binding: HL7 ValueSet of Format Codes for use with Document Sharing (preferred): Document Format Codes.
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
DocumentReference.status | Base | required | MHD DocumentReference status codes | 📦5.0.1-current | This IG
DocumentReference.type | Base | preferred | FHIR Document Type Codes | 📍5.0.0 | FHIR Std.
DocumentReference.category | Base | example | Referenced Item Category Value Set | 📍5.0.0 | FHIR Std.
DocumentReference.facilityType | Base | example | Facility Type Code Value Set | 📍5.0.0 | FHIR Std.
DocumentReference.practiceSetting | Base | example | Practice Setting Code Value Set | 📍5.0.0 | FHIR Std.
DocumentReference.attester.​mode | Base | preferred | Composition Attestation Mode | 📍5.0.0 | FHIR Std.
DocumentReference.relatesTo.​code | Base | extensible | Document Relationship Type | 📍5.0.0 | FHIR Std.
DocumentReference.securityLabel | Base | example | Example set of Security Labels | 📍5.0.0 | FHIR Std.
DocumentReference.content.​attachment.contentType | Base | required | Mime Types | 📍5.0.0 | FHIR Std.
DocumentReference.content.​attachment.language | Base | required | All Languages | 📍5.0.0 | FHIR Std.
DocumentReference.content.​profile.value[x] | Base | preferred | HL7 ValueSet of Format Codes for use with Document Sharing | 📦2.1.0 | THO v7.0
DocumentReference.content.​profile.value[x]:valueCoding | Base | preferred | HL7 ValueSet of Format Codes for use with Document Sharing | 📦2.1.0 | THO v7.0

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | DocumentReference | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | DocumentReference | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | DocumentReference | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | DocumentReference | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | DocumentReference | A resource should have narrative for robust management | `text.`div`.exists()`
docRef-1 | warning | DocumentReference | facilityType SHALL only be present if context is not an encounter | `facilityType.empty() or context.where(resolve() is Encounter).empty()`
docRef-2 | warning | DocumentReference | practiceSetting SHALL only be present if context is not present | `practiceSetting.empty() or context.where(resolve() is Encounter).empty()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

Differential View

This structure is derived from UnContainedComprehensiveDocumentReference

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DocumentReference |  | 0..* | UnContainedComprehensiveDocumentReference | A reference to a document
Slices for extension |  |  |  | Content/Rules for all slices
extension:sourcePatient |  | 0..1 | DRSourcePatient | Source Patient Information
value[x] |  | 1..1 | Reference(Patient) {c} | Value of extension
author |  | 0..* | Reference(Practitioner | PractitionerRole | Organization | Device | Patient | RelatedPerson | CareTeam) {c} | Who and/or what authored the document
attester |  |  |  |
party |  | 1..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) {c} | Who attested the document
Documentation for this format

Snapshot View

Name | Flags | Card. | Type | Description & Constraints Filter: Bindings Constraints Obligations
--- | --- | --- | --- | ---
DocumentReference | C | 0..* | UnContainedComprehensiveDocumentReference | A reference to a document Constraints: docRef-1, docRef-2
id | Σ | 0..1 | id | Logical id of this artifact
meta | Σ | 0..1 | Meta | Metadata about the resource
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
versionId | Σ | 0..1 | id | Version specific identifier
lastUpdated | Σ | 0..1 | instant | When the resource version last changed
source | Σ | 0..1 | uri | Identifies where the resource comes from
profile | Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to
security | Σ | 0..* | Coding | Security Labels applied to this resource Binding: AllSecurityLabels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
tag | Σ | 0..* | Coding | Tags applied to this resource Binding: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones".
implicitRules | ?!Σ | 0..1 | uri | A set of rules under which this content was created
language |  | 0..1 | code | Language of the resource content Binding: AllLanguages (required): IETF language tag for a human language
Additional Bindings | Purpose
CommonLanguages | Starter
text |  | 0..1 | Narrative | Text summary of the resource, for human interpretation This profile does not constrain the narrative in regard to content, language, or traceability to data elements
contained |  | 0..* | Resource | Contained, inline Resources
Slices for extension |  | 0..* | Extension | Extension Slice: Unordered, Open by value:url
extension:sourcePatient | S | 0..1 | (Complex) | Source Patient Information URL: http://hl7.org/fhir/StructureDefinition/documentreference-sourcepatient
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..0 |  | Extension Slice: Unordered, Open by value:url
url |  | 1..1 | uri | "http://hl7.org/fhir/StructureDefinition/documentreference-sourcepatient"
value[x] |  | 1..1 | Reference(Patient) {c} | Value of extension
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
reference | Σ C | 0..1 | string | Literal reference, Relative, internal or absolute URL
type | Σ | 0..1 | uri | Type the reference refers to (e.g. "Patient") - must be a resource in resources Binding: ResourceType (extensible): Aa resource (or, for logical models, the URI of the logical model).
identifier | Σ C | 0..1 | Identifier | Logical reference, when literal reference is not known
display | Σ C | 0..1 | string | Text alternative for the resource
extension:referenceId | S | 0..* | Identifier | Holds values from DocumentEntry.referenceIdList that are not appropriate for .context or .basedOn URL: https://profiles.ihe.net/ITI/MHD/StructureDefinition/ihe-referenceId
Slices for identifier | S Σ | 1..* | Identifier | Business identifiers for the document Slice: Unordered, Open by value:type
identifier:entryUUID | S Σ | 0..1 | EntryUUIDIdentifier | Business identifier for the DocumentReference
identifier:uniqueId | S Σ | 1..1 | UniqueIdIdentifier | Unique identifier for the referenced Document
version | Σ | 0..1 | string | An explicitly assigned identifer of a variation of the content in the DocumentReference
basedOn |  | 0..* | Reference(Appointment | AppointmentResponse | CarePlan | Claim | CommunicationRequest | Contract | CoverageEligibilityRequest | DeviceRequest | EnrollmentRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | RequestOrchestration | ServiceRequest | SupplyRequest | VisionPrescription) | Procedure that caused this media to be created
status | ?!Σ | 1..1 | code | current | superseded | entered-in-error Binding: MHD DocumentReference status codes (required)
modality | Σ | 0..* | CodeableConcept | Imaging modality used Binding: Modality (extensible): Type of acquired data in the instance.
type | S Σ | 1..1 | CodeableConcept | Kind of document (LOINC if possible) Binding: FHIRDocumentTypeCodes (preferred): Precise type of clinical document.
category | S Σ | 1..1 | CodeableConcept | Categorization of document Binding: ReferencedItemCategoryValueSet (example): High-level kind of document at a macro level.
subject | S Σ | 1..1 | Reference(Patient) | Who/what is the subject of the document
context | C | 0..* | Reference(Appointment | Encounter | EpisodeOfCare) | Context of the document content
event |  | 0..* | CodeableReference() | Main clinical acts documented Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
concept | Σ | 1..1 | CodeableConcept | Reference to a concept (by class)
reference | Σ | 0..1 | Reference() | Reference to a resource (by instance)
bodySite | Σ | 0..* | CodeableReference(BodyStructure) | Body part included Binding: SNOMEDCTBodyStructures (example): SNOMED CT Body site concepts
facilityType | S C | 1..1 | CodeableConcept | Kind of facility where patient was seen Binding: FacilityTypeCodeValueSet (example): XDS Facility Type.
practiceSetting | S C | 1..1 | CodeableConcept | Additional details about where the content was created (e.g. clinical specialty) Binding: PracticeSettingCodeValueSet (example): Additional details about where the content was created (e.g. clinical specialty).
period | S Σ | 0..1 | Period | Time of service that is being documented
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
start | Σ C | 0..1 | dateTime | Starting time with inclusive boundary
end | Σ C | 0..1 | dateTime | End time with inclusive boundary, if not ongoing
date | S Σ | 0..1 | instant | When this document reference was created
author | S Σ | 0..* | Reference(Practitioner | PractitionerRole | Organization | Device | Patient | RelatedPerson | CareTeam) {c} | Who and/or what authored the document
attester |  | 0..1 | BackboneElement | Attests to accuracy of the document
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
mode |  | 1..1 | CodeableConcept | personal | professional | legal | official Binding: CompositionAttestationMode (preferred): The way in which a person authenticated a document.
time |  | 0..1 | dateTime | When the document was attested
party |  | 1..1 | Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization) {c} | Who attested the document
custodian |  | 0..1 | Reference(Organization) | Organization which maintains the document
relatesTo | S Σ | 0..* | BackboneElement | Relationships to other documents
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
code | Σ | 1..1 | CodeableConcept | The relationship type with another document Binding: DocumentRelationshipType (extensible): The type of relationship between the documents.
target | Σ | 1..1 | Reference(DocumentReference) | Target of the relationship
description | Σ | 0..1 | markdown | Human-readable description
securityLabel | S Σ | 1..* | CodeableConcept | Document security-tags Binding: SecurityLabelExamples (example): Example Security Labels from the Healthcare Privacy and Security Classification System.
content | Σ | 1..1 | BackboneElement | Document referenced
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
attachment | Σ | 1..1 | Attachment | Where to access the document
id |  | 0..1 | id | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations Slice: Unordered, Open by value:url
contentType | Σ C | 1..1 | code | Mime type of the content, with charset etc. Binding: MimeTypes (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049) Example General: text/plain; charset=UTF-8, image/png
language | S Σ | 1..1 | code | Human language of the content (BCP-47) Binding: AllLanguages (required): IETF language tag for a human language.
Additional Bindings | Purpose
CommonLanguages | Starter
Example General: en-AU
url | Σ | 1..1 | url | Uri where the data can be found Example General: http://www.acme.com/logo-small.png
size | Σ | 0..1 | integer64 | Number of bytes of content (if url provided)
hash | Σ | 0..1 | base64Binary | Hash of the data (sha-1, base64ed)
title | Σ | 0..1 | string | Label to display in place of the data Example General: Official Corporate Logo
creation | S Σ | 1..1 | dateTime | Date attachment was first created
height |  | 0..1 | positiveInt | Height of the image in pixels (photo/video)
width |  | 0..1 | positiveInt | Width of the image in pixels (photo/video)
frames |  | 0..1 | positiveInt | Number of frames if > 1 (photo)
duration |  | 0..1 | decimal | Length in seconds (audio / video)
pages |  | 0..1 | positiveInt | Number of printed pages
profile | S Σ | 1..1 | BackboneElement | Content profile rules for the document
id |  | 0..1 | string | Unique id for inter-element referencing
extension |  | 0..* | Extension | Additional content defined by implementations
modifierExtension | ?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized
Slices for value[x] | Σ | 1..1 | Coding | Code|uri|canonical Slice: Unordered, Closed by type:$this Binding: HL7 ValueSet of Format Codes for use with Document Sharing (preferred): Document Format Codes.
value[x]:valueCoding | Σ | 1..1 | Coding | Code|uri|canonical Binding: HL7 ValueSet of Format Codes for use with Document Sharing (preferred): Document Format Codes.
Documentation for this format

#### Terminology Bindings

Path | Status | Usage | ValueSet | Version | Source
DocumentReference.meta.​security | Base | extensible | All Security Labels | 📍5.0.0 | FHIR Std.
DocumentReference.meta.​tag | Base | example | Common Tags | 📍5.0.0 | FHIR Std.
DocumentReference.language | Base | required | All Languages | 📍5.0.0 | FHIR Std.
DocumentReference.extension:sourcePatient.​value[x].type | Base | extensible | Resource Types | 📍5.0.0 | FHIR Std.
DocumentReference.status | Base | required | MHD DocumentReference status codes | 📦5.0.1-current | This IG
DocumentReference.modality | Base | extensible | Modality | ⏿2025.3.20250714 | tx.fhir.org
DocumentReference.type | Base | preferred | FHIR Document Type Codes | 📍5.0.0 | FHIR Std.
DocumentReference.category | Base | example | Referenced Item Category Value Set | 📍5.0.0 | FHIR Std.
DocumentReference.event | Base | example | v3 Code System ActCode | 📦3.0.0 | THO v7.0
DocumentReference.bodySite | Base | example | SNOMED CT Body Structures | 📍5.0.0 | FHIR Std.
DocumentReference.facilityType | Base | example | Facility Type Code Value Set | 📍5.0.0 | FHIR Std.
DocumentReference.practiceSetting | Base | example | Practice Setting Code Value Set | 📍5.0.0 | FHIR Std.
DocumentReference.attester.​mode | Base | preferred | Composition Attestation Mode | 📍5.0.0 | FHIR Std.
DocumentReference.relatesTo.​code | Base | extensible | Document Relationship Type | 📍5.0.0 | FHIR Std.
DocumentReference.securityLabel | Base | example | Example set of Security Labels | 📍5.0.0 | FHIR Std.
DocumentReference.content.​attachment.contentType | Base | required | Mime Types | 📍5.0.0 | FHIR Std.
DocumentReference.content.​attachment.language | Base | required | All Languages | 📍5.0.0 | FHIR Std.
DocumentReference.content.​profile.value[x] | Base | preferred | HL7 ValueSet of Format Codes for use with Document Sharing | 📦2.1.0 | THO v7.0
DocumentReference.content.​profile.value[x]:valueCoding | Base | preferred | HL7 ValueSet of Format Codes for use with Document Sharing | 📦2.1.0 | THO v7.0

#### Constraints

Id | Grade | Path(s) | Description | Expression
dom-2 | error | DocumentReference | If the resource is contained in another resource, it SHALL NOT contain nested Resources | `contained.contained.empty()`
dom-3 | error | DocumentReference | If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource | `contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()`
dom-4 | error | DocumentReference | If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated | `contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()`
dom-5 | error | DocumentReference | If a resource is contained in another resource, it SHALL NOT have a security label | `contained.meta.security.empty()`
dom-6 | best practice | DocumentReference | A resource should have narrative for robust management | `text.`div`.exists()`
docRef-1 | warning | DocumentReference | facilityType SHALL only be present if context is not an encounter | `facilityType.empty() or context.where(resolve() is Encounter).empty()`
docRef-2 | warning | DocumentReference | practiceSetting SHALL only be present if context is not present | `practiceSetting.empty() or context.where(resolve() is Encounter).empty()`
ele-1 | error | **ALL** elements | All FHIR elements must have a @value or children | `hasValue() or (children().count() > id.count())`
ext-1 | error | **ALL** extensions | Must have either extensions or value[x], not both | `extension.exists() != value.exists()`

This structure is derived from UnContainedComprehensiveDocumentReference

Summary

Other representations of profile: CSV, Excel, Schematron