FHIR Release 3 (STU) R4 Ballot #1 (Mixed Normative/Trial use)

This page is part of the FHIR Specification (v3.0.2: STU 3). (v3.3.0: R4 Ballot 2). 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

2.42 2.39 Resource DocumentReference - Content

Structured Documents Work Group Maturity Level : 3   Trial Use Compartments : Device , Encounter , Patient , Practitioner , RelatedPerson

A reference to a document.

A DocumentReference resource is used to describe a document that is made 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 displayed 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 are used such as profiled in IHE Mobile access to refer to: Health Documents .

DocumentReference is metadata describing a document such as:

  • CDA documents in FHIR systems
  • FHIR documents stored elsewhere (i.e. registry/repository following the XDS model)
  • PDF documents , Scanned Paper, and even digital records of faxes where sufficient information is available
  • Image files (e.g., JPEG, GIF, TIFF)
  • Non-Standard formats (e.g., WORD)
  • Other kinds of documents, such as records of prescriptions

FHIR defines both a document format and this document reference. FHIR documents are for documents that are authored and assembled in FHIR. This resource is mainly intended for general references to other 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 , CarePlan , Communication , CommunicationRequest , Consent and , Contract , DeviceRequest , DeviceUseStatement , FamilyMemberHistory , GuidanceResponse , ImagingStudy , MedicinalProduct , Observation , Procedure , RequestGroup , RiskAssessment , ServiceRequest , SubstanceReferenceInformation , SubstanceSpecification and SupplyRequest

Structure

Name Flags Card. Type Description & Constraints doco
. . DocumentReference TU DomainResource A reference to a document
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension
. . . masterIdentifier Σ 0..1 Identifier Master Version Specific Identifier
. . . identifier Σ 0..* Identifier Other identifiers for the document
. . . status ?! Σ 1..1 code current | superseded | entered-in-error
DocumentReferenceStatus ( Required )
. . . docStatus Σ 0..1 code preliminary | final | appended | amended | entered-in-error
CompositionStatus ( Required )
. . . type Σ 1..1 0..1 CodeableConcept Kind of document (LOINC if possible)
Document Type Value Set ( Preferred )
. . . class Σ 0..1 CodeableConcept Categorization of document
Document Class Value Set ( Example )
. . . subject Σ 0..1 Reference ( Patient | Practitioner | Group | Device ) Who/what is the subject of the document
. . . created Σ 0..1 dateTime Document creation time
. . . indexed date Σ 1..1 0..1 instant When this document reference was created
. . author . agent Σ 0..* BackboneElement Agent involved
.... type Σ 0..1 CodeableConcept How agent participated
ParticipationRoleType ( Extensible )
.... who Σ 1..1 Reference ( Practitioner | PractitionerRole | Organization | Device | Patient | RelatedPerson ) Who and/or what authored the document
. . . authenticator Σ 0..1 Reference ( Practitioner | Organization ) Who/what authenticated the document
. . . custodian Σ 0..1 Reference ( Organization ) Organization which maintains the document
. . . relatesTo ?! Σ 0..* BackboneElement Relationships to other documents
. . . . code Σ 1..1 code replaces | transforms | signs | appends
DocumentRelationshipType ( Required )
. . . . target Σ 1..1 Reference ( DocumentReference ) Target of the relationship
. . . description Σ 0..1 string Human-readable description (title)
. . . securityLabel Σ 0..* CodeableConcept Document security-tags
All Security Labels ( Extensible )
. . . content Σ 1..* BackboneElement Document referenced
. . . . attachment Σ 1..1 Attachment Where to access the document
. . . . format Σ 0..1 Coding Format/content rules for the document
DocumentReference Format Code Set ( Preferred )
. . . context Σ 0..1 BackboneElement Clinical context of document
. . . . encounter Σ 0..1 Reference ( Encounter ) Context of the document content
. . . . event Σ 0..* CodeableConcept Main clinical acts documented
v3 Code System ActCode ( Example )
. . . . period Σ 0..1 Period Time of service that is being documented
. . . . facilityType Σ 0..1 CodeableConcept Kind of facility where patient was seen
Facility Type Code Value Set ( Example )
. . . . practiceSetting Σ 0..1 CodeableConcept Additional details about where the content was created (e.g. clinical specialty)
Practice Setting Code Value Set ( Example )
. . . . sourcePatientInfo Σ 0..1 Reference ( Patient ) Patient demographics from source
. . . . related Σ 0..* BackboneElement Related identifiers or resources
. . . . . identifier Σ 0..1 Identifier Identifier of related objects or events
. . . . . ref Σ 0..1 Reference ( Any ) Related Resource

