Release 5 Draft Ballot

This page is part of the FHIR Specification (v4.6.0: R5 Draft Ballot - see ballot notes). The current version which supercedes this version is 5.0.0. For a full list of available versions, see the Directory of published versions . Page versions: R5 R4B R4 R3 R2

10.2 Resource DocumentReference - Content

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

This resource has been identified by FMG as a possible normative candidate for R5; this will be discussed with it's owning committee. Ballot comment is requested on this.

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.

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, Consent, Contract, DeviceUsage, DiagnosticReport, itself, MedicationKnowledge, MedicinalProductDefinition, Observation, PackagedProductDefinition, Procedure, RegulatedAuthorization, SubstanceDefinition and SubstanceReferenceInformation.

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..*IdentifierOther identifiers for the document
... basedOn 0..*Reference(ServiceRequest | CarePlan)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)
DocumentC80Type (Preferred)
... category Σ0..*CodeableConceptCategorization of document
Document Class Value Set (Example)
... subject Σ0..1Reference(Patient | Practitioner | Group | Device | PractitionerRole | Specimen | Organization | Location)Who/what is the subject of the document
... encounter 0..*Reference(Encounter)Context of the document content
... event 0..*CodeableConceptMain 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 composition
.... mode 1..1codepersonal | professional | legal | official
DocumentAttestationMode (Required)
.... time 0..1dateTimeWhen the composition was attested
.... party 0..1Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization)Who attested the composition
... custodian 0..1Reference(Organization)Organization which maintains the document
... relatesTo Σ0..*BackboneElementRelationships to other documents
.... code Σ1..1codereplaces | transforms | signs | appends
DocumentRelationshipType (Required)
.... target Σ1..1Reference(DocumentReference)Target of the relationship
... description Σ0..1markdownHuman-readable description
... securityLabel Σ0..*CodeableConceptDocument security-tags
SecurityLabels (Extensible)
... content Σ1..*BackboneElementDocument referenced
.... attachment Σ1..1AttachmentWhere to access the document
.... format Σ0..1CodingFormat/content rules for the document
DocumentReference Format Code Set (Preferred)
.... identifier Σ0..1IdentifierIdentifier of the attachment binary
... sourcePatientInfo 0..1Reference(Patient)Patient demographics from source
... related 0..*Reference(Any)Related identifiers or resources

doco Documentation for this format

UML Diagram (Legend)

