Release 5 Draft Ballot

This is the Continuous Integration Build of FHIR (will be incorrect/inconsistent at times).
See the Directory of published versions

10.2 Resource DocumentReference - Content

Orders and Observations Work GroupMaturity Level: 3 Trial UseSecurity Category: Not Classified Compartments: Device, Encounter, Patient, Practitioner, RelatedPerson

A reference to a document of any kind for any purpose. While the term “document” implies a more narrow focus, for this resource this "document" encompasses any serialized object with a mime-type, it includes formal patient-centric documents (CDA), clinical notes, scanned paper, non-patient specific documents like policy text, as well as a photo, video, or audio recording acquired or used in healthcare. The DocumentReference resource provides metadata about the document so that the document can be discovered and managed. The actual content may be inline base64 encoded data or provided by direct reference.

A DocumentReference resource is used to index a document, clinical note, and other binary objects such as a photo, video, or audio recording, including those resulting from diagnostic or care provision procedures, to make them available to a healthcare system. A document is some sequence of bytes that is identifiable, establishes its own context (e.g., what subject, author, etc. can be presented to the user), and has defined update management. The DocumentReference resource can be used with any document format that has a recognized mime type and that conforms to this definition.

Typically, DocumentReference resources are used in document indexing systems, such as "IHE XDS and as profiled in IHE Mobile Access to Health Documents .

DocumentReference contains metadata, inline content or direct references to documents such as:

  • CDA documents in FHIR systems
  • FHIR documents stored elsewhere (i.e. registry/repository following the XDS model)
  • PDF documents , Scanned Paper, and digital records of faxes
  • Clinical Notes in various forms
  • Image files (e.g., JPEG, GIF, TIFF)
  • Video files (e.g., MP4, WMV)
  • Audio files (e.g., WAV, MP3)
  • Non-Standard formats (e.g., CSV, RTF, WORD)
  • Other kinds of documents, such as records of prescriptions or immunizations

FHIR defines both a document format and this document reference. FHIR documents are for documents that are authored and assembled in FHIR. DocumentReference is intended for general references to any type of media file including assembled documents.

The document that is a target of the reference can be a reference to a FHIR document served by another server, or the target can be stored in the special FHIR Binary Resource, or the target can be stored on some other server system. The document reference is also able to address documents that are retrieved by a service call such as an XDS.b RetrieveDocumentSet, or a DICOM exchange, or an HL7 v2 message query - though the way each of these service calls works must be specified in some external standard or other documentation.

A DocumentReference describes some other document. This means that there are two sets of provenance information relevant here: the provenance of the document, and the provenance of the document reference. Sometimes, the provenance information is closely related, as when the document producer also produces the document reference, but in other workflows, the document reference is generated later by other actors. In the DocumentReference resource, the meta content refers to the provenance of the reference itself, while the content described below concerns the document it references. Like all resources, there is overlap between the information in the resource directly, and in the general Provenance resource. This is discussed as part of the description of the Provenance resource.

This resource is referenced by AdverseEvent, Appointment, CarePlan, ClinicalImpression, Consent, Contract, DeviceRequest, DeviceUsage, DiagnosticReport, itself, FamilyMemberHistory, GuidanceResponse, ImagingStudy, MedicationKnowledge, MedicinalProductDefinition, NutritionIntake, Observation, PackagedProductDefinition, Procedure, RegulatedAuthorization, RequestGroup, RiskAssessment, ServiceRequest, SubstanceDefinition, SubstanceReferenceInformation and SupplyRequest.

This resource implements the Event pattern.

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference TUDomainResourceA reference to a document
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ0..*IdentifierBusiness identifiers for the document
... basedOn 0..*Reference(Appointment | AppointmentResponse | CarePlan | Claim | CommunicationRequest | Contract | CoverageEligibilityRequest | DeviceRequest | EnrollmentRequest | EpisodeOfCare | ImmunizationRecommendation | MedicationRequest | NutritionOrder | RequestGroup | ServiceRequest | SupplyRequest | VisionPrescription)Procedure that caused this media to be created
... status ?!Σ1..1codecurrent | superseded | entered-in-error
DocumentReferenceStatus (Required)
... type Σ0..1CodeableConceptKind of document (LOINC if possible)
FHIR Document Type Codes (Preferred)
... category Σ0..*CodeableConceptCategorization of document
Referenced Item Category Value Set (Example)
... subject Σ0..1Reference(Any)Who/what is the subject of the document
... context 0..*Reference(Appointment | Encounter | EpisodeOfCare)Context of the document content
... event 0..*CodeableReference()Main clinical acts documented
v3 Code System ActCode (Example)
... facilityType 0..1CodeableConceptKind of facility where patient was seen
DocumentC80FacilityType (Example)
... practiceSetting 0..1CodeableConceptAdditional details about where the content was created (e.g. clinical specialty)
DocumentC80PracticeSetting (Example)
... period Σ0..1PeriodTime of service that is being documented
... date Σ0..1instantWhen this document reference was created
... author Σ0..*Reference(Practitioner | PractitionerRole | Organization | Device | Patient | RelatedPerson | CareTeam)Who and/or what authored the document
... attester 0..*BackboneElementAttests to accuracy of the document
.... mode 1..1CodeableConceptpersonal | professional | legal | official
CompositionAttestationMode (Preferred)
.... time 0..1dateTimeWhen the document was attested
.... party 0..1Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization)Who attested the document
... custodian 0..1Reference(Organization)Organization which maintains the document
... relatesTo Σ0..*BackboneElementRelationships to other documents
.... code Σ1..1CodeableConceptThe relationship type with another document
DocumentRelationshipType (Extensible)
.... target Σ1..1Reference(DocumentReference)Target of the relationship
... description Σ0..1markdownHuman-readable description
... securityLabel Σ0..*CodeableConceptDocument security-tags
Example set of Security Labels (Example)
... content Σ1..*BackboneElementDocument referenced
.... attachment Σ1..1AttachmentWhere to access the document
.... profile Σ0..*BackboneElementContent profile rules for the document
..... value[x] Σ1..1Code|uri|canonical
DocumentReference Format Code Set (Preferred)
...... valueCodingCoding
...... valueUriuri
...... valueCanonicalcanonical()
... sourcePatientInfo 0..1Reference(Patient)Patient demographics from source