doco Documentation for this format

UML Diagram ( Legend )

DocumentReference ( DomainResource ) 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 document masterIdentifier : Identifier [0..1] Other identifiers associated with the document, including version independent identifiers identifier : Identifier [0..*] The status of this document reference (this element modifies the meaning of other elements) status : code [1..1] « The status of the document reference. (Strength=Required) DocumentReferenceStatus ! » The status of the underlying document docStatus : code [0..1] « Status of the underlying document. (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 referenced type : CodeableConcept [1..1] [0..1] « Precise type of clinical document. (Strength=Preferred) Document Type Value Set ? » 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.type class : CodeableConcept [0..1] « High-level kind of a clinical document at a macro level. (Strength=Example) Document Class Value Set ?? » 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 » When the document was created created : dateTime [0..1] When the document reference was created indexed date : instant [1..1] [0..1] Identifies who is responsible for adding the information to the document author : Reference [0..*] Practitioner | Organization | Device | Patient | RelatedPerson Which person or organization authenticates that this document is valid authenticator : Reference [0..1] « Practitioner | Organization » Identifies the organization or group who is responsible for ongoing maintenance of and access to the document custodian : Reference [0..1] « Organization » Human-readable description of the source document. This is sometimes known as the "title" "title" description : string [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" "reference" to the document, while DocumentReference.securityLabel contains a snapshot of the security labels on the document the reference refers to securityLabel : CodeableConcept [0..*] « Security Labels from the Healthcare Privacy and Security Classification System. (Strength=Extensible) All Security Labels + » Agent Specification of the participation type the agent played type : CodeableConcept [0..1] « The Participation type of the agent to the event (Strength=Extensible) ParticipationRoleType + » Identifies who is responsible for adding the information to the document who : Reference [1..1] « Practitioner | PractitionerRole | Organization | Device | Patient | RelatedPerson » RelatesTo The type of relationship that this document has with anther document code : code [1..1] « The type of relationship between documents. (Strength=Required) DocumentRelationshipType ! » The target document of this relationship target : Reference [1..1] « DocumentReference » Content The document or URL of the document along with critical metadata to prove content has integrity attachment : Attachment [1..1] An identifier of the document encoding, structure, and template that the document conforms to beyond the base format indicated in the mimeType format : Coding [0..1] « Document Format Codes. (Strength=Preferred) DocumentReference Format Code... ? » Context Describes the clinical encounter or type of care that the document content is associated with encounter : Reference [0..1] « 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 typeCode, type code, such as a "History "History and Physical Report" Report" in which the procedure being documented is necessarily a "History "History and Physical" Physical" act event : CodeableConcept [0..*] « This list of codes represents the main clinical acts being documented. (Strength=Example) v3 Code System ActCode ?? » The time period over which the service that is described by the document was provided period : Period [0..1] The kind of facility where the patient was seen facilityType : CodeableConcept [0..1] « XDS Facility Type. (Strength=Example) Facility Type Code Value Set ?? » This property may convey specifics about the practice setting where the content was created, often reflecting the clinical specialty practiceSetting : CodeableConcept [0..1] « Additional details about where the content was created (e.g. clinical specialty). (Strength=Example) Practice Setting Code Value S... ?? » The Patient Information as known when the document was published. May be a reference to a version specific, or contained sourcePatientInfo : Reference [0..1] « Patient » Related Related identifier to this DocumentReference. If both id and ref are present they shall refer to the same thing identifier : Identifier [0..1] Related Resource to this DocumentReference. If both id and ref are present they shall refer to the same thing ref : Reference [0..1] « Any » An actor taking an active role in the document agent [0..*] Relationships that this document has with other document references that already exist (this element modifies the meaning of other elements) relatesTo [0..*] The document and format referenced. There may be multiple content element repetitions, each with a different format content [1..*] Related identifiers or resources associated with the DocumentReference related [0..*] The clinical context in which the document was prepared context [0..1]

XML Template

<

<DocumentReference xmlns="http://hl7.org/fhir"> doco

 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <masterIdentifier><!-- 0..1 Identifier Master Version Specific Identifier --></masterIdentifier>
 <identifier><!-- 0..* Identifier Other identifiers for the document --></identifier>
 <
 <
 <</type>

 <status value="[code]"/><!-- 1..1 current | superseded | entered-in-error -->
 <docStatus value="[code]"/><!-- 0..1 preliminary | final | appended | amended | entered-in-error -->
 <type><!-- 0..1 CodeableConcept Kind of document (LOINC if possible) --></type>

 <class><!-- 0..1 CodeableConcept Categorization of document --></class>
 <subject><!-- 0..1 Reference(Patient|Practitioner|Group|Device) Who/what is the subject of the document --></subject>
 <
 <
 <|
   </author>

 <created value="[dateTime]"/><!-- 0..1 Document creation time -->
 <date value="[instant]"/><!-- 0..1 When this document reference was created -->
 <agent>  <!-- 0..* Agent involved -->
  <type><!-- 0..1 CodeableConcept How agent participated --></type>
  <who><!-- 1..1 Reference(Practitioner|PractitionerRole|Organization|Device|
    Patient|RelatedPerson) Who and/or what authored the document --></who>

 </agent>

 <authenticator><!-- 0..1 Reference(Practitioner|Organization) Who/what authenticated the document --></authenticator>
 <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="[string]"/><!-- 0..1 Human-readable description (title) -->

 <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>
 </content>
 <context>  <!-- 0..1 Clinical context of document -->
  <encounter><!-- 0..1 Reference(Encounter) Context of the document  content --></encounter>
  <</event>

  <event><!-- 0..* CodeableConcept Main clinical acts documented --></event>

  <period><!-- 0..1 Period Time of service that is being documented --></period>
  <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>
  <sourcePatientInfo><!-- 0..1 Reference(Patient) Patient demographics from source --></sourcePatientInfo>
  <related>  <!-- 0..* Related identifiers or resources -->
   <identifier><!-- 0..1 Identifier Identifier of related objects or events --></identifier>
   <ref><!-- 0..1 Reference(Any) Related Resource --></ref>
  </related>
 </context>
</DocumentReference>

JSON Template

{doco
  "resourceType" : "",

  "resourceType" : "DocumentReference",

  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "
  "
  "
  "
  "
  "
  "
  "
  "
  "|
   
  "
  "
  "
    "
    "

  "masterIdentifier" : { Identifier }, // Master Version Specific Identifier
  "identifier" : [{ Identifier }], // Other identifiers for the document
  "status" : "<code>", // R!  current | superseded | entered-in-error
  "docStatus" : "<code>", // preliminary | final | appended | amended | entered-in-error
  "type" : { CodeableConcept }, // Kind of document (LOINC if possible)
  "class" : { CodeableConcept }, // Categorization of document
  "subject" : { Reference(Patient|Practitioner|Group|Device) }, // Who/what is the subject of the document
  "created" : "<dateTime>", // Document creation time
  "date" : "<instant>", // When this document reference was created
  "agent" : [{ // Agent involved
    "type" : { CodeableConcept }, // How agent participated
    "who" : { Reference(Practitioner|PractitionerRole|Organization|Device|
    Patient|RelatedPerson) } // R!  Who and/or what authored the document
  }],
  "
  "
  "
    "
    "

  "authenticator" : { Reference(Practitioner|Organization) }, // Who/what authenticated the document
  "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" : "<string>", // Human-readable description (title)
  "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
  }],
  "context" : { // Clinical context of document
    "encounter" : { Reference(Encounter) }, // Context of the document  content
    "event" : [{ CodeableConcept }], // Main clinical acts documented
    "period" : { Period }, // Time of service that is being documented
    "facilityType" : { CodeableConcept }, // Kind of facility where patient was seen
    "practiceSetting" : { CodeableConcept }, // Additional details about where the content was created (e.g. clinical specialty)
    "sourcePatientInfo" : { Reference(Patient) }, // Patient demographics from source
    "related" : [{ // Related identifiers or resources
      "identifier" : { Identifier }, // Identifier of related objects or events
      "ref" : { Reference(Any) } // Related Resource

    }]
  }
}

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.masterIdentifier [ Identifier ]; # 0..1 Master Version Specific Identifier
  fhir:DocumentReference.identifier [ Identifier ], ... ; # 0..* Other identifiers for the document
  fhir:DocumentReference.status [ code ]; # 1..1 current | superseded | entered-in-error
  fhir:DocumentReference.docStatus [ code ]; # 0..1 preliminary | final | appended | amended | entered-in-error
  fhir:

  fhir:DocumentReference.type [ CodeableConcept ]; # 0..1 Kind of document (LOINC if possible)

  fhir:DocumentReference.class [ CodeableConcept ]; # 0..1 Categorization of document
  fhir:DocumentReference.subject [ Reference(Patient|Practitioner|Group|Device) ]; # 0..1 Who/what is the subject of the document
  fhir:DocumentReference.created [ dateTime ]; # 0..1 Document creation time
  fhir:
  fhir:

  fhir:DocumentReference.date [ instant ]; # 0..1 When this document reference was created
  fhir:DocumentReference.agent [ # 0..* Agent involved
    fhir:DocumentReference.agent.type [ CodeableConcept ]; # 0..1 How agent participated
    fhir:DocumentReference.agent.who [ Reference(Practitioner|PractitionerRole|Organization|Device|Patient|RelatedPerson) ]; # 1..1 Who and/or what authored the document
  ], ...;

  fhir:DocumentReference.authenticator [ Reference(Practitioner|Organization) ]; # 0..1 Who/what authenticated 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 [ code ]; # 1..1 replaces | transforms | signs | appends
    fhir:DocumentReference.relatesTo.target [ Reference(DocumentReference) ]; # 1..1 Target of the relationship
  ], ...;
  fhir:DocumentReference.description [ string ]; # 0..1 Human-readable description (title)
  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.context [ # 0..1 Clinical context of document
    fhir:DocumentReference.context.encounter [ Reference(Encounter) ]; # 0..1 Context of the document  content
    fhir:

    fhir:DocumentReference.context.event [ CodeableConcept ], ... ; # 0..* Main clinical acts documented

    fhir:DocumentReference.context.period [ Period ]; # 0..1 Time of service that is being documented
    fhir:DocumentReference.context.facilityType [ CodeableConcept ]; # 0..1 Kind of facility where patient was seen
    fhir:DocumentReference.context.practiceSetting [ CodeableConcept ]; # 0..1 Additional details about where the content was created (e.g. clinical specialty)
    fhir:DocumentReference.context.sourcePatientInfo [ Reference(Patient) ]; # 0..1 Patient demographics from source
    fhir:DocumentReference.context.related [ # 0..* Related identifiers or resources
      fhir:DocumentReference.context.related.identifier [ Identifier ]; # 0..1 Identifier of related objects or events
      fhir:DocumentReference.context.related.ref [ Reference(Any) ]; # 0..1 Related Resource
    ], ...;
  ];
]

