eHealth Infrastructure
6.0.0 - release Denmark flag

eHealth Infrastructure, published by Den telemedicinske infrastruktur (eHealth Infrastructure). This guide is not an authorized publication; it is the continuous build for version 6.0.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/fut-infrastructure/implementation-guide/ and changes regularly. See the Directory of published versions

Resource Profile: ehealth-documentreference

Official URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-documentreference Version: 6.0.0
Active as of 2025-10-23 Computable Name: 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

The eHealth DocumentReference profile is primarily used for two purposes:

  1. To contain instructional material used in relation to PlanDefinition and Questionnaire.
  2. To refer to informational, instructional or clinical material files assignable to Patients and EpisodeOfCare.

Scope and Usage

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

Two different material domains exist in the infrastructure.

  1. Instructional Material, is used in relation to PlanDefinition and Questionnaire.
  2. Material for Citizens, is used in relation to Patient and EpisodeOfCare.

Instructional Material

Instructional Material, is 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.

The eHealth DocumentReference profile, when used for Instructional Material, makes use of the following extensions:

  • ehealth-useContext which defines the context for which the content is intended to support

Category

Instructional Material is stored in the Plan service. To create or update Instructional Material in the Plan service the DocumentReference.category code must be unpopulated. Otherwise, it will be interpreted as Material for Citizens.

UseContext

The element useContext.code has binding to the ValueSet http://hl7.org/fhir/ValueSet/use-context (see https://hl7.org/fhir/R4/valueset-use-context.html). It is, however, validated against the eHealth ValueSet ehealth-usage-context-type. This validation includes that the value in useContext.valueCodeableConcept is acceptable in the ValueSet described for useContext.code.

Material for Citizens

Material for Citizens, is used in relation to Patient and EpisodeOfCare. This material will always be referenced through a URL as it is either stored externally or internally in the infrastructure. Depending on the nature of the material it will fall into two distinct sub-categories.

  • Patient-Specific Material, is material that contains sensitive information about a specific patient.
  • Generic Material, is material that has no sensitive information about a specific patient and is broadly relevant and/or applicable to multiple patients.

Material for Citizens is stored in the CarePlan and Plan services. Patient-Specific Material is stored in the CarePlan service while Generic Material is stored in the Plan service.

The eHealth DocumentReference profile, when used for Material for Citizens, makes use of the following extensions:

  • ehealth-useContext, which defines the context that the content is intended to support.
  • ehealth-modifier-role, defining the organizational role in regard to the content (Required for Material for Citizens, but optional for Instructional Material).
  • ehealth-intendedOrganization, the organizations that are allowed to access the material.
  • ehealth-artifact-date, the date when the content field was last changed.
  • ehealth-participant, the Practitioner or CareTeam that has contributed to the content.
  • ehealth-usage, clinical description of the content.
  • ehealth-version, version of the content.

Category

For storage of Generic Material in the Plan service the DocumentReference.category must be populated with generic-material. Otherwise, it will be interpreted as Instructional Material.
For storage of Patient-Specific Material in the CarePlan service the DocumentReference.category must be populated with the code patient-specific-material.
If the code indicates a different material category than what the service stores (e.g. using patient-specific-material when registering Generic Material on the Plan service), it will be rejected.
The category code is immutable after creation.

Subject

For Patient-Specific Material the DocumentReference.subject must be populated with a reference to the Patient the material is relevant for. Conversely, for Generic Material DocumentReference.subject must be unpopulated.

EpisodeOfCare

The related EpisodeOfCare is referenced through the DocumentReference.context.encounter element. Which is allowed to have at most one entry.
For Patient-Specific Material the DocumentReference.context.encounter must be populated with a reference to the EpisodeOfCare the material is relevant for. Conversely, for Generic Material DocumentReference.context.encounter must be unpopulated.

Content