doco Documentation for this format

UML Diagram (Legend)

DocumentReference (DomainResource)Other business identifiers associated with the document, including version independent identifiersidentifier : Identifier [0..*]A procedure that is fulfilled in whole or in part by the creation of this mediabasedOn : Reference [0..*] « Appointment|AppointmentResponse| CarePlan|Claim|CommunicationRequest|Contract| CoverageEligibilityRequest|DeviceRequest|EnrollmentRequest| EpisodeOfCare|ImmunizationRecommendation|MedicationRequest| NutritionOrder|RequestGroup|ServiceRequest|SupplyRequest| VisionPrescription »The status of this document reference (this element modifies the meaning of other elements)status : code [1..1] « null (Strength=Required)DocumentReferenceStatus! »The status of the underlying documentdocStatus : code [0..1] « null (Strength=Required)CompositionStatus! »Specifies the particular kind of document referenced (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the document referencedtype : CodeableConcept [0..1] « null (Strength=Preferred)FHIRDocumentTypeCodes? »A categorization for the type of document referenced - helps for indexing and searching. This may be implied by or derived from the code specified in the DocumentReference.typecategory : CodeableConcept [0..*] « null (Strength=Example)ReferencedItemCategoryValueSet?? »Who or what the document is about. The document can be about a person, (patient or healthcare practitioner), a device (e.g. a machine) or even a group of subjects (such as a document about a herd of farm animals, or a set of patients that share a common exposure)subject : Reference [0..1] « Any »Describes the clinical encounter or type of care that the document content is associated withcontext : Reference [0..*] « Appointment|Encounter|EpisodeOfCare »This list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the type Code, such as a "History and Physical Report" in which the procedure being documented is necessarily a "History and Physical" actevent : DataType [0..*] « ; null (Strength=Example)ActCode?? »The kind of facility where the patient was seenfacilityType : CodeableConcept [0..1] « null (Strength=Example)DocumentC80FacilityType?? »This property may convey specifics about the practice setting where the content was created, often reflecting the clinical specialtypracticeSetting : CodeableConcept [0..1] « null (Strength=Example) DocumentC80PracticeSetting?? »The time period over which the service that is described by the document was providedperiod : Period [0..1]When the document reference was createddate : instant [0..1]Identifies who is responsible for adding the information to the documentauthor : Reference [0..*] « Practitioner|PractitionerRole| Organization|Device|Patient|RelatedPerson|CareTeam »Identifies the organization or group who is responsible for ongoing maintenance of and access to the documentcustodian : Reference [0..1] « Organization »Human-readable description of the source documentdescription : markdown [0..1]A set of Security-Tag codes specifying the level of privacy/security of the Document found at DocumentReference.content.attachment.url. Note that DocumentReference.meta.security contains the security labels of the data elements in DocumentReference, while DocumentReference.securityLabel contains the security labels for the document the reference refers to. The distinction recognizes that the document may contain sensitive information, while the DocumentReference is metadata about the document and thus might not be as sensitive as the document. For example: a psychotherapy episode may contain highly sensitive information, while the metadata may simply indicate that some episode happenedsecurityLabel : CodeableConcept [0..*] « null (Strength=Example)SecurityLabelExamples?? »The Patient Information as known when the document was published. May be a reference to a version specific, or containedsourcePatientInfo : Reference [0..1] « Patient »AttesterThe type of attestation the authenticator offersmode : CodeableConcept [1..1] « null (Strength=Preferred)CompositionAttestationMode? »When the document was attested by the partytime : dateTime [0..1]Who attested the document in the specified wayparty : Reference [0..1] « Patient|RelatedPerson|Practitioner| PractitionerRole|Organization »RelatesToThe type of relationship that this document has with anther documentcode : CodeableConcept [1..1] « null (Strength=Extensible)DocumentRelationshipType+ »The target document of this relationshiptarget : Reference [1..1] « DocumentReference »ContentThe document or URL of the document along with critical metadata to prove content has integrityattachment : Attachment [1..1]ProfileCode|uri|canonicalvalue[x] : DataType [1..1] « Coding|uri|canonical; null (Strength=Preferred) DocumentReferenceFormatCodeSet? »A participant who has authenticated the accuracy of the documentattester[0..*]Relationships that this document has with other document references that already existrelatesTo[0..*]An identifier of the document constraints, encoding, structure, and template that the document conforms to beyond the base format indicated in the mimeTypeprofile[0..*]The document and format referenced. If there are multiple content element repetitions, these must all represent the same document in different format, or attachment metadatacontent[1..*]

XML Template

<DocumentReference xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier Business identifiers for the document --></identifier>
 <basedOn><!-- 0..* Reference(Appointment|AppointmentResponse|CarePlan|Claim|
   CommunicationRequest|Contract|CoverageEligibilityRequest|DeviceRequest|
   EnrollmentRequest|EpisodeOfCare|ImmunizationRecommendation|MedicationRequest|
   NutritionOrder|RequestGroup|ServiceRequest|SupplyRequest|VisionPrescription) Procedure that caused this media to be created --></basedOn>
 <status value="[code]"/><!-- 1..1 current | superseded | entered-in-error -->
 <docStatus value="[code]"/><!-- 0..1 preliminary | final | amended | entered-in-error | deprecated -->
 <type><!-- 0..1 CodeableConcept Kind of document (LOINC if possible) --></type>
 <category><!-- 0..* CodeableConcept Categorization of document --></category>
 <subject><!-- 0..1 Reference(Any) Who/what is the subject of the document --></subject>
 <context><!-- 0..* Reference(Appointment|Encounter|EpisodeOfCare) Context of the document content --></context>
 <event><!-- 0..* CodeableReference Main clinical acts documented  --></event>
 <facilityType><!-- 0..1 CodeableConcept Kind of facility where patient was seen  --></facilityType>
 <practiceSetting><!-- 0..1 CodeableConcept Additional details about where the content was created (e.g. clinical specialty)  --></practiceSetting>
 <period><!-- 0..1 Period Time of service that is being documented --></period>
 <date value="[instant]"/><!-- 0..1 When this document reference was created -->
 <author><!-- 0..* Reference(CareTeam|Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) Who and/or what authored the document --></author>
 <attester>  <!-- 0..* Attests to accuracy of the document -->
  <mode><!-- 1..1 CodeableConcept personal | professional | legal | official --></mode>
  <time value="[dateTime]"/><!-- 0..1 When the document was attested -->
  <party><!-- 0..1 Reference(Organization|Patient|Practitioner|PractitionerRole|
    RelatedPerson) Who attested the document --></party>
 </attester>
 <custodian><!-- 0..1 Reference(Organization) Organization which maintains the document --></custodian>
 <relatesTo>  <!-- 0..* Relationships to other documents -->
  <code><!-- 1..1 CodeableConcept The relationship type with another document --></code>
  <target><!-- 1..1 Reference(DocumentReference) Target of the relationship --></target>
 </relatesTo>
 <description value="[markdown]"/><!-- 0..1 Human-readable description -->
 <securityLabel><!-- 0..* CodeableConcept Document security-tags --></securityLabel>
 <content>  <!-- 1..* Document referenced -->
  <attachment><!-- 1..1 Attachment Where to access the document --></attachment>
  <profile>  <!-- 0..* Content profile rules for the document -->
   <value[x]><!-- 1..1 Coding|uri|canonical Code|uri|canonical --></value[x]>
  </profile>
 </content>
 <sourcePatientInfo><!-- 0..1 Reference(Patient) Patient demographics from source --></sourcePatientInfo>
</DocumentReference>

JSON Template

{doco
  "resourceType" : "DocumentReference",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Business identifiers for the document
  "basedOn" : [{ Reference(Appointment|AppointmentResponse|CarePlan|Claim|
   CommunicationRequest|Contract|CoverageEligibilityRequest|DeviceRequest|
   EnrollmentRequest|EpisodeOfCare|ImmunizationRecommendation|MedicationRequest|
   NutritionOrder|RequestGroup|ServiceRequest|SupplyRequest|VisionPrescription) }], // Procedure that caused this media to be created
  "status" : "<code>", // R!  current | superseded | entered-in-error
  "docStatus" : "<code>", // preliminary | final | amended | entered-in-error | deprecated
  "type" : { CodeableConcept }, // Kind of document (LOINC if possible)
  "category" : [{ CodeableConcept }], // Categorization of document
  "subject" : { Reference(Any) }, // Who/what is the subject of the document
  "context" : [{ Reference(Appointment|Encounter|EpisodeOfCare) }], // Context of the document content
  "event" : [{ CodeableReference }], // Main clinical acts documented 
  "facilityType" : { CodeableConcept }, // Kind of facility where patient was seen 
  "practiceSetting" : { CodeableConcept }, // Additional details about where the content was created (e.g. clinical specialty) 
  "period" : { Period }, // Time of service that is being documented
  "date" : "<instant>", // When this document reference was created
  "author" : [{ Reference(CareTeam|Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) }], // Who and/or what authored the document
  "attester" : [{ // Attests to accuracy of the document
    "mode" : { CodeableConcept }, // R!  personal | professional | legal | official
    "time" : "<dateTime>", // When the document was attested
    "party" : { Reference(Organization|Patient|Practitioner|PractitionerRole|
    RelatedPerson) } // Who attested the document
  }],
  "custodian" : { Reference(Organization) }, // Organization which maintains the document
  "relatesTo" : [{ // Relationships to other documents
    "code" : { CodeableConcept }, // R!  The relationship type with another document
    "target" : { Reference(DocumentReference) } // R!  Target of the relationship
  }],
  "description" : "<markdown>", // Human-readable description
  "securityLabel" : [{ CodeableConcept }], // Document security-tags
  "content" : [{ // R!  Document referenced
    "attachment" : { Attachment }, // R!  Where to access the document
    "profile" : [{ // Content profile rules for the document
      // value[x]: Code|uri|canonical. One of these 3:
      "valueCoding" : { Coding }
      "valueUri" : "<uri>"
      "valueCanonical" : "<canonical>"
    }]
  }],
  "sourcePatientInfo" : { Reference(Patient) } // Patient demographics from source
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:DocumentReference;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:DocumentReference.identifier [ Identifier ], ... ; # 0..* Business identifiers for the document
  fhir:DocumentReference.basedOn [ Reference(Appointment|AppointmentResponse|CarePlan|Claim|CommunicationRequest|Contract|
  CoverageEligibilityRequest|DeviceRequest|EnrollmentRequest|EpisodeOfCare|
  ImmunizationRecommendation|MedicationRequest|NutritionOrder|RequestGroup|
  ServiceRequest|SupplyRequest|VisionPrescription) ], ... ; # 0..* Procedure that caused this media to be created
  fhir:DocumentReference.status [ code ]; # 1..1 current | superseded | entered-in-error
  fhir:DocumentReference.docStatus [ code ]; # 0..1 preliminary | final | amended | entered-in-error | deprecated
  fhir:DocumentReference.type [ CodeableConcept ]; # 0..1 Kind of document (LOINC if possible)
  fhir:DocumentReference.category [ CodeableConcept ], ... ; # 0..* Categorization of document
  fhir:DocumentReference.subject [ Reference(Any) ]; # 0..1 Who/what is the subject of the document
  fhir:DocumentReference.context [ Reference(Appointment|Encounter|EpisodeOfCare) ], ... ; # 0..* Context of the document content
  fhir:DocumentReference.event [ CodeableReference ], ... ; # 0..* Main clinical acts documented
  fhir:DocumentReference.facilityType [ CodeableConcept ]; # 0..1 Kind of facility where patient was seen
  fhir:DocumentReference.practiceSetting [ CodeableConcept ]; # 0..1 Additional details about where the content was created (e.g. clinical specialty)
  fhir:DocumentReference.period [ Period ]; # 0..1 Time of service that is being documented
  fhir:DocumentReference.date [ instant ]; # 0..1 When this document reference was created
  fhir:DocumentReference.author [ Reference(CareTeam|Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ], ... ; # 0..* Who and/or what authored the document
  fhir:DocumentReference.attester [ # 0..* Attests to accuracy of the document
    fhir:DocumentReference.attester.mode [ CodeableConcept ]; # 1..1 personal | professional | legal | official
    fhir:DocumentReference.attester.time [ dateTime ]; # 0..1 When the document was attested
    fhir:DocumentReference.attester.party [ Reference(Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ]; # 0..1 Who attested the document
  ], ...;
  fhir:DocumentReference.custodian [ Reference(Organization) ]; # 0..1 Organization which maintains the document
  fhir:DocumentReference.relatesTo [ # 0..* Relationships to other documents
    fhir:DocumentReference.relatesTo.code [ CodeableConcept ]; # 1..1 The relationship type with another document
    fhir:DocumentReference.relatesTo.target [ Reference(DocumentReference) ]; # 1..1 Target of the relationship
  ], ...;
  fhir:DocumentReference.description [ markdown ]; # 0..1 Human-readable description
  fhir:DocumentReference.securityLabel [ CodeableConcept ], ... ; # 0..* Document security-tags
  fhir:DocumentReference.content [ # 1..* Document referenced
    fhir:DocumentReference.content.attachment [ Attachment ]; # 1..1 Where to access the document
    fhir:DocumentReference.content.profile [ # 0..* Content profile rules for the document
      # DocumentReference.content.profile.value[x] : 1..1 Code|uri|canonical. One of these 3
        fhir:DocumentReference.content.profile.valueCoding [ Coding ]
        fhir:DocumentReference.content.profile.valueUri [ uri ]
        fhir:DocumentReference.content.profile.valueCanonical [ canonical ]
    ], ...;
  ], ...;
  fhir:DocumentReference.sourcePatientInfo [ Reference(Patient) ]; # 0..1 Patient demographics from source
]

Changes since R3

DocumentReference
DocumentReference.basedOn
  • Added Element
DocumentReference.status
  • Change value set from http://hl7.org/fhir/ValueSet/document-reference-status|4.0.0 to http://hl7.org/fhir/ValueSet/document-reference-status|4.6.0
DocumentReference.docStatus
  • Change value set from http://hl7.org/fhir/ValueSet/composition-status|4.0.0 to http://hl7.org/fhir/ValueSet/composition-status|4.6.0
DocumentReference.subject
  • Type Reference: Added Target Type Resource
  • Type Reference: Removed Target Types Patient, Practitioner, Group, Device
DocumentReference.context
  • Max Cardinality changed from 1 to *
  • Type changed from BackboneElement to Reference(Appointment | Encounter | EpisodeOfCare)
DocumentReference.event
  • Added Element
DocumentReference.facilityType
  • Added Element
DocumentReference.practiceSetting
  • Added Element
DocumentReference.period
  • Added Element
DocumentReference.author
  • Type Reference: Added Target Type CareTeam
DocumentReference.attester
  • Added Element
DocumentReference.attester.mode
  • Added Mandatory Element
DocumentReference.attester.time
  • Added Element
DocumentReference.attester.party
  • Added Element
DocumentReference.relatesTo.code
  • Type changed from code to CodeableConcept
  • Change binding strength from required to extensible
  • Change value set from http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.0 to http://hl7.org/fhir/ValueSet/document-relationship-type
DocumentReference.description
  • Type changed from string to markdown
DocumentReference.securityLabel
  • Remove Binding http://hl7.org/fhir/ValueSet/security-labels (extensible)
DocumentReference.content.profile
  • Added Element
DocumentReference.content.profile.value[x]
  • Added Mandatory Element
DocumentReference.sourcePatientInfo
  • Added Element
DocumentReference.masterIdentifier
  • deleted
DocumentReference.authenticator
  • deleted
DocumentReference.content.format
  • deleted
DocumentReference.context.encounter
  • deleted
DocumentReference.context.event
  • deleted
DocumentReference.context.period
  • deleted
DocumentReference.context.facilityType
  • deleted
DocumentReference.context.practiceSetting
  • deleted
DocumentReference.context.sourcePatientInfo
  • deleted
DocumentReference.context.related
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON.

See R3 <--> R4 Conversion Maps (status = 1 test of which 1 fail to execute.)

Structure

NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference TUDomainResourceA reference to a document
Elements defined in Ancestors: id, meta, implicitRules, language, text, contained, extension, modifierExtension
... identifier Σ0..*IdentifierBusiness identifiers for the document
... basedOn 0..*Reference(Appointment | AppointmentResponse | CarePlan | Claim | CommunicationRequest | Contract | CoverageEligibilityRequest | DeviceRequest | EnrollmentRequest | EpisodeOfCare | ImmunizationRecommendation | MedicationRequest | NutritionOrder | RequestGroup | ServiceRequest | SupplyRequest | VisionPrescription)Procedure that caused this media to be created
... status ?!Σ1..1codecurrent | superseded | entered-in-error
DocumentReferenceStatus (Required)
... type Σ0..1CodeableConceptKind of document (LOINC if possible)
FHIR Document Type Codes (Preferred)
... category Σ0..*CodeableConceptCategorization of document
Referenced Item Category Value Set (Example)
... subject Σ0..1Reference(Any)Who/what is the subject of the document
... context 0..*Reference(Appointment | Encounter | EpisodeOfCare)Context of the document content
... event 0..*CodeableReference()Main clinical acts documented
v3 Code System ActCode (Example)
... facilityType 0..1CodeableConceptKind of facility where patient was seen
DocumentC80FacilityType (Example)
... practiceSetting 0..1CodeableConceptAdditional details about where the content was created (e.g. clinical specialty)
DocumentC80PracticeSetting (Example)
... period Σ0..1PeriodTime of service that is being documented
... date Σ0..1instantWhen this document reference was created
... author Σ0..*Reference(Practitioner | PractitionerRole | Organization | Device | Patient | RelatedPerson | CareTeam)Who and/or what authored the document
... attester 0..*BackboneElementAttests to accuracy of the document
.... mode 1..1CodeableConceptpersonal | professional | legal | official
CompositionAttestationMode (Preferred)
.... time 0..1dateTimeWhen the document was attested
.... party 0..1Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization)Who attested the document
... custodian 0..1Reference(Organization)Organization which maintains the document
... relatesTo Σ0..*BackboneElementRelationships to other documents
.... code Σ1..1CodeableConceptThe relationship type with another document
DocumentRelationshipType (Extensible)
.... target Σ1..1Reference(DocumentReference)Target of the relationship
... description Σ0..1markdownHuman-readable description
... securityLabel Σ0..*CodeableConceptDocument security-tags
Example set of Security Labels (Example)
... content Σ1..*BackboneElementDocument referenced
.... attachment Σ1..1AttachmentWhere to access the document
.... profile Σ0..*BackboneElementContent profile rules for the document
..... value[x] Σ1..1Code|uri|canonical
DocumentReference Format Code Set (Preferred)
...... valueCodingCoding
...... valueUriuri
...... valueCanonicalcanonical()
... sourcePatientInfo 0..1Reference(Patient)Patient demographics from source

doco Documentation for this format

UML Diagram (Legend)

DocumentReference (DomainResource)Other business identifiers associated with the document, including version independent identifiersidentifier : Identifier [0..*]A procedure that is fulfilled in whole or in part by the creation of this mediabasedOn : Reference [0..*] « Appointment|AppointmentResponse| CarePlan|Claim|CommunicationRequest|Contract| CoverageEligibilityRequest|DeviceRequest|EnrollmentRequest| EpisodeOfCare|ImmunizationRecommendation|MedicationRequest| NutritionOrder|RequestGroup|ServiceRequest|SupplyRequest| VisionPrescription »The status of this document reference (this element modifies the meaning of other elements)status : code [1..1] « null (Strength=Required)DocumentReferenceStatus! »The status of the underlying documentdocStatus : code [0..1] « null (Strength=Required)CompositionStatus! »Specifies the particular kind of document referenced (e.g. History and Physical, Discharge Summary, Progress Note). This usually equates to the purpose of making the document referencedtype : CodeableConcept [0..1] « null (Strength=Preferred)FHIRDocumentTypeCodes? »A categorization for the type of document referenced - helps for indexing and searching. This may be implied by or derived from the code specified in the DocumentReference.typecategory : CodeableConcept [0..*] « null (Strength=Example)ReferencedItemCategoryValueSet?? »Who or what the document is about. The document can be about a person, (patient or healthcare practitioner), a device (e.g. a machine) or even a group of subjects (such as a document about a herd of farm animals, or a set of patients that share a common exposure)subject : Reference [0..1] « Any »Describes the clinical encounter or type of care that the document content is associated withcontext : Reference [0..*] « Appointment|Encounter|EpisodeOfCare »This list of codes represents the main clinical acts, such as a colonoscopy or an appendectomy, being documented. In some cases, the event is inherent in the type Code, such as a "History and Physical Report" in which the procedure being documented is necessarily a "History and Physical" actevent : DataType [0..*] « ; null (Strength=Example)ActCode?? »The kind of facility where the patient was seenfacilityType : CodeableConcept [0..1] « null (Strength=Example)DocumentC80FacilityType?? »This property may convey specifics about the practice setting where the content was created, often reflecting the clinical specialtypracticeSetting : CodeableConcept [0..1] « null (Strength=Example) DocumentC80PracticeSetting?? »The time period over which the service that is described by the document was providedperiod : Period [0..1]When the document reference was createddate : instant [0..1]Identifies who is responsible for adding the information to the documentauthor : Reference [0..*] « Practitioner|PractitionerRole| Organization|Device|Patient|RelatedPerson|CareTeam »Identifies the organization or group who is responsible for ongoing maintenance of and access to the documentcustodian : Reference [0..1] « Organization »Human-readable description of the source documentdescription : markdown [0..1]A set of Security-Tag codes specifying the level of privacy/security of the Document found at DocumentReference.content.attachment.url. Note that DocumentReference.meta.security contains the security labels of the data elements in DocumentReference, while DocumentReference.securityLabel contains the security labels for the document the reference refers to. The distinction recognizes that the document may contain sensitive information, while the DocumentReference is metadata about the document and thus might not be as sensitive as the document. For example: a psychotherapy episode may contain highly sensitive information, while the metadata may simply indicate that some episode happenedsecurityLabel : CodeableConcept [0..*] « null (Strength=Example)SecurityLabelExamples?? »The Patient Information as known when the document was published. May be a reference to a version specific, or containedsourcePatientInfo : Reference [0..1] « Patient »AttesterThe type of attestation the authenticator offersmode : CodeableConcept [1..1] « null (Strength=Preferred)CompositionAttestationMode? »When the document was attested by the partytime : dateTime [0..1]Who attested the document in the specified wayparty : Reference [0..1] « Patient|RelatedPerson|Practitioner| PractitionerRole|Organization »RelatesToThe type of relationship that this document has with anther documentcode : CodeableConcept [1..1] « null (Strength=Extensible)DocumentRelationshipType+ »The target document of this relationshiptarget : Reference [1..1] « DocumentReference »ContentThe document or URL of the document along with critical metadata to prove content has integrityattachment : Attachment [1..1]ProfileCode|uri|canonicalvalue[x] : DataType [1..1] « Coding|uri|canonical; null (Strength=Preferred) DocumentReferenceFormatCodeSet? »A participant who has authenticated the accuracy of the documentattester[0..*]Relationships that this document has with other document references that already existrelatesTo[0..*]An identifier of the document constraints, encoding, structure, and template that the document conforms to beyond the base format indicated in the mimeTypeprofile[0..*]The document and format referenced. If there are multiple content element repetitions, these must all represent the same document in different format, or attachment metadatacontent[1..*]

XML Template

<DocumentReference xmlns="http://hl7.org/fhir"> doco
 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <identifier><!-- 0..* Identifier Business identifiers for the document --></identifier>
 <basedOn><!-- 0..* Reference(Appointment|AppointmentResponse|CarePlan|Claim|
   CommunicationRequest|Contract|CoverageEligibilityRequest|DeviceRequest|
   EnrollmentRequest|EpisodeOfCare|ImmunizationRecommendation|MedicationRequest|
   NutritionOrder|RequestGroup|ServiceRequest|SupplyRequest|VisionPrescription) Procedure that caused this media to be created --></basedOn>
 <status value="[code]"/><!-- 1..1 current | superseded | entered-in-error -->
 <docStatus value="[code]"/><!-- 0..1 preliminary | final | amended | entered-in-error | deprecated -->
 <type><!-- 0..1 CodeableConcept Kind of document (LOINC if possible) --></type>
 <category><!-- 0..* CodeableConcept Categorization of document --></category>
 <subject><!-- 0..1 Reference(Any) Who/what is the subject of the document --></subject>
 <context><!-- 0..* Reference(Appointment|Encounter|EpisodeOfCare) Context of the document content --></context>
 <event><!-- 0..* CodeableReference Main clinical acts documented  --></event>
 <facilityType><!-- 0..1 CodeableConcept Kind of facility where patient was seen  --></facilityType>
 <practiceSetting><!-- 0..1 CodeableConcept Additional details about where the content was created (e.g. clinical specialty)  --></practiceSetting>
 <period><!-- 0..1 Period Time of service that is being documented --></period>
 <date value="[instant]"/><!-- 0..1 When this document reference was created -->
 <author><!-- 0..* Reference(CareTeam|Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) Who and/or what authored the document --></author>
 <attester>  <!-- 0..* Attests to accuracy of the document -->
  <mode><!-- 1..1 CodeableConcept personal | professional | legal | official --></mode>
  <time value="[dateTime]"/><!-- 0..1 When the document was attested -->
  <party><!-- 0..1 Reference(Organization|Patient|Practitioner|PractitionerRole|
    RelatedPerson) Who attested the document --></party>
 </attester>
 <custodian><!-- 0..1 Reference(Organization) Organization which maintains the document --></custodian>
 <relatesTo>  <!-- 0..* Relationships to other documents -->
  <code><!-- 1..1 CodeableConcept The relationship type with another document --></code>
  <target><!-- 1..1 Reference(DocumentReference) Target of the relationship --></target>
 </relatesTo>
 <description value="[markdown]"/><!-- 0..1 Human-readable description -->
 <securityLabel><!-- 0..* CodeableConcept Document security-tags --></securityLabel>
 <content>  <!-- 1..* Document referenced -->
  <attachment><!-- 1..1 Attachment Where to access the document --></attachment>
  <profile>  <!-- 0..* Content profile rules for the document -->
   <value[x]><!-- 1..1 Coding|uri|canonical Code|uri|canonical --></value[x]>
  </profile>
 </content>
 <sourcePatientInfo><!-- 0..1 Reference(Patient) Patient demographics from source --></sourcePatientInfo>
</DocumentReference>

JSON Template

{doco
  "resourceType" : "DocumentReference",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Business identifiers for the document
  "basedOn" : [{ Reference(Appointment|AppointmentResponse|CarePlan|Claim|
   CommunicationRequest|Contract|CoverageEligibilityRequest|DeviceRequest|
   EnrollmentRequest|EpisodeOfCare|ImmunizationRecommendation|MedicationRequest|
   NutritionOrder|RequestGroup|ServiceRequest|SupplyRequest|VisionPrescription) }], // Procedure that caused this media to be created
  "status" : "<code>", // R!  current | superseded | entered-in-error
  "docStatus" : "<code>", // preliminary | final | amended | entered-in-error | deprecated
  "type" : { CodeableConcept }, // Kind of document (LOINC if possible)
  "category" : [{ CodeableConcept }], // Categorization of document
  "subject" : { Reference(Any) }, // Who/what is the subject of the document
  "context" : [{ Reference(Appointment|Encounter|EpisodeOfCare) }], // Context of the document content
  "event" : [{ CodeableReference }], // Main clinical acts documented 
  "facilityType" : { CodeableConcept }, // Kind of facility where patient was seen 
  "practiceSetting" : { CodeableConcept }, // Additional details about where the content was created (e.g. clinical specialty) 
  "period" : { Period }, // Time of service that is being documented
  "date" : "<instant>", // When this document reference was created
  "author" : [{ Reference(CareTeam|Device|Organization|Patient|Practitioner|
   PractitionerRole|RelatedPerson) }], // Who and/or what authored the document
  "attester" : [{ // Attests to accuracy of the document
    "mode" : { CodeableConcept }, // R!  personal | professional | legal | official
    "time" : "<dateTime>", // When the document was attested
    "party" : { Reference(Organization|Patient|Practitioner|PractitionerRole|
    RelatedPerson) } // Who attested the document
  }],
  "custodian" : { Reference(Organization) }, // Organization which maintains the document
  "relatesTo" : [{ // Relationships to other documents
    "code" : { CodeableConcept }, // R!  The relationship type with another document
    "target" : { Reference(DocumentReference) } // R!  Target of the relationship
  }],
  "description" : "<markdown>", // Human-readable description
  "securityLabel" : [{ CodeableConcept }], // Document security-tags
  "content" : [{ // R!  Document referenced
    "attachment" : { Attachment }, // R!  Where to access the document
    "profile" : [{ // Content profile rules for the document
      // value[x]: Code|uri|canonical. One of these 3:
      "valueCoding" : { Coding }
      "valueUri" : "<uri>"
      "valueCanonical" : "<canonical>"
    }]
  }],
  "sourcePatientInfo" : { Reference(Patient) } // Patient demographics from source
}

Turtle Template

@prefix fhir: <http://hl7.org/fhir/> .doco


[ a fhir:DocumentReference;
  fhir:nodeRole fhir:treeRoot; # if this is the parser root

  # from Resource: .id, .meta, .implicitRules, and .language
  # from DomainResource: .text, .contained, .extension, and .modifierExtension
  fhir:DocumentReference.identifier [ Identifier ], ... ; # 0..* Business identifiers for the document
  fhir:DocumentReference.basedOn [ Reference(Appointment|AppointmentResponse|CarePlan|Claim|CommunicationRequest|Contract|
  CoverageEligibilityRequest|DeviceRequest|EnrollmentRequest|EpisodeOfCare|
  ImmunizationRecommendation|MedicationRequest|NutritionOrder|RequestGroup|
  ServiceRequest|SupplyRequest|VisionPrescription) ], ... ; # 0..* Procedure that caused this media to be created
  fhir:DocumentReference.status [ code ]; # 1..1 current | superseded | entered-in-error
  fhir:DocumentReference.docStatus [ code ]; # 0..1 preliminary | final | amended | entered-in-error | deprecated
  fhir:DocumentReference.type [ CodeableConcept ]; # 0..1 Kind of document (LOINC if possible)
  fhir:DocumentReference.category [ CodeableConcept ], ... ; # 0..* Categorization of document
  fhir:DocumentReference.subject [ Reference(Any) ]; # 0..1 Who/what is the subject of the document
  fhir:DocumentReference.context [ Reference(Appointment|Encounter|EpisodeOfCare) ], ... ; # 0..* Context of the document content
  fhir:DocumentReference.event [ CodeableReference ], ... ; # 0..* Main clinical acts documented
  fhir:DocumentReference.facilityType [ CodeableConcept ]; # 0..1 Kind of facility where patient was seen
  fhir:DocumentReference.practiceSetting [ CodeableConcept ]; # 0..1 Additional details about where the content was created (e.g. clinical specialty)
  fhir:DocumentReference.period [ Period ]; # 0..1 Time of service that is being documented
  fhir:DocumentReference.date [ instant ]; # 0..1 When this document reference was created
  fhir:DocumentReference.author [ Reference(CareTeam|Device|Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ], ... ; # 0..* Who and/or what authored the document
  fhir:DocumentReference.attester [ # 0..* Attests to accuracy of the document
    fhir:DocumentReference.attester.mode [ CodeableConcept ]; # 1..1 personal | professional | legal | official
    fhir:DocumentReference.attester.time [ dateTime ]; # 0..1 When the document was attested
    fhir:DocumentReference.attester.party [ Reference(Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ]; # 0..1 Who attested the document
  ], ...;
  fhir:DocumentReference.custodian [ Reference(Organization) ]; # 0..1 Organization which maintains the document
  fhir:DocumentReference.relatesTo [ # 0..* Relationships to other documents
    fhir:DocumentReference.relatesTo.code [ CodeableConcept ]; # 1..1 The relationship type with another document
    fhir:DocumentReference.relatesTo.target [ Reference(DocumentReference) ]; # 1..1 Target of the relationship
  ], ...;
  fhir:DocumentReference.description [ markdown ]; # 0..1 Human-readable description
  fhir:DocumentReference.securityLabel [ CodeableConcept ], ... ; # 0..* Document security-tags
  fhir:DocumentReference.content [ # 1..* Document referenced
    fhir:DocumentReference.content.attachment [ Attachment ]; # 1..1 Where to access the document
    fhir:DocumentReference.content.profile [ # 0..* Content profile rules for the document
      # DocumentReference.content.profile.value[x] : 1..1 Code|uri|canonical. One of these 3
        fhir:DocumentReference.content.profile.valueCoding [ Coding ]
        fhir:DocumentReference.content.profile.valueUri [ uri ]
        fhir:DocumentReference.content.profile.valueCanonical [ canonical ]
    ], ...;
  ], ...;
  fhir:DocumentReference.sourcePatientInfo [ Reference(Patient) ]; # 0..1 Patient demographics from source
]

Changes since Release 3

DocumentReference
DocumentReference.basedOn
  • Added Element
DocumentReference.status
  • Change value set from http://hl7.org/fhir/ValueSet/document-reference-status|4.0.0 to http://hl7.org/fhir/ValueSet/document-reference-status|4.6.0
DocumentReference.docStatus
  • Change value set from http://hl7.org/fhir/ValueSet/composition-status|4.0.0 to http://hl7.org/fhir/ValueSet/composition-status|4.6.0
DocumentReference.subject
  • Type Reference: Added Target Type Resource
  • Type Reference: Removed Target Types Patient, Practitioner, Group, Device
DocumentReference.context
  • Max Cardinality changed from 1 to *
  • Type changed from BackboneElement to Reference(Appointment | Encounter | EpisodeOfCare)
DocumentReference.event
  • Added Element
DocumentReference.facilityType
  • Added Element
DocumentReference.practiceSetting
  • Added Element
DocumentReference.period
  • Added Element
DocumentReference.author
  • Type Reference: Added Target Type CareTeam
DocumentReference.attester
  • Added Element
DocumentReference.attester.mode
  • Added Mandatory Element
DocumentReference.attester.time
  • Added Element
DocumentReference.attester.party
  • Added Element
DocumentReference.relatesTo.code
  • Type changed from code to CodeableConcept
  • Change binding strength from required to extensible
  • Change value set from http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.0 to http://hl7.org/fhir/ValueSet/document-relationship-type
DocumentReference.description
  • Type changed from string to markdown
DocumentReference.securityLabel
  • Remove Binding http://hl7.org/fhir/ValueSet/security-labels (extensible)
DocumentReference.content.profile
  • Added Element
DocumentReference.content.profile.value[x]
  • Added Mandatory Element
DocumentReference.sourcePatientInfo
  • Added Element
DocumentReference.masterIdentifier
  • deleted
DocumentReference.authenticator
  • deleted
DocumentReference.content.format
  • deleted
DocumentReference.context.encounter
  • deleted
DocumentReference.context.event
  • deleted
DocumentReference.context.period
  • deleted
DocumentReference.context.facilityType
  • deleted
DocumentReference.context.practiceSetting
  • deleted
DocumentReference.context.sourcePatientInfo
  • deleted
DocumentReference.context.related
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON.

See R3 <--> R4 Conversion Maps (status = 1 test of which 1 fail to execute.)

 

See the Profiles & Extensions and the alternate definitions: Master Definition XML + JSON, XML Schema/Schematron + JSON Schema, ShEx (for Turtle) + see the extensions, the spreadsheet version & the dependency analysis a

PathDefinitionTypeReference
DocumentReference.status RequiredDocumentReferenceStatus
DocumentReference.docStatus RequiredCompositionStatus
DocumentReference.type PreferredFHIRDocumentTypeCodes
DocumentReference.category ExampleReferencedItemCategoryValueSet
DocumentReference.event ExampleActCode
DocumentReference.facilityType Examplehttp://hl7.org/fhir/ValueSet/c80-facilitycodes
DocumentReference.practiceSetting Examplehttp://hl7.org/fhir/ValueSet/c80-practice-codes
DocumentReference.attester.mode PreferredCompositionAttestationMode
DocumentReference.relatesTo.code ExtensibleDocumentRelationshipType
DocumentReference.securityLabel ExampleSecurityLabelExamples
DocumentReference.content.profile.value[x] PreferredDocumentReferenceFormatCodeSet

  • The resources maintain one way relationships that point backwards - e.g., the document that replaces one document points towards the document that it replaced. The reverse relationships can be followed by using indexes built from the resources. Typically, this is done using the search parameters described below. Given that documents may have other documents that replace or append them, clients should always check these relationships when accessing documents
  • The _content search parameter shall search across the DocumentReference.content.attachment.data, and DocumentReference.content.url.
  • If the referenced resource changes, then the corresponding DocumentRefererence may be out of sync temporarily. Coordination will be needed to ensure that the DocumentReference gets updated if the referenced resource changes (and to not allow updates to the DocumentReference that cause it to be misaligned with the referenced resource).

Search parameters for this resource. The common parameters also apply. See Searching for more information about searching in REST, messaging, and services.

NameTypeDescriptionExpressionIn Common
attesterreferenceWho attested the documentDocumentReference.attester.party
(Practitioner, Organization, Patient, PractitionerRole, RelatedPerson)
authorreferenceWho and/or what authored the documentDocumentReference.author
(Practitioner, Organization, CareTeam, Device, Patient, PractitionerRole, RelatedPerson)
based-onreferenceProcedure that caused this media to be createdDocumentReference.basedOn
(Appointment, MedicationRequest, VisionPrescription, ServiceRequest, SupplyRequest, AppointmentResponse, CoverageEligibilityRequest, CarePlan, EnrollmentRequest, EpisodeOfCare, NutritionOrder, RequestGroup, DeviceRequest, Contract, Claim, CommunicationRequest, ImmunizationRecommendation)
categorytokenCategorization of documentDocumentReference.category
contenttype NtokenMime type of the content, with charset etc.DocumentReference.content.attachment.contentType
contextreferenceContext of the document contentDocumentReference.context
(Appointment, EpisodeOfCare, Encounter)
creation NdateDate attachment was first createdDocumentReference.content.attachment.creation
custodianreferenceOrganization which maintains the documentDocumentReference.custodian
(Organization)
date NdateWhen this document reference was createdDocumentReference.date
description NstringHuman-readable descriptionDocumentReference.description
doc-status Ntokenpreliminary | final | amended | entered-in-errorDocumentReference.docStatus
event-codetokenMain clinical acts documentedDocumentReference.event.concept
event-referencereferenceMain clinical acts documentedDocumentReference.event.reference
facilitytokenKind of facility where patient was seenDocumentReference.facilityType
format-canonicalreferenceProfile canonical content rules for the document(DocumentReference.content.profile.value as canonical)
format-codetokenFormat code content rules for the document(DocumentReference.content.profile.value as Coding)
format-uriuriProfile URI content rules for the document(DocumentReference.content.profile.value as uri)
identifiertokenIdentifier of the attachment binaryDocumentReference.identifier
language NtokenHuman language of the content (BCP-47)DocumentReference.content.attachment.language
location NuriUri where the data can be foundDocumentReference.content.attachment.url
patientreferenceWho/what is the subject of the documentDocumentReference.subject.where(resolve() is Patient)
(Any)
perioddateTime of service that is being documentedDocumentReference.period
relatestoreferenceTarget of the relationshipDocumentReference.relatesTo.target
(DocumentReference)
relation Ntokenreplaces | transforms | signs | appendsDocumentReference.relatesTo.code
relationshipcompositeCombination of relation and relatesToOn DocumentReference.relatesTo:
  relatesto: code
  relation: target
security-labeltokenDocument security-tagsDocumentReference.securityLabel
settingtokenAdditional details about where the content was created (e.g. clinical specialty)DocumentReference.practiceSetting
status Ntokencurrent | superseded | entered-in-errorDocumentReference.status
subjectreferenceWho/what is the subject of the documentDocumentReference.subject
(Any)
typetokenKind of document (LOINC if possible)DocumentReference.type