eHealth Infrastructure
2021.3.0 - build

eHealth Infrastructure - Local Development build (v2021.3.0). See the Directory of published versions

Resource Profile: ehealth-documentreference

Defining URL:http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-documentreference
Version:2021.3.0
Name:ehealth-documentreference
Status:Active as of 2021-11-25T09:32:14+00:00
Publisher:Systematic | Trifork
Source Resource:XML / JSON / Turtle

The official URL for this profile is:

http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-documentreference

Introduction

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 to refer to:

  • CDA documents in FHIR systems
  • FHIR documents stored elsewhere (i.e. registry/repository following the XDS model)
  • PDF documents , and even digital records of faxes where sufficient information is available
  • Other kinds of documents, such as records of prescriptions

Scope and Usage

In scope of the eHealth infrastructure the primary use of the DocumentReference resource is to contain or refer to information material used in relation to PlanDefinition and Questionnaire. This information material can be in the form of embedded material (of limited size) or references to videos, PDF-files or printed material.

See eHealth-plandefinition for further details.

Formal Views of Profile Content

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

This structure is derived from DocumentReference

NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference 0..*DocumentReferenceA reference to a document
... type 0..1CodeableConceptKind of document (LOINC if possible)
Binding: Document Type (required)
... category 0..1CodeableConceptCategorization of document
Binding: Document Class (required)
... subject 0..1Reference(ehealth-patient | ehealth-practitioner | Group | ehealth-device) {r}Who/what is the subject of the document
... authenticator 0..1Reference(ehealth-practitioner | ehealth-organization) {r}Who/what authenticated the document
... custodian 0..1Reference(ehealth-organization) {r}Organization which maintains the document
... relatesTo
.... target 1..1Reference(ehealth-documentreference)Target of the relationship
... content
.... format 0..1CodingFormat/content rules for the document
Binding: FormatCodes (required)
... context
.... event 0..*CodeableConceptMain clinical acts documented
Binding: Event Type Codes (required)
.... facilityType 0..1CodeableConceptKind of facility where patient was seen
Binding: Facility Type Codes (required)
.... practiceSetting 0..1CodeableConceptAdditional details about where the content was created (e.g. clinical specialty)
Binding: Practice Setting Codes (required)
.... sourcePatientInfo 0..1Reference(ehealth-patient)Patient demographics from source

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference 0..*DocumentReferenceA reference to a document
... id Σ0..1stringLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... masterIdentifier Σ0..1IdentifierMaster Version Specific Identifier
... identifier Σ0..*IdentifierOther identifiers for the document
... status ?!Σ1..1codecurrent | superseded | entered-in-error
Binding: DocumentReferenceStatus (required): The status of the document reference.

... docStatus Σ0..1codepreliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): Status of the underlying document.

... type Σ0..1CodeableConceptKind of document (LOINC if possible)
Binding: Document Type (required)
... category Σ0..1CodeableConceptCategorization of document
Binding: Document Class (required)
... subject Σ0..1Reference(ehealth-patient | ehealth-practitioner | Group | ehealth-device) {r}Who/what is the subject of the document
... date Σ0..1instantWhen this document reference was created
... author Σ0..*Reference(ehealth-practitioner | ehealth-organization | ehealth-device | ehealth-patient | ehealth-relatedperson) {r}Who and/or what authored the document
... authenticator 0..1Reference(ehealth-practitioner | ehealth-organization) {r}Who/what authenticated the document
... custodian 0..1Reference(ehealth-organization) {r}Organization which maintains the document
... relatesTo Σ0..*BackboneElementRelationships to other documents
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code Σ1..1codereplaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.

.... target Σ1..1Reference(ehealth-documentreference)Target of the relationship
... description Σ0..1stringHuman-readable description
... securityLabel Σ0..*CodeableConceptDocument security-tags
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


... content Σ1..*BackboneElementDocument referenced
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... attachment Σ1..1AttachmentWhere to access the document
.... format Σ0..1CodingFormat/content rules for the document
Binding: FormatCodes (required)
... context Σ0..1BackboneElementClinical context of document
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... encounter 0..*Reference(Encounter | EpisodeOfCare)Context of the document content
.... event 0..*CodeableConceptMain clinical acts documented
Binding: Event Type Codes (required)
.... period Σ0..1PeriodTime of service that is being documented
.... facilityType 0..1CodeableConceptKind of facility where patient was seen
Binding: Facility Type Codes (required)
.... practiceSetting 0..1CodeableConceptAdditional details about where the content was created (e.g. clinical specialty)
Binding: Practice Setting Codes (required)
.... sourcePatientInfo 0..1Reference(ehealth-patient)Patient demographics from source
.... related 0..*Reference(Resource)Related identifiers or resources

doco Documentation for this format

Differential View

This structure is derived from DocumentReference

NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference 0..*DocumentReferenceA reference to a document
... type 0..1CodeableConceptKind of document (LOINC if possible)
Binding: Document Type (required)
... category 0..1CodeableConceptCategorization of document
Binding: Document Class (required)
... subject 0..1Reference(ehealth-patient | ehealth-practitioner | Group | ehealth-device) {r}Who/what is the subject of the document
... authenticator 0..1Reference(ehealth-practitioner | ehealth-organization) {r}Who/what authenticated the document
... custodian 0..1Reference(ehealth-organization) {r}Organization which maintains the document
... relatesTo
.... target 1..1Reference(ehealth-documentreference)Target of the relationship
... content
.... format 0..1CodingFormat/content rules for the document
Binding: FormatCodes (required)
... context
.... event 0..*CodeableConceptMain clinical acts documented
Binding: Event Type Codes (required)
.... facilityType 0..1CodeableConceptKind of facility where patient was seen
Binding: Facility Type Codes (required)
.... practiceSetting 0..1CodeableConceptAdditional details about where the content was created (e.g. clinical specialty)
Binding: Practice Setting Codes (required)
.... sourcePatientInfo 0..1Reference(ehealth-patient)Patient demographics from source

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference 0..*DocumentReferenceA reference to a document
... id Σ0..1stringLogical id of this artifact
... meta Σ0..1MetaMetadata about the resource
... implicitRules ?!Σ0..1uriA set of rules under which this content was created
... text 0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension 0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!0..*ExtensionExtensions that cannot be ignored
... masterIdentifier Σ0..1IdentifierMaster Version Specific Identifier
... identifier Σ0..*IdentifierOther identifiers for the document
... status ?!Σ1..1codecurrent | superseded | entered-in-error
Binding: DocumentReferenceStatus (required): The status of the document reference.

... docStatus Σ0..1codepreliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): Status of the underlying document.

... type Σ0..1CodeableConceptKind of document (LOINC if possible)
Binding: Document Type (required)
... category Σ0..1CodeableConceptCategorization of document
Binding: Document Class (required)
... subject Σ0..1Reference(ehealth-patient | ehealth-practitioner | Group | ehealth-device) {r}Who/what is the subject of the document
... date Σ0..1instantWhen this document reference was created
... author Σ0..*Reference(ehealth-practitioner | ehealth-organization | ehealth-device | ehealth-patient | ehealth-relatedperson) {r}Who and/or what authored the document
... authenticator 0..1Reference(ehealth-practitioner | ehealth-organization) {r}Who/what authenticated the document
... custodian 0..1Reference(ehealth-organization) {r}Organization which maintains the document
... relatesTo Σ0..*BackboneElementRelationships to other documents
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code Σ1..1codereplaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.

.... target Σ1..1Reference(ehealth-documentreference)Target of the relationship
... description Σ0..1stringHuman-readable description
... securityLabel Σ0..*CodeableConceptDocument security-tags
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.


... content Σ1..*BackboneElementDocument referenced
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... attachment Σ1..1AttachmentWhere to access the document
.... format Σ0..1CodingFormat/content rules for the document
Binding: FormatCodes (required)
... context Σ0..1BackboneElementClinical context of document
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... encounter 0..*Reference(Encounter | EpisodeOfCare)Context of the document content
.... event 0..*CodeableConceptMain clinical acts documented
Binding: Event Type Codes (required)
.... period Σ0..1PeriodTime of service that is being documented
.... facilityType 0..1CodeableConceptKind of facility where patient was seen
Binding: Facility Type Codes (required)
.... practiceSetting 0..1CodeableConceptAdditional details about where the content was created (e.g. clinical specialty)
Binding: Practice Setting Codes (required)
.... sourcePatientInfo 0..1Reference(ehealth-patient)Patient demographics from source
.... related 0..*Reference(Resource)Related identifiers or resources

doco Documentation for this format

 

Other representations of profile: CSV, Excel, Schematron

Terminology Bindings

PathConformanceValueSet
DocumentReference.languagepreferredCommonLanguages
Max Binding: AllLanguages
DocumentReference.statusrequiredDocumentReferenceStatus
DocumentReference.docStatusrequiredCompositionStatus
DocumentReference.typerequiredDocumentType
DocumentReference.categoryrequiredDocumentClass
DocumentReference.relatesTo.coderequiredDocumentRelationshipType
DocumentReference.securityLabelextensibleAll Security Labels
DocumentReference.content.formatrequiredFormatCodes
DocumentReference.context.eventrequiredEventTypeCodes
DocumentReference.context.facilityTyperequiredFacilityTypeCodes
DocumentReference.context.practiceSettingrequiredPracticeSettingCodes

Constraints

IdPathDetailsRequirements
dom-2DocumentReferenceIf the resource is contained in another resource, it SHALL NOT contain nested Resources
: contained.contained.empty()
dom-3DocumentReferenceIf the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource
: contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().as(canonical) | %resource.descendants().as(uri) | %resource.descendants().as(url))) or descendants().where(reference = '#').exists() or descendants().where(as(canonical) = '#').exists() or descendants().where(as(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4DocumentReferenceIf a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated
: contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5DocumentReferenceIf a resource is contained in another resource, it SHALL NOT have a security label
: contained.meta.security.empty()
dom-6DocumentReferenceA resource should have narrative for robust management
: text.`div`.exists()
ele-1DocumentReference.metaAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.implicitRulesAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.textAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1DocumentReference.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1DocumentReference.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1DocumentReference.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1DocumentReference.masterIdentifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.statusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.docStatusAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.categoryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.subjectAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.dateAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.authorAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.authenticatorAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.custodianAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.relatesToAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.relatesTo.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1DocumentReference.relatesTo.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1DocumentReference.relatesTo.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1DocumentReference.relatesTo.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1DocumentReference.relatesTo.codeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.relatesTo.targetAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.descriptionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.securityLabelAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.contentAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.content.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1DocumentReference.content.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1DocumentReference.content.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1DocumentReference.content.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1DocumentReference.content.attachmentAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.content.formatAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.contextAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.context.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1DocumentReference.context.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1DocumentReference.context.modifierExtensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1DocumentReference.context.modifierExtensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1DocumentReference.context.encounterAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.context.eventAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.context.periodAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.context.facilityTypeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.context.practiceSettingAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.context.sourcePatientInfoAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.context.relatedAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())