DocumentReference.content must have exactly one entry.
When creating the DocumentReference in the infrastructure either DocumentReference.content.attachment.data or DocumentReference.content.attachment.url element must be populated. If both are populated it will be rejected:

  • If providing DocumentReference.content.attachment.data, it will be decoded and uploaded to the infrastructure's Storage-Service, after which the .data field is cleared and the .url set to download location of the uploaded content.
  • If providing DocumentReference.content.attachment.url, it is possible to manually perform the upload to the Storage-Service beforehand and set the .url to the download location of the uploaded content. For Generic Material in the Plan service, it is also possible to provide an external URL (A URL for a resource/file outside the eHealth infrastructure).

DocumentReference.content.attachment.contentType must be populated with the mime-type of the content as the value is passed on to the Storage-Service. The Storage-Service uses it for validation on download requests to ensure that user's accept-header matches the contentType they are downloading. This is also the case if the upload is performed manually beforehand. Then the used contentType from the manual upload should be the same as the one provided in DocumentReference.content.attachment.contentType.

If uploading directly to the Storage-Service instead of going through either the Plan or CarePlan service, it is important to note the difference between uploading Patient-Specific Material and Generic Material:

  • For Patient-Specific Material one must supply the episodeOfCareReference and patientReference parameters as this indicates to the service that the content is sensitive and must be encrypted. Additionally, not supplying them will cause a validation mismatch in the CarePlan service when creating the DocumentReference as they are validated against the Patient and EpisodeOfCare references in the DocumentReference.
  • For Generic Material the episodeOfCareReference and patientReference parameters must not be supplied as the content is not sensitive and therefore does not require encryption. Additionally, supplying them will cause a validation mismatch in the Plan service when creating the DocumentReference as they are validated to be empty.

After creation of a DocumentReference, when trying to update it:

  • If the DocumentReference.content.attachment.url is a URL in the Storage-Service, it is not possible to update the DocumentReference.content.attachment.url field after creation. However, it is possible to update the uploaded content through the DocumentReference.content.attachment.data field. To do so both the DocumentReference.content.attachment.data and DocumentReference.content.attachment.url fields must be populated for the update. The content in the .data field will be decoded and uploaded to the Storage-Service URL in .url overwriting the content that was there before. The .data field is cleared after upload and only the .url remains in the DocumentReference.
  • If the DocumentReference.content.attachment.url is set to an external URL, it is allowed to update the DocumentReference.content.attachment.url field after creation. However, it is not allowed to change it to a Storage-Service URL or add data to the DocumentReference.content.attachment.data field.

It is also possible to update the uploaded content directly at the Storage-Service without going through the Plan or CarePlan service. The url of the content will not change, and therefore there is no need to update the Storage-Service URL stored in the DocumentReference. One should note that the episodeOfCareReference and patientReference parameters are required to match the existing content, it is not possible to change from Patient-Specific Material to Generic Material or vice versa.

ModifierRole

This extension is mandatory for Material for Citizens. However, for Instructional Material this extension is optional and not used for any validation. Specifically for Generic Material it is the basis for validation of the user's organizational context.

IntendedOrganization

Used to indicate the organizations that might have an interest in accessing the material. However, not the basis of any validation.

ArtifactDate

In the case of Material for Citizens, this extension is maintained by the infrastructure. When DocumentReference.content is created or updated the date is updated. However, for Instructional Material the extension is optional and there is no automatic maintenance of the date.

Participant

Used to indicate the Practitioner or CareTeam that has contributed to the content, either as author or editor as defined by the ValueSet material-registration-participant-function.

Usage

Allows the user to provide a clinical description of the content for the clinicians, while the DocumentReference.decription is intended as a description of the content understandable by citizens.

Version

Allows the user to maintain a version of the content. The infrastructure does not maintain or interpret this extension.

Usages:

You can also check for usages in the FHIR IG Statistics