DocumentReference (DomainResource)Other 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..*] « ServiceRequest|CarePlan »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)DocumentC80Type? »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)DocumentClassValueSet?? »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] « Patient|Practitioner|Group|Device| PractitionerRole|Specimen|Organization|Location »Describes the clinical encounter or type of care that the document content is associated withencounter : Reference [0..*] « Encounter »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 : CodeableConcept [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. Note that DocumentReference.meta.security contains the security labels of the "reference" to the document, while DocumentReference.securityLabel contains a snapshot of the security labels on the document the reference refers tosecurityLabel : CodeableConcept [0..*] « null (Strength=Extensible)All Security Labels+ »The Patient Information as known when the document was published. May be a reference to a version specific, or containedsourcePatientInfo : Reference [0..1] « Patient »Related identifiers or resources associated with the DocumentReferencerelated : Reference [0..*] « Any »AttesterThe type of attestation the authenticator offersmode : code [1..1] « null (Strength=Required)DocumentAttestationMode! »When the composition was attested by the partytime : dateTime [0..1]Who attested the composition in the specified wayparty : Reference [0..1] « Patient|RelatedPerson|Practitioner| PractitionerRole|Organization »RelatesToThe type of relationship that this document has with anther documentcode : code [1..1] « null (Strength=Required)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]An identifier of the document encoding, structure, and template that the document conforms to beyond the base format indicated in the mimeTypeformat : Coding [0..1] « null (Strength=Preferred)DocumentReferenceFormatCodeSet? »Document identifier as assigned by the source of the document. This identifier is specific to this version of the document. This unique identifier may be used elsewhere to identify this version of the documentidentifier : Identifier [0..1]A participant who has attested to the accuracy of the composition/documentattester[0..*]Relationships that this document has with other document references that already existrelatesTo[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 Other identifiers for the document --></identifier>
 <basedOn><!-- 0..* Reference(CarePlan|ServiceRequest) 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 -->
 <type><!-- 0..1 CodeableConcept Kind of document (LOINC if possible)  --></type>
 <category><!-- 0..* CodeableConcept Categorization of document --></category>
 <subject><!-- 0..1 Reference(Device|Group|Location|Organization|Patient|
   Practitioner|PractitionerRole|Specimen) Who/what is the subject of the document --></subject>
 <encounter><!-- 0..* Reference(Encounter) Context of the document  content --></encounter>
 <event><!-- 0..* CodeableConcept 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 composition -->
  <mode value="[code]"/><!-- 1..1 personal | professional | legal | official -->
  <time value="[dateTime]"/><!-- 0..1 When the composition was attested -->
  <party><!-- 0..1 Reference(Organization|Patient|Practitioner|PractitionerRole|
    RelatedPerson) Who attested the composition --></party>
 </attester>
 <custodian><!-- 0..1 Reference(Organization) Organization which maintains the document --></custodian>
 <relatesTo>  <!-- 0..* Relationships to other documents -->
  <code value="[code]"/><!-- 1..1 replaces | transforms | signs | appends -->
  <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>
  <format><!-- 0..1 Coding Format/content rules for the document --></format>
  <identifier><!-- 0..1 Identifier Identifier of the attachment binary --></identifier>
 </content>
 <sourcePatientInfo><!-- 0..1 Reference(Patient) Patient demographics from source --></sourcePatientInfo>
 <related><!-- 0..* Reference(Any) Related identifiers or resources --></related>
</DocumentReference>

JSON Template

{doco
  "resourceType" : "DocumentReference",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Other identifiers for the document
  "basedOn" : [{ Reference(CarePlan|ServiceRequest) }], // Procedure that caused this media to be created
  "status" : "<code>", // R!  current | superseded | entered-in-error
  "docStatus" : "<code>", // preliminary | final | amended | entered-in-error
  "type" : { CodeableConcept }, // Kind of document (LOINC if possible) 
  "category" : [{ CodeableConcept }], // Categorization of document
  "subject" : { Reference(Device|Group|Location|Organization|Patient|
   Practitioner|PractitionerRole|Specimen) }, // Who/what is the subject of the document
  "encounter" : [{ Reference(Encounter) }], // Context of the document  content
  "event" : [{ CodeableConcept }], // 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 composition
    "mode" : "<code>", // R!  personal | professional | legal | official
    "time" : "<dateTime>", // When the composition was attested
    "party" : { Reference(Organization|Patient|Practitioner|PractitionerRole|
    RelatedPerson) } // Who attested the composition
  }],
  "custodian" : { Reference(Organization) }, // Organization which maintains the document
  "relatesTo" : [{ // Relationships to other documents
    "code" : "<code>", // R!  replaces | transforms | signs | appends
    "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
    "format" : { Coding }, // Format/content rules for the document
    "identifier" : { Identifier } // Identifier of the attachment binary
  }],
  "sourcePatientInfo" : { Reference(Patient) }, // Patient demographics from source
  "related" : [{ Reference(Any) }] // Related identifiers or resources
}

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..* Other identifiers for the document
  fhir:DocumentReference.basedOn [ Reference(CarePlan|ServiceRequest) ], ... ; # 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
  fhir:DocumentReference.type [ CodeableConcept ]; # 0..1 Kind of document (LOINC if possible)
  fhir:DocumentReference.category [ CodeableConcept ], ... ; # 0..* Categorization of document
  fhir:DocumentReference.subject [ Reference(Device|Group|Location|Organization|Patient|Practitioner|PractitionerRole|
  Specimen) ]; # 0..1 Who/what is the subject of the document
  fhir:DocumentReference.encounter [ Reference(Encounter) ], ... ; # 0..* Context of the document  content
  fhir:DocumentReference.event [ CodeableConcept ], ... ; # 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 composition
    fhir:DocumentReference.attester.mode [ code ]; # 1..1 personal | professional | legal | official
    fhir:DocumentReference.attester.time [ dateTime ]; # 0..1 When the composition was attested
    fhir:DocumentReference.attester.party [ Reference(Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ]; # 0..1 Who attested the composition
  ], ...;
  fhir:DocumentReference.custodian [ Reference(Organization) ]; # 0..1 Organization which maintains the document
  fhir:DocumentReference.relatesTo [ # 0..* Relationships to other documents
    fhir:DocumentReference.relatesTo.code [ code ]; # 1..1 replaces | transforms | signs | appends
    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.format [ Coding ]; # 0..1 Format/content rules for the document
    fhir:DocumentReference.content.identifier [ Identifier ]; # 0..1 Identifier of the attachment binary
  ], ...;
  fhir:DocumentReference.sourcePatientInfo [ Reference(Patient) ]; # 0..1 Patient demographics from source
  fhir:DocumentReference.related [ Reference(Any) ], ... ; # 0..* Related identifiers or resources
]

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 Types PractitionerRole, Specimen, Organization, Location
DocumentReference.encounter
  • Added Element
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
  • Change value set from http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.0 to http://hl7.org/fhir/ValueSet/document-relationship-type|4.6.0