Changes since DSTU2 R3

DocumentReference
DocumentReference.docStatus DocumentReference.type
  • Type Min Cardinality changed from CodeableConcept 1 to code 0
DocumentReference.content.format DocumentReference.date
  • Max Cardinality changed from * to 1 Added Element
DocumentReference.agent
  • Added Element
DocumentReference.agent.type
  • Added Element
DocumentReference.agent.who
  • Added Element
DocumentReference.indexed
  • deleted
DocumentReference.author
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON .

See R2 <--> R3 Conversion Maps (status = 1 test that all execute ok. 1 fail round-trip testing and all r3 resources are valid.). Note: these have note yet been updated to be R3 to R4

Structure

Name Flags Card. Type Description & Constraints doco
. . DocumentReference TU DomainResource A reference to a document
Elements defined in Ancestors: id , meta , implicitRules , language , text , contained , extension , modifierExtension
. . . masterIdentifier Σ 0..1 Identifier Master Version Specific Identifier
. . . identifier Σ 0..* Identifier Other identifiers for the document
. . . status ?! Σ 1..1 code current | superseded | entered-in-error
DocumentReferenceStatus ( Required )
. . . docStatus Σ 0..1 code preliminary | final | appended | amended | entered-in-error
CompositionStatus ( Required )
. . . type Σ 1..1 0..1 CodeableConcept Kind of document (LOINC if possible)
Document Type Value Set ( Preferred )
. . . class Σ 0..1 CodeableConcept Categorization of document
Document Class Value Set ( Example )
. . . subject Σ 0..1 Reference ( Patient | Practitioner | Group | Device ) Who/what is the subject of the document
. . . created Σ 0..1 dateTime Document creation time
. . . indexed date Σ 1..1 0..1 instant When this document reference was created
. . author . agent Σ 0..* BackboneElement Agent involved
.... type Σ 0..1 CodeableConcept How agent participated
ParticipationRoleType ( Extensible )
.... who Σ 1..1 Reference ( Practitioner | PractitionerRole | Organization | Device | Patient | RelatedPerson ) Who and/or what authored the document
. . . authenticator Σ 0..1 Reference ( Practitioner | Organization ) Who/what authenticated the document
. . . custodian Σ 0..1 Reference ( Organization ) Organization which maintains the document
. . . relatesTo ?! Σ 0..* BackboneElement Relationships to other documents
. . . . code Σ 1..1 code replaces | transforms | signs | appends
DocumentRelationshipType ( Required )
. . . . target Σ 1..1 Reference ( DocumentReference ) Target of the relationship
. . . description Σ 0..1 string Human-readable description (title)
. . . securityLabel Σ 0..* CodeableConcept Document security-tags
All Security Labels ( Extensible )
. . . content Σ 1..* BackboneElement Document referenced
. . . . attachment Σ 1..1 Attachment Where to access the document
. . . . format Σ 0..1 Coding Format/content rules for the document
DocumentReference Format Code Set ( Preferred )
. . . context Σ 0..1 BackboneElement Clinical context of document
. . . . encounter Σ 0..1 Reference ( Encounter ) Context of the document content
. . . . event Σ 0..* CodeableConcept Main clinical acts documented
v3 Code System ActCode ( Example )
. . . . period Σ 0..1 Period Time of service that is being documented
. . . . facilityType Σ 0..1 CodeableConcept Kind of facility where patient was seen
Facility Type Code Value Set ( Example )
. . . . practiceSetting Σ 0..1 CodeableConcept Additional details about where the content was created (e.g. clinical specialty)
Practice Setting Code Value Set ( Example )
. . . . sourcePatientInfo Σ 0..1 Reference ( Patient ) Patient demographics from source
. . . . related Σ 0..* BackboneElement Related identifiers or resources
. . . . . identifier Σ 0..1 Identifier Identifier of related objects or events
. . . . . ref Σ 0..1 Reference ( Any ) Related Resource