Formal Views of Profile Content

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

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference C 0..* DocumentReference A reference to a document
Constraints: modifierRole-required-for-material-registration
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:useContext 0..* UsageContext The context that the content is intended to support
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-useContext
.... extension:modifierRole 0..* (Complex) Modifier role
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-modifier-role
.... extension:intendedOrganization 0..* Reference(ehealth-organization) {r} The organization intended to use this resource.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-intendedOrganization
.... extension:artifactDate 0..1 dateTime Date last changed.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-artifact-date
.... extension:participant 0..* (Complex) Who or what is participating
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-participant
..... Slices for extension Content/Rules for all slices
...... extension:function 0..1 Extension Extension
....... extension 0..0
....... url 1..1 uri "function"
....... value[x] 0..1 Coding Value of extension
Binding: Material Registration Participant Function (required)
...... extension:actor 0..1 Extension The participant
....... extension 0..0
....... url 1..1 uri "actor"
...... extension:actorref 0..1 Extension The participant ref (string)
....... extension 0..0
....... url 1..1 uri "actorref"
..... url 1..1 uri "http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-participant"
.... extension:usage 0..1 string usage
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-usage
.... extension:version 0..1 string The current version
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-version
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... type Σ 0..1 CodeableConcept Kind of document (LOINC if possible)
Binding: EHealthDocumentReference Type (required)
... category Σ 0..1 CodeableConcept Categorization of document
Binding: Document Category (required)
... subject Σ 0..1 Reference(ehealth-patient | ehealth-practitioner | Group | ehealth-device) {r} Who/what is the subject of the document
... author Σ 0..* Reference(ehealth-practitioner | ehealth-organization | ehealth-device | ehealth-patient | ehealth-relatedperson) {r} Who and/or what authored the document
... authenticator 0..1 Reference(ehealth-practitioner | ehealth-organization) {r} Who/what authenticated the document
... custodian 0..1 Reference(ehealth-organization) {r} Organization which maintains the document
... content Σ 1..* BackboneElement Document referenced
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... attachment Σ 1..1 Attachment Where to access the document

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DocumentReference.extension:participant.​extension:function.value[x] Base required Material Registration Participant Function 📦6.0.0 This IG
DocumentReference.status Base required DocumentReferenceStatus 📍4.0.1 FHIR Std.
DocumentReference.type Base required EHealthDocumentReference Type 📦6.0.0 This IG
DocumentReference.category Base required Document Category 📦6.0.0 This IG

Constraints

Id Grade Path(s) Description Expression
dom-2 error DocumentReference If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error DocumentReference If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().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-4 error DocumentReference If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error DocumentReference If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice DocumentReference A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
modifierRole-required-for-material-registration error DocumentReference 'ehealth-modifier-role' extension is required when category code is 'general-material' or 'patient-specific-material' category.coding.exists(system = 'http://ehealth.sundhed.dk/cs/material-category' and (code = 'general-material' or code = 'patient-specific-material')) implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-modifier-role').exists()

This structure is derived from DocumentReference

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference C 0..* DocumentReference A reference to a document
Constraints: modifierRole-required-for-material-registration
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:useContext 0..* UsageContext The context that the content is intended to support
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-useContext
.... extension:modifierRole 0..* (Complex) Modifier role
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-modifier-role
.... extension:intendedOrganization 0..* Reference(ehealth-organization) {r} The organization intended to use this resource.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-intendedOrganization
.... extension:artifactDate 0..1 dateTime Date last changed.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-artifact-date
.... extension:participant 0..* (Complex) Who or what is participating
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-participant
..... Slices for extension Content/Rules for all slices
...... extension:function 0..1 Extension Extension
....... value[x] 0..1 Coding Value of extension
Binding: Material Registration Participant Function (required)
.... extension:usage 0..1 string usage
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-usage
.... extension:version 0..1 string The current version
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-version
... type 0..1 CodeableConcept Kind of document (LOINC if possible)
Binding: EHealthDocumentReference Type (required)
... category 0..1 CodeableConcept Categorization of document
Binding: Document Category (required)
... author 0..* Reference(ehealth-practitioner | ehealth-organization | ehealth-device | ehealth-patient | ehealth-relatedperson) {r} Who and/or what authored the document
... authenticator 0..1 Reference(ehealth-practitioner | ehealth-organization) {r} Who/what authenticated the document
... custodian 0..1 Reference(ehealth-organization) {r} Organization which maintains the document
... relatesTo
.... target 1..1 Reference(ehealth-documentreference) Target of the relationship
... context
.... encounter 0..* Reference(ehealth-episodeofcare) Context of the document content
.... event 0..0
.... facilityType 0..0
.... practiceSetting 0..0
.... sourcePatientInfo 0..1 Reference(ehealth-patient) Patient demographics from source

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
DocumentReference.extension:participant.​extension:function.value[x] Base required Material Registration Participant Function 📦6.0.0 This IG
DocumentReference.type Base required EHealthDocumentReference Type 📦6.0.0 This IG
DocumentReference.category Base required Document Category 📦6.0.0 This IG