DocumentReference.description
  • Type changed from string to markdown
DocumentReference.content.identifier
  • Added Element
DocumentReference.sourcePatientInfo
  • Added Element
DocumentReference.related
  • Added Element
DocumentReference.masterIdentifier
  • deleted
DocumentReference.authenticator
  • deleted
DocumentReference.context
  • 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..*IdentifierOther identifiers for the document
... basedOn 0..*Reference(ServiceRequest | CarePlan)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)
DocumentC80Type (Preferred)
... category Σ0..*CodeableConceptCategorization of document
Document Class Value Set (Example)
... subject Σ0..1Reference(Patient | Practitioner | Group | Device | PractitionerRole | Specimen | Organization | Location)Who/what is the subject of the document
... encounter 0..*Reference(Encounter)Context of the document content
... event 0..*CodeableConceptMain 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 composition
.... mode 1..1codepersonal | professional | legal | official
DocumentAttestationMode (Required)
.... time 0..1dateTimeWhen the composition was attested
.... party 0..1Reference(Patient | RelatedPerson | Practitioner | PractitionerRole | Organization)Who attested the composition
... custodian 0..1Reference(Organization)Organization which maintains the document
... relatesTo Σ0..*BackboneElementRelationships to other documents
.... code Σ1..1codereplaces | transforms | signs | appends
DocumentRelationshipType (Required)
.... target Σ1..1Reference(DocumentReference)Target of the relationship
... description Σ0..1markdownHuman-readable description
... securityLabel Σ0..*CodeableConceptDocument security-tags
SecurityLabels (Extensible)
... content Σ1..*BackboneElementDocument referenced
.... attachment Σ1..1AttachmentWhere to access the document
.... format Σ0..1CodingFormat/content rules for the document
DocumentReference Format Code Set (Preferred)
.... identifier Σ0..1IdentifierIdentifier of the attachment binary
... sourcePatientInfo 0..1Reference(Patient)Patient demographics from source
... related 0..*Reference(Any)Related identifiers or resources

doco Documentation for this format

UML Diagram (Legend)

DocumentReference (DomainResource)Other 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..*] « ServiceRequest|CarePlan »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)DocumentC80Type? »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)DocumentClassValueSet?? »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] « Patient|Practitioner|Group|Device| PractitionerRole|Specimen|Organization|Location »Describes the clinical encounter or type of care that the document content is associated withencounter : Reference [0..*] « Encounter »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 : CodeableConcept [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. Note that DocumentReference.meta.security contains the security labels of the "reference" to the document, while DocumentReference.securityLabel contains a snapshot of the security labels on the document the reference refers tosecurityLabel : CodeableConcept [0..*] « null (Strength=Extensible)All Security Labels+ »The Patient Information as known when the document was published. May be a reference to a version specific, or containedsourcePatientInfo : Reference [0..1] « Patient »Related identifiers or resources associated with the DocumentReferencerelated : Reference [0..*] « Any »AttesterThe type of attestation the authenticator offersmode : code [1..1] « null (Strength=Required)DocumentAttestationMode! »When the composition was attested by the partytime : dateTime [0..1]Who attested the composition in the specified wayparty : Reference [0..1] « Patient|RelatedPerson|Practitioner| PractitionerRole|Organization »RelatesToThe type of relationship that this document has with anther documentcode : code [1..1] « null (Strength=Required)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]An identifier of the document encoding, structure, and template that the document conforms to beyond the base format indicated in the mimeTypeformat : Coding [0..1] « null (Strength=Preferred)DocumentReferenceFormatCodeSet? »Document identifier as assigned by the source of the document. This identifier is specific to this version of the document. This unique identifier may be used elsewhere to identify this version of the documentidentifier : Identifier [0..1]A participant who has attested to the accuracy of the composition/documentattester[0..*]Relationships that this document has with other document references that already existrelatesTo[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 Other identifiers for the document --></identifier>
 <basedOn><!-- 0..* Reference(CarePlan|ServiceRequest) 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 -->
 <type><!-- 0..1 CodeableConcept Kind of document (LOINC if possible)  --></type>
 <category><!-- 0..* CodeableConcept Categorization of document --></category>
 <subject><!-- 0..1 Reference(Device|Group|Location|Organization|Patient|
   Practitioner|PractitionerRole|Specimen) Who/what is the subject of the document --></subject>
 <encounter><!-- 0..* Reference(Encounter) Context of the document  content --></encounter>
 <event><!-- 0..* CodeableConcept 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 composition -->
  <mode value="[code]"/><!-- 1..1 personal | professional | legal | official -->
  <time value="[dateTime]"/><!-- 0..1 When the composition was attested -->
  <party><!-- 0..1 Reference(Organization|Patient|Practitioner|PractitionerRole|
    RelatedPerson) Who attested the composition --></party>
 </attester>
 <custodian><!-- 0..1 Reference(Organization) Organization which maintains the document --></custodian>
 <relatesTo>  <!-- 0..* Relationships to other documents -->
  <code value="[code]"/><!-- 1..1 replaces | transforms | signs | appends -->
  <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>
  <format><!-- 0..1 Coding Format/content rules for the document --></format>
  <identifier><!-- 0..1 Identifier Identifier of the attachment binary --></identifier>
 </content>
 <sourcePatientInfo><!-- 0..1 Reference(Patient) Patient demographics from source --></sourcePatientInfo>
 <related><!-- 0..* Reference(Any) Related identifiers or resources --></related>
</DocumentReference>

JSON Template

{doco
  "resourceType" : "DocumentReference",
  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "identifier" : [{ Identifier }], // Other identifiers for the document
  "basedOn" : [{ Reference(CarePlan|ServiceRequest) }], // Procedure that caused this media to be created
  "status" : "<code>", // R!  current | superseded | entered-in-error
  "docStatus" : "<code>", // preliminary | final | amended | entered-in-error
  "type" : { CodeableConcept }, // Kind of document (LOINC if possible) 
  "category" : [{ CodeableConcept }], // Categorization of document
  "subject" : { Reference(Device|Group|Location|Organization|Patient|
   Practitioner|PractitionerRole|Specimen) }, // Who/what is the subject of the document
  "encounter" : [{ Reference(Encounter) }], // Context of the document  content
  "event" : [{ CodeableConcept }], // 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 composition
    "mode" : "<code>", // R!  personal | professional | legal | official
    "time" : "<dateTime>", // When the composition was attested
    "party" : { Reference(Organization|Patient|Practitioner|PractitionerRole|
    RelatedPerson) } // Who attested the composition
  }],
  "custodian" : { Reference(Organization) }, // Organization which maintains the document
  "relatesTo" : [{ // Relationships to other documents
    "code" : "<code>", // R!  replaces | transforms | signs | appends
    "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
    "format" : { Coding }, // Format/content rules for the document
    "identifier" : { Identifier } // Identifier of the attachment binary
  }],
  "sourcePatientInfo" : { Reference(Patient) }, // Patient demographics from source
  "related" : [{ Reference(Any) }] // Related identifiers or resources
}

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..* Other identifiers for the document
  fhir:DocumentReference.basedOn [ Reference(CarePlan|ServiceRequest) ], ... ; # 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
  fhir:DocumentReference.type [ CodeableConcept ]; # 0..1 Kind of document (LOINC if possible)
  fhir:DocumentReference.category [ CodeableConcept ], ... ; # 0..* Categorization of document
  fhir:DocumentReference.subject [ Reference(Device|Group|Location|Organization|Patient|Practitioner|PractitionerRole|
  Specimen) ]; # 0..1 Who/what is the subject of the document
  fhir:DocumentReference.encounter [ Reference(Encounter) ], ... ; # 0..* Context of the document  content
  fhir:DocumentReference.event [ CodeableConcept ], ... ; # 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 composition
    fhir:DocumentReference.attester.mode [ code ]; # 1..1 personal | professional | legal | official
    fhir:DocumentReference.attester.time [ dateTime ]; # 0..1 When the composition was attested
    fhir:DocumentReference.attester.party [ Reference(Organization|Patient|Practitioner|PractitionerRole|RelatedPerson) ]; # 0..1 Who attested the composition
  ], ...;
  fhir:DocumentReference.custodian [ Reference(Organization) ]; # 0..1 Organization which maintains the document
  fhir:DocumentReference.relatesTo [ # 0..* Relationships to other documents
    fhir:DocumentReference.relatesTo.code [ code ]; # 1..1 replaces | transforms | signs | appends
    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.format [ Coding ]; # 0..1 Format/content rules for the document
    fhir:DocumentReference.content.identifier [ Identifier ]; # 0..1 Identifier of the attachment binary
  ], ...;
  fhir:DocumentReference.sourcePatientInfo [ Reference(Patient) ]; # 0..1 Patient demographics from source
  fhir:DocumentReference.related [ Reference(Any) ], ... ; # 0..* Related identifiers or resources
]

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 Types PractitionerRole, Specimen, Organization, Location
DocumentReference.encounter
  • Added Element
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
  • Change value set from http://hl7.org/fhir/ValueSet/document-relationship-type|4.0.0 to http://hl7.org/fhir/ValueSet/document-relationship-type|4.6.0
DocumentReference.description
  • Type changed from string to markdown
DocumentReference.content.identifier
  • Added Element
DocumentReference.sourcePatientInfo
  • Added Element
DocumentReference.related
  • Added Element
DocumentReference.masterIdentifier
  • deleted
DocumentReference.authenticator
  • deleted
DocumentReference.context
  • 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 Preferredhttp://hl7.org/fhir/ValueSet/c80-doc-typecodes
DocumentReference.category ExampleDocumentClassValueSet
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 RequiredDocumentAttestationMode
DocumentReference.relatesTo.code RequiredDocumentRelationshipType
DocumentReference.securityLabel ExtensibleAll Security Labels
DocumentReference.content.format PreferredDocumentReferenceFormatCodeSet

  • The use of the .docStatus codes is discussed in the Composition description
  • 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.

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 compositionDocumentReference.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
(CarePlan, ServiceRequest)
categorytokenCategorization of documentDocumentReference.category
contenttype NtokenMime type of the content, with charset etc.DocumentReference.content.attachment.contentType
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
encounterreferenceContext of the document contentDocumentReference.encounter
(Encounter)
eventtokenMain clinical acts documentedDocumentReference.event
facilitytokenKind of facility where patient was seenDocumentReference.facilityType
formattokenFormat/content rules for the documentDocumentReference.content.format
identifiertokenIdentifier of the attachment binaryDocumentReference.content.identifier | DocumentReference.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)
(Practitioner, Group, Specimen, Organization, Device, Patient, PractitionerRole, Location)
perioddateTime of service that is being documentedDocumentReference.period
relatedreferenceRelated identifiers or resourcesDocumentReference.related
(Any)
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
(Practitioner, Group, Specimen, Organization, Device, Patient, PractitionerRole, Location)
typetokenKind of document (LOINC if possible)DocumentReference.type