doco Documentation for this format

UML Diagram ( Legend )

DocumentReference ( DomainResource ) 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 document masterIdentifier : Identifier [0..1] Other identifiers associated with the document, including version independent identifiers identifier : Identifier [0..*] The status of this document reference (this element modifies the meaning of other elements) status : code [1..1] « The status of the document reference. (Strength=Required) DocumentReferenceStatus ! » The status of the underlying document docStatus : code [0..1] « Status of the underlying document. (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 referenced type : CodeableConcept [1..1] [0..1] « Precise type of clinical document. (Strength=Preferred) Document Type Value Set ? » 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.type class : CodeableConcept [0..1] « High-level kind of a clinical document at a macro level. (Strength=Example) Document Class Value Set ?? » 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 » When the document was created created : dateTime [0..1] When the document reference was created indexed date : instant [1..1] [0..1] Identifies who is responsible for adding the information to the document author : Reference [0..*] Practitioner | Organization | Device | Patient | RelatedPerson Which person or organization authenticates that this document is valid authenticator : Reference [0..1] « Practitioner | Organization » Identifies the organization or group who is responsible for ongoing maintenance of and access to the document custodian : Reference [0..1] « Organization » Human-readable description of the source document. This is sometimes known as the "title" "title" description : string [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" "reference" to the document, while DocumentReference.securityLabel contains a snapshot of the security labels on the document the reference refers to securityLabel : CodeableConcept [0..*] « Security Labels from the Healthcare Privacy and Security Classification System. (Strength=Extensible) All Security Labels + » Agent Specification of the participation type the agent played type : CodeableConcept [0..1] « The Participation type of the agent to the event (Strength=Extensible) ParticipationRoleType + » Identifies who is responsible for adding the information to the document who : Reference [1..1] « Practitioner | PractitionerRole | Organization | Device | Patient | RelatedPerson » RelatesTo The type of relationship that this document has with anther document code : code [1..1] « The type of relationship between documents. (Strength=Required) DocumentRelationshipType ! » The target document of this relationship target : Reference [1..1] « DocumentReference » Content The document or URL of the document along with critical metadata to prove content has integrity attachment : Attachment [1..1] An identifier of the document encoding, structure, and template that the document conforms to beyond the base format indicated in the mimeType format : Coding [0..1] « Document Format Codes. (Strength=Preferred) DocumentReference Format Code... ? » Context Describes the clinical encounter or type of care that the document content is associated with encounter : Reference [0..1] « 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 typeCode, type code, such as a "History "History and Physical Report" Report" in which the procedure being documented is necessarily a "History "History and Physical" Physical" act event : CodeableConcept [0..*] « This list of codes represents the main clinical acts being documented. (Strength=Example) v3 Code System ActCode ?? » The time period over which the service that is described by the document was provided period : Period [0..1] The kind of facility where the patient was seen facilityType : CodeableConcept [0..1] « XDS Facility Type. (Strength=Example) Facility Type Code Value Set ?? » This property may convey specifics about the practice setting where the content was created, often reflecting the clinical specialty practiceSetting : CodeableConcept [0..1] « Additional details about where the content was created (e.g. clinical specialty). (Strength=Example) Practice Setting Code Value S... ?? » The Patient Information as known when the document was published. May be a reference to a version specific, or contained sourcePatientInfo : Reference [0..1] « Patient » Related Related identifier to this DocumentReference. If both id and ref are present they shall refer to the same thing identifier : Identifier [0..1] Related Resource to this DocumentReference. If both id and ref are present they shall refer to the same thing ref : Reference [0..1] « Any » An actor taking an active role in the document agent [0..*] Relationships that this document has with other document references that already exist (this element modifies the meaning of other elements) relatesTo [0..*] The document and format referenced. There may be multiple content element repetitions, each with a different format content [1..*] Related identifiers or resources associated with the DocumentReference related [0..*] The clinical context in which the document was prepared context [0..1]

XML Template

<

<DocumentReference xmlns="http://hl7.org/fhir"> doco

 <!-- from Resource: id, meta, implicitRules, and language -->
 <!-- from DomainResource: text, contained, extension, and modifierExtension -->
 <masterIdentifier><!-- 0..1 Identifier Master Version Specific Identifier --></masterIdentifier>
 <identifier><!-- 0..* Identifier Other identifiers for the document --></identifier>
 <
 <
 <</type>

 <status value="[code]"/><!-- 1..1 current | superseded | entered-in-error -->
 <docStatus value="[code]"/><!-- 0..1 preliminary | final | appended | amended | entered-in-error -->
 <type><!-- 0..1 CodeableConcept Kind of document (LOINC if possible) --></type>

 <class><!-- 0..1 CodeableConcept Categorization of document --></class>
 <subject><!-- 0..1 Reference(Patient|Practitioner|Group|Device) Who/what is the subject of the document --></subject>
 <
 <
 <|
   </author>

 <created value="[dateTime]"/><!-- 0..1 Document creation time -->
 <date value="[instant]"/><!-- 0..1 When this document reference was created -->
 <agent>  <!-- 0..* Agent involved -->
  <type><!-- 0..1 CodeableConcept How agent participated --></type>
  <who><!-- 1..1 Reference(Practitioner|PractitionerRole|Organization|Device|
    Patient|RelatedPerson) Who and/or what authored the document --></who>

 </agent>

 <authenticator><!-- 0..1 Reference(Practitioner|Organization) Who/what authenticated the document --></authenticator>
 <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="[string]"/><!-- 0..1 Human-readable description (title) -->

 <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>
 </content>
 <context>  <!-- 0..1 Clinical context of document -->
  <encounter><!-- 0..1 Reference(Encounter) Context of the document  content --></encounter>
  <</event>

  <event><!-- 0..* CodeableConcept Main clinical acts documented --></event>

  <period><!-- 0..1 Period Time of service that is being documented --></period>
  <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>
  <sourcePatientInfo><!-- 0..1 Reference(Patient) Patient demographics from source --></sourcePatientInfo>
  <related>  <!-- 0..* Related identifiers or resources -->
   <identifier><!-- 0..1 Identifier Identifier of related objects or events --></identifier>
   <ref><!-- 0..1 Reference(Any) Related Resource --></ref>
  </related>
 </context>
</DocumentReference>

JSON Template

{doco
  "resourceType" : "",

  "resourceType" : "DocumentReference",

  // from Resource: id, meta, implicitRules, and language
  // from DomainResource: text, contained, extension, and modifierExtension
  "
  "
  "
  "
  "
  "
  "
  "
  "
  "|
   
  "
  "
  "
    "
    "

  "masterIdentifier" : { Identifier }, // Master Version Specific Identifier
  "identifier" : [{ Identifier }], // Other identifiers for the document
  "status" : "<code>", // R!  current | superseded | entered-in-error
  "docStatus" : "<code>", // preliminary | final | appended | amended | entered-in-error
  "type" : { CodeableConcept }, // Kind of document (LOINC if possible)
  "class" : { CodeableConcept }, // Categorization of document
  "subject" : { Reference(Patient|Practitioner|Group|Device) }, // Who/what is the subject of the document
  "created" : "<dateTime>", // Document creation time
  "date" : "<instant>", // When this document reference was created
  "agent" : [{ // Agent involved
    "type" : { CodeableConcept }, // How agent participated
    "who" : { Reference(Practitioner|PractitionerRole|Organization|Device|
    Patient|RelatedPerson) } // R!  Who and/or what authored the document
  }],
  "
  "
  "
    "
    "

  "authenticator" : { Reference(Practitioner|Organization) }, // Who/what authenticated the document
  "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" : "<string>", // Human-readable description (title)
  "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
  }],
  "context" : { // Clinical context of document
    "encounter" : { Reference(Encounter) }, // Context of the document  content
    "event" : [{ CodeableConcept }], // Main clinical acts documented
    "period" : { Period }, // Time of service that is being documented
    "facilityType" : { CodeableConcept }, // Kind of facility where patient was seen
    "practiceSetting" : { CodeableConcept }, // Additional details about where the content was created (e.g. clinical specialty)
    "sourcePatientInfo" : { Reference(Patient) }, // Patient demographics from source
    "related" : [{ // Related identifiers or resources
      "identifier" : { Identifier }, // Identifier of related objects or events
      "ref" : { Reference(Any) } // Related Resource

    }]
  }
}

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.masterIdentifier [ Identifier ]; # 0..1 Master Version Specific Identifier
  fhir:DocumentReference.identifier [ Identifier ], ... ; # 0..* Other identifiers for the document
  fhir:DocumentReference.status [ code ]; # 1..1 current | superseded | entered-in-error
  fhir:DocumentReference.docStatus [ code ]; # 0..1 preliminary | final | appended | amended | entered-in-error
  fhir:

  fhir:DocumentReference.type [ CodeableConcept ]; # 0..1 Kind of document (LOINC if possible)

  fhir:DocumentReference.class [ CodeableConcept ]; # 0..1 Categorization of document
  fhir:DocumentReference.subject [ Reference(Patient|Practitioner|Group|Device) ]; # 0..1 Who/what is the subject of the document
  fhir:DocumentReference.created [ dateTime ]; # 0..1 Document creation time
  fhir:
  fhir:

  fhir:DocumentReference.date [ instant ]; # 0..1 When this document reference was created
  fhir:DocumentReference.agent [ # 0..* Agent involved
    fhir:DocumentReference.agent.type [ CodeableConcept ]; # 0..1 How agent participated
    fhir:DocumentReference.agent.who [ Reference(Practitioner|PractitionerRole|Organization|Device|Patient|RelatedPerson) ]; # 1..1 Who and/or what authored the document
  ], ...;

  fhir:DocumentReference.authenticator [ Reference(Practitioner|Organization) ]; # 0..1 Who/what authenticated 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 [ code ]; # 1..1 replaces | transforms | signs | appends
    fhir:DocumentReference.relatesTo.target [ Reference(DocumentReference) ]; # 1..1 Target of the relationship
  ], ...;
  fhir:DocumentReference.description [ string ]; # 0..1 Human-readable description (title)
  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.context [ # 0..1 Clinical context of document
    fhir:DocumentReference.context.encounter [ Reference(Encounter) ]; # 0..1 Context of the document  content
    fhir:

    fhir:DocumentReference.context.event [ CodeableConcept ], ... ; # 0..* Main clinical acts documented

    fhir:DocumentReference.context.period [ Period ]; # 0..1 Time of service that is being documented
    fhir:DocumentReference.context.facilityType [ CodeableConcept ]; # 0..1 Kind of facility where patient was seen
    fhir:DocumentReference.context.practiceSetting [ CodeableConcept ]; # 0..1 Additional details about where the content was created (e.g. clinical specialty)
    fhir:DocumentReference.context.sourcePatientInfo [ Reference(Patient) ]; # 0..1 Patient demographics from source
    fhir:DocumentReference.context.related [ # 0..* Related identifiers or resources
      fhir:DocumentReference.context.related.identifier [ Identifier ]; # 0..1 Identifier of related objects or events
      fhir:DocumentReference.context.related.ref [ Reference(Any) ]; # 0..1 Related Resource
    ], ...;
  ];
]