Constraints

Id Grade Path(s) Description Expression
modifierRole-required-for-material-registration error DocumentReference 'ehealth-modifier-role' extension is required when category code is 'general-material' or 'patient-specific-material' category.coding.exists(system = 'http://ehealth.sundhed.dk/cs/material-category' and (code = 'general-material' or code = 'patient-specific-material')) implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-modifier-role').exists()
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference C 0..* DocumentReference A reference to a document
Constraints: modifierRole-required-for-material-registration
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:useContext 0..* UsageContext The context that the content is intended to support
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-useContext
.... extension:modifierRole 0..* (Complex) Modifier role
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-modifier-role
.... extension:intendedOrganization 0..* Reference(ehealth-organization) {r} The organization intended to use this resource.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-intendedOrganization
.... extension:artifactDate 0..1 dateTime Date last changed.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-artifact-date
.... extension:participant 0..* (Complex) Who or what is participating
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-participant
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... extension:function 0..1 Extension Extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0
....... url 1..1 uri "function"
....... value[x] 0..1 Coding Value of extension
Binding: Material Registration Participant Function (required)
...... extension:actor 0..1 Extension The participant
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0
....... url 1..1 uri "actor"
....... value[x] 0..1 Reference(CareTeam | Practitioner) {r} Value of extension
...... extension:actorref 0..1 Extension The participant ref (string)
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0
....... url 1..1 uri "actorref"
....... value[x] 0..1 string Value of extension
..... url 1..1 uri "http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-participant"
.... extension:usage 0..1 string usage
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-usage
.... extension:version 0..1 string The current version
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-version
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... 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
Binding: DocumentReferenceStatus (required): The status of the document reference.
... docStatus Σ 0..1 code preliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): Status of the underlying document.
... type Σ 0..1 CodeableConcept Kind of document (LOINC if possible)
Binding: EHealthDocumentReference Type (required)
... category Σ 0..1 CodeableConcept Categorization of document
Binding: Document Category (required)
... subject Σ 0..1 Reference(ehealth-patient | ehealth-practitioner | Group | ehealth-device) {r} Who/what is the subject of the document
... date Σ 0..1 instant When 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..1 Reference(ehealth-practitioner | ehealth-organization) {r} Who/what authenticated the document
... custodian 0..1 Reference(ehealth-organization) {r} Organization which maintains the document
... relatesTo Σ 0..* BackboneElement Relationships to other documents
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code Σ 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
.... target Σ 1..1 Reference(ehealth-documentreference) Target of the relationship
... description Σ 0..1 string Human-readable description
... securityLabel Σ 0..* CodeableConcept Document security-tags
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
... content Σ 1..* BackboneElement Document referenced
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... attachment Σ 1..1 Attachment Where to access the document
.... format Σ 0..1 Coding Format/content rules for the document
Binding: DocumentReferenceFormatCodeSet (preferred): Document Format Codes.
... context Σ 0..1 BackboneElement Clinical context of document
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... encounter 0..* Reference(ehealth-episodeofcare) Context of the document content
.... period Σ 0..1 Period Time of service that is being documented
.... sourcePatientInfo 0..1 Reference(ehealth-patient) Patient demographics from source
.... related 0..* Reference(Resource) Related identifiers or resources

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DocumentReference.language Base preferred Common Languages 📍4.0.1 FHIR Std.
DocumentReference.extension:participant.​extension:function.value[x] Base required Material Registration Participant Function 📦6.0.0 This IG
DocumentReference.status Base required DocumentReferenceStatus 📍4.0.1 FHIR Std.
DocumentReference.docStatus Base required CompositionStatus 📍4.0.1 FHIR Std.
DocumentReference.type Base required EHealthDocumentReference Type 📦6.0.0 This IG
DocumentReference.category Base required Document Category 📦6.0.0 This IG
DocumentReference.relatesTo.​code Base required DocumentRelationshipType 📍4.0.1 FHIR Std.
DocumentReference.securityLabel Base extensible SecurityLabels 📍4.0.1 FHIR Std.
DocumentReference.content.​format Base preferred DocumentReference Format Code Set 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error DocumentReference If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error DocumentReference If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().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-4 error DocumentReference If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error DocumentReference If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice DocumentReference A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
modifierRole-required-for-material-registration error DocumentReference 'ehealth-modifier-role' extension is required when category code is 'general-material' or 'patient-specific-material' category.coding.exists(system = 'http://ehealth.sundhed.dk/cs/material-category' and (code = 'general-material' or code = 'patient-specific-material')) implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-modifier-role').exists()

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference C 0..* DocumentReference A reference to a document
Constraints: modifierRole-required-for-material-registration
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:useContext 0..* UsageContext The context that the content is intended to support
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-useContext
.... extension:modifierRole 0..* (Complex) Modifier role
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-modifier-role
.... extension:intendedOrganization 0..* Reference(ehealth-organization) {r} The organization intended to use this resource.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-intendedOrganization
.... extension:artifactDate 0..1 dateTime Date last changed.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-artifact-date
.... extension:participant 0..* (Complex) Who or what is participating
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-participant
..... Slices for extension Content/Rules for all slices
...... extension:function 0..1 Extension Extension
....... extension 0..0
....... url 1..1 uri "function"
....... value[x] 0..1 Coding Value of extension
Binding: Material Registration Participant Function (required)
...... extension:actor 0..1 Extension The participant
....... extension 0..0
....... url 1..1 uri "actor"
...... extension:actorref 0..1 Extension The participant ref (string)
....... extension 0..0
....... url 1..1 uri "actorref"
..... url 1..1 uri "http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-participant"
.... extension:usage 0..1 string usage
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-usage
.... extension:version 0..1 string The current version
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-version
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... type Σ 0..1 CodeableConcept Kind of document (LOINC if possible)
Binding: EHealthDocumentReference Type (required)
... category Σ 0..1 CodeableConcept Categorization of document
Binding: Document Category (required)
... subject Σ 0..1 Reference(ehealth-patient | ehealth-practitioner | Group | ehealth-device) {r} Who/what is the subject of the document
... author Σ 0..* Reference(ehealth-practitioner | ehealth-organization | ehealth-device | ehealth-patient | ehealth-relatedperson) {r} Who and/or what authored the document
... authenticator 0..1 Reference(ehealth-practitioner | ehealth-organization) {r} Who/what authenticated the document
... custodian 0..1 Reference(ehealth-organization) {r} Organization which maintains the document
... content Σ 1..* BackboneElement Document referenced
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... attachment Σ 1..1 Attachment Where to access the document

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DocumentReference.extension:participant.​extension:function.value[x] Base required Material Registration Participant Function 📦6.0.0 This IG
DocumentReference.status Base required DocumentReferenceStatus 📍4.0.1 FHIR Std.
DocumentReference.type Base required EHealthDocumentReference Type 📦6.0.0 This IG
DocumentReference.category Base required Document Category 📦6.0.0 This IG

Constraints

Id Grade Path(s) Description Expression
dom-2 error DocumentReference If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error DocumentReference If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().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-4 error DocumentReference If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error DocumentReference If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice DocumentReference A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
modifierRole-required-for-material-registration error DocumentReference 'ehealth-modifier-role' extension is required when category code is 'general-material' or 'patient-specific-material' category.coding.exists(system = 'http://ehealth.sundhed.dk/cs/material-category' and (code = 'general-material' or code = 'patient-specific-material')) implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-modifier-role').exists()

Differential View

This structure is derived from DocumentReference

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference C 0..* DocumentReference A reference to a document
Constraints: modifierRole-required-for-material-registration
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:useContext 0..* UsageContext The context that the content is intended to support
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-useContext
.... extension:modifierRole 0..* (Complex) Modifier role
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-modifier-role
.... extension:intendedOrganization 0..* Reference(ehealth-organization) {r} The organization intended to use this resource.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-intendedOrganization
.... extension:artifactDate 0..1 dateTime Date last changed.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-artifact-date
.... extension:participant 0..* (Complex) Who or what is participating
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-participant
..... Slices for extension Content/Rules for all slices
...... extension:function 0..1 Extension Extension
....... value[x] 0..1 Coding Value of extension
Binding: Material Registration Participant Function (required)
.... extension:usage 0..1 string usage
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-usage
.... extension:version 0..1 string The current version
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-version
... type 0..1 CodeableConcept Kind of document (LOINC if possible)
Binding: EHealthDocumentReference Type (required)
... category 0..1 CodeableConcept Categorization of document
Binding: Document Category (required)
... author 0..* Reference(ehealth-practitioner | ehealth-organization | ehealth-device | ehealth-patient | ehealth-relatedperson) {r} Who and/or what authored the document
... authenticator 0..1 Reference(ehealth-practitioner | ehealth-organization) {r} Who/what authenticated the document
... custodian 0..1 Reference(ehealth-organization) {r} Organization which maintains the document
... relatesTo
.... target 1..1 Reference(ehealth-documentreference) Target of the relationship
... context
.... encounter 0..* Reference(ehealth-episodeofcare) Context of the document content
.... event 0..0
.... facilityType 0..0
.... practiceSetting 0..0
.... sourcePatientInfo 0..1 Reference(ehealth-patient) Patient demographics from source

doco Documentation for this format

Terminology Bindings (Differential)

Path Status Usage ValueSet Version Source
DocumentReference.extension:participant.​extension:function.value[x] Base required Material Registration Participant Function 📦6.0.0 This IG
DocumentReference.type Base required EHealthDocumentReference Type 📦6.0.0 This IG
DocumentReference.category Base required Document Category 📦6.0.0 This IG

Constraints

Id Grade Path(s) Description Expression
modifierRole-required-for-material-registration error DocumentReference 'ehealth-modifier-role' extension is required when category code is 'general-material' or 'patient-specific-material' category.coding.exists(system = 'http://ehealth.sundhed.dk/cs/material-category' and (code = 'general-material' or code = 'patient-specific-material')) implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-modifier-role').exists()

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference C 0..* DocumentReference A reference to a document
Constraints: modifierRole-required-for-material-registration
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... Slices for extension 0..* Extension Extension
Slice: Unordered, Open by value:url
.... extension:useContext 0..* UsageContext The context that the content is intended to support
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-useContext
.... extension:modifierRole 0..* (Complex) Modifier role
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-modifier-role
.... extension:intendedOrganization 0..* Reference(ehealth-organization) {r} The organization intended to use this resource.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-intendedOrganization
.... extension:artifactDate 0..1 dateTime Date last changed.
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-artifact-date
.... extension:participant 0..* (Complex) Who or what is participating
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-participant
..... id 0..1 string Unique id for inter-element referencing
..... Slices for extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
...... extension:function 0..1 Extension Extension
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0
....... url 1..1 uri "function"
....... value[x] 0..1 Coding Value of extension
Binding: Material Registration Participant Function (required)
...... extension:actor 0..1 Extension The participant
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0
....... url 1..1 uri "actor"
....... value[x] 0..1 Reference(CareTeam | Practitioner) {r} Value of extension
...... extension:actorref 0..1 Extension The participant ref (string)
....... id 0..1 string Unique id for inter-element referencing
....... extension 0..0
....... url 1..1 uri "actorref"
....... value[x] 0..1 string Value of extension
..... url 1..1 uri "http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-participant"
.... extension:usage 0..1 string usage
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-usage
.... extension:version 0..1 string The current version
URL: http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-version
... modifierExtension ?! 0..* Extension Extensions that cannot be ignored
... 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
Binding: DocumentReferenceStatus (required): The status of the document reference.
... docStatus Σ 0..1 code preliminary | final | amended | entered-in-error
Binding: CompositionStatus (required): Status of the underlying document.
... type Σ 0..1 CodeableConcept Kind of document (LOINC if possible)
Binding: EHealthDocumentReference Type (required)
... category Σ 0..1 CodeableConcept Categorization of document
Binding: Document Category (required)
... subject Σ 0..1 Reference(ehealth-patient | ehealth-practitioner | Group | ehealth-device) {r} Who/what is the subject of the document
... date Σ 0..1 instant When 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..1 Reference(ehealth-practitioner | ehealth-organization) {r} Who/what authenticated the document
... custodian 0..1 Reference(ehealth-organization) {r} Organization which maintains the document
... relatesTo Σ 0..* BackboneElement Relationships to other documents
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... code Σ 1..1 code replaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.
.... target Σ 1..1 Reference(ehealth-documentreference) Target of the relationship
... description Σ 0..1 string Human-readable description
... securityLabel Σ 0..* CodeableConcept Document security-tags
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
... content Σ 1..* BackboneElement Document referenced
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... attachment Σ 1..1 Attachment Where to access the document
.... format Σ 0..1 Coding Format/content rules for the document
Binding: DocumentReferenceFormatCodeSet (preferred): Document Format Codes.
... context Σ 0..1 BackboneElement Clinical context of document
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... encounter 0..* Reference(ehealth-episodeofcare) Context of the document content
.... period Σ 0..1 Period Time of service that is being documented
.... sourcePatientInfo 0..1 Reference(ehealth-patient) Patient demographics from source
.... related 0..* Reference(Resource) Related identifiers or resources

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DocumentReference.language Base preferred Common Languages 📍4.0.1 FHIR Std.
DocumentReference.extension:participant.​extension:function.value[x] Base required Material Registration Participant Function 📦6.0.0 This IG
DocumentReference.status Base required DocumentReferenceStatus 📍4.0.1 FHIR Std.
DocumentReference.docStatus Base required CompositionStatus 📍4.0.1 FHIR Std.
DocumentReference.type Base required EHealthDocumentReference Type 📦6.0.0 This IG
DocumentReference.category Base required Document Category 📦6.0.0 This IG
DocumentReference.relatesTo.​code Base required DocumentRelationshipType 📍4.0.1 FHIR Std.
DocumentReference.securityLabel Base extensible SecurityLabels 📍4.0.1 FHIR Std.
DocumentReference.content.​format Base preferred DocumentReference Format Code Set 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
dom-2 error DocumentReference If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error DocumentReference If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().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-4 error DocumentReference If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error DocumentReference If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 best practice DocumentReference A resource should have narrative for robust management text.`div`.exists()
ele-1 error **ALL** elements All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error **ALL** extensions Must have either extensions or value[x], not both extension.exists() != value.exists()
modifierRole-required-for-material-registration error DocumentReference 'ehealth-modifier-role' extension is required when category code is 'general-material' or 'patient-specific-material' category.coding.exists(system = 'http://ehealth.sundhed.dk/cs/material-category' and (code = 'general-material' or code = 'patient-specific-material')) implies extension('http://ehealth.sundhed.dk/fhir/StructureDefinition/ehealth-modifier-role').exists()

 

Other representations of profile: CSV, Excel, Schematron