Changes since DSTU2

DocumentReference
DocumentReference.docStatus DocumentReference.type
  • Type Min Cardinality changed from CodeableConcept 1 to code 0
DocumentReference.content.format DocumentReference.date
  • Max Cardinality changed from * to 1 Added Element
DocumentReference.agent
  • Added Element
DocumentReference.agent.type
  • Added Element
DocumentReference.agent.who
  • Added Element
DocumentReference.indexed
  • deleted
DocumentReference.author
  • deleted

See the Full Difference for further information

This analysis is available as XML or JSON .

See R2 <--> R3 Conversion Maps (status = 1 test that all execute ok. 1 fail round-trip testing and all r3 resources are valid.). Note: these have note yet been updated to be R3 to R4

 

Alternate definitions: Master Definition ( XML , + JSON ), , XML Schema / Schematron (for ) + JSON Schema , ShEx (for Turtle ) + see the extensions & the dependency analysis

Path Definition Type Reference
DocumentReference.status The status of the document reference. Required DocumentReferenceStatus
DocumentReference.docStatus Status of the underlying document. Required CompositionStatus
DocumentReference.type Precise type of clinical document. Preferred Document Type Value Set
DocumentReference.class High-level kind of a clinical document at a macro level. Example Document Class Value Set
DocumentReference.agent.type The Participation type of the agent to the event Extensible ParticipationRoleType
DocumentReference.relatesTo.code The type of relationship between documents. Required DocumentRelationshipType
DocumentReference.securityLabel Security Labels from the Healthcare Privacy and Security Classification System. Extensible All Security Labels
DocumentReference.content.format Document Format Codes. Preferred DocumentReference Format Code Set
DocumentReference.context.event This list of codes represents the main clinical acts being documented. Example v3 Code System ActCode
DocumentReference.context.facilityType XDS Facility Type. Example Facility Type Code Value Set
DocumentReference.context.practiceSetting Additional details about where the content was created (e.g. clinical specialty). Example Practice Setting Code Value Set

  • 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

A client can ask a server to generate a document reference from a document. The server reads the existing document and generates a matching DocumentReference resource, or returns one it has previously generated. Servers may be able to return or generate document references for the following types of content:

Type Comments
FHIR Documents The uri refers to an existing Document
CDA Document The uri is a reference to a Binary end-point that returns either a CDA document, or some kind of CDA Package that the server knows how to process (e.g., an IHE .zip)
Other The server can be asked to generate a document reference for other kinds of documents. For some of these documents (e.g., PDF documents) a server could only provide a document reference if it already existed or the server had special knowledge of the document.

The server either returns a search result containing a single document reference, or it returns an error. If the URI refers to another server, it is at the discretion of the server whether to retrieve it or return an error.

The operation is initiated by a named query, using _query=generate on the /DocumentReference end-point:

  GET [service-url]/DocumentReference/?_query=generate&uri=:url&...

The "uri" "uri" parameter is a relative or absolute reference to one of the document types described above. Other parameters may be supplied:

Name Meaning
persist Whether to store the document at the document end-point (/Document) or not, once it is generated. Value = true or false (default is for the server to decide).

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

Name Type Description Expression In Common
authenticator agent reference Who/what authenticated Who and/or what authored the document DocumentReference.authenticator DocumentReference.agent.who
( Practitioner , Organization , Device , Patient , PractitionerRole , RelatedPerson )
author authenticator reference Who and/or what authored Who/what authenticated the document DocumentReference.author DocumentReference.authenticator
( Practitioner , Organization , Device , Patient , RelatedPerson )
class token Categorization of document DocumentReference.class
contenttype token Mime type of the content, with charset etc. DocumentReference.content.attachment.contentType
created date Document creation time DocumentReference.created
custodian reference Organization which maintains the document DocumentReference.custodian
( Organization )
date date When this document reference was created DocumentReference.date
description string Human-readable description (title) DocumentReference.description
encounter reference Context of the document content DocumentReference.context.encounter
( Encounter )
12 Resources
event token Main clinical acts documented DocumentReference.context.event
facility token Kind of facility where patient was seen DocumentReference.context.facilityType
format token Format/content rules for the document DocumentReference.content.format
identifier token Master Version Specific Identifier DocumentReference.masterIdentifier | DocumentReference.identifier 26 Resources
indexed date When this document reference was created DocumentReference.indexed language token Human language of the content (BCP-47) DocumentReference.content.attachment.language
location uri Uri where the data can be found DocumentReference.content.attachment.url
patient reference Who/what is the subject of the document DocumentReference.subject
( Patient )
31 29 Resources
period date Time of service that is being documented DocumentReference.context.period
related-id token Identifier of related objects or events DocumentReference.context.related.identifier
related-ref reference Related Resource DocumentReference.context.related.ref
(Any)
relatesto reference Target of the relationship DocumentReference.relatesTo.target
( DocumentReference )
relation token replaces | transforms | signs | appends DocumentReference.relatesTo.code
relationship composite Combination of relation and relatesTo DocumentReference.relatesTo
securitylabel token Document security-tags DocumentReference.securityLabel
setting token Additional details about where the content was created (e.g. clinical specialty) DocumentReference.context.practiceSetting
status token current | superseded | entered-in-error DocumentReference.status
subject reference Who/what is the subject of the document DocumentReference.subject
( Practitioner , Group , Device , Patient )
type token Kind of document (LOINC if possible) DocumentReference.type 6 5 Resources