CH ELM (R4)
1.12.0 - ci-build Switzerland flag

CH ELM (R4), published by Federal Office of Public Health FOPH. This guide is not an authorized publication; it is the continuous build for version 1.12.0 built by the FHIR (HL7® FHIR® Standard) CI Build. This version is based on the current content of https://github.com/ahdis/ch-elm/ and changes regularly. See the Directory of published versions

Resource Profile: DocumentReference for sending the report with strict validation

Official URL: http://fhir.ch/ig/ch-elm/StructureDefinition/PublishDocumentReferenceStrict Version: 1.12.0
Active as of 2025-10-03 Computable Name: PublishDocumentReferenceStrict

Copyright/Legal: CC0-1.0

A profile on the DocumentReference resource with publication constraints:

  • must be status current
  • must have an identifier
  • uses attachment.url to carry the document as a contained resource
  • strict validation according to http://fhir.ch/ig/ch-elm/StructureDefinition/ch-elm-document-strict

Usages:

  • This Profile is not used by any profiles in this Implementation Guide

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 0..* PublishDocumentReference A reference to a document
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for contained 1..* Resource Contained, inline Resources
Slice: Unordered, Open by profile:$this
.... contained:document S 1..1 ChElmDocumentStrict CH ELM Document: Laboratory Report
... identifier Σ 1..1 Identifier Other identifiers for the document
... date SΣ 0..1 instant When this document reference was created
... relatesTo SΣ 0..* BackboneElement Relationships to other documents
.... 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(DocumentReference) Target of the relationship
... securityLabel SΣ 0..* CodeableConcept Document security-tags
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
... content Σ 1..1 BackboneElement Document referenced
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... attachment ΣC 1..1 Attachment Where to access the document
Constraints: ch-elm-resolveableurl
..... language SΣ 0..1 code Human language of the content (BCP-47)
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding

Example General: en-AU
..... url Σ 1..1 url The document is referenced by this url, contained in the DocumentReference
Example General: http://www.acme.com/logo-small.png
..... creation SΣ 0..1 dateTime Date attachment was first created

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DocumentReference.status Base required DocumentReferenceStatus 📍4.0.1 FHIR Std.
DocumentReference.relatesTo.​code Base required DocumentRelationshipType 📍4.0.1 FHIR Std.
DocumentReference.securityLabel Base extensible SecurityLabels 📍4.0.1 FHIR Std.
DocumentReference.content.​attachment.language Base preferred Common Languages 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
ch-elm-resolveableurl error DocumentReference.content.attachment Must resolve to the contained bundle. url.exists() and url.resolve()
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()

This structure is derived from PublishDocumentReference

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference 0..* PublishDocumentReference A reference to a document
... Slices for contained Content/Rules for all slices
.... contained:document 1..1 ChElmDocumentStrict CH ELM Document: Laboratory Report

doco Documentation for this format
NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference 0..* PublishDocumentReference A reference to a document
... 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
... Slices for contained 1..* Resource Contained, inline Resources
Slice: Unordered, Open by profile:$this
.... contained:document S 1..1 ChElmDocumentStrict CH ELM Document: Laboratory Report
... extension 0..* Extension Additional content defined by implementations
... masterIdentifier Σ 0..1 Identifier Master Version Specific Identifier
... identifier Σ 1..1 Identifier Other identifiers for the document
... status ?!Σ 1..1 code current | superseded | entered-in-error
Binding: DocumentReferenceStatus (required): The status of the document reference.
Required Pattern: current
... type Σ 0..1 CodeableConcept Kind of document (LOINC if possible)
Binding: DocumentTypeValueSet (preferred): Precise type of clinical document.
... category Σ 0..* CodeableConcept Categorization of document
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.
... subject Σ 0..1 Reference(Patient | Practitioner | Group | Device) Who/what is the subject of the document
... date SΣ 0..1 instant When this document reference was created
... author Σ 0..* Reference(Practitioner | PractitionerRole | Organization | Device | Patient | RelatedPerson) Who and/or what authored the document
... authenticator 0..1 Reference(Practitioner | PractitionerRole | Organization) Who/what authenticated the document
... custodian 0..1 Reference(Organization) Organization which maintains the document
... relatesTo SΣ 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(DocumentReference) Target of the relationship
... description Σ 0..1 string Human-readable description
... securityLabel SΣ 0..* CodeableConcept Document security-tags
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
... content Σ 1..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 ΣC 1..1 Attachment Where to access the document
Constraints: ch-elm-resolveableurl
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... contentType Σ 0..1 code Mime type of the content, with charset etc.
Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.
Example General: text/plain; charset=UTF-8, image/png
..... language SΣ 0..1 code Human language of the content (BCP-47)
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding

Example General: en-AU
..... data 0..1 base64Binary Data inline, base64ed
..... url Σ 1..1 url The document is referenced by this url, contained in the DocumentReference
Example General: http://www.acme.com/logo-small.png
..... size Σ 0..1 unsignedInt Number of bytes of content (if url provided)
..... hash Σ 0..1 base64Binary Hash of the data (sha-1, base64ed)
..... title Σ 0..1 string Label to display in place of the data
Example General: Official Corporate Logo
..... creation SΣ 0..1 dateTime Date attachment was first created
.... 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(Encounter | EpisodeOfCare) Context of the document content
.... event 0..* CodeableConcept Main clinical acts documented
Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.
.... period Σ 0..1 Period Time of service that is being documented
.... facilityType 0..1 CodeableConcept Kind of facility where patient was seen
Binding: FacilityTypeCodeValueSet (example): XDS Facility Type.
.... practiceSetting 0..1 CodeableConcept Additional details about where the content was created (e.g. clinical specialty)
Binding: PracticeSettingCodeValueSet (example): Additional details about where the content was created (e.g. clinical specialty).
.... sourcePatientInfo 0..1 Reference(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.status Base required DocumentReferenceStatus 📍4.0.1 FHIR Std.
DocumentReference.type Base preferred Document Type Value Set 📍4.0.1 FHIR Std.
DocumentReference.category Base example Document Class Value Set 📍4.0.1 FHIR Std.
DocumentReference.relatesTo.​code Base required DocumentRelationshipType 📍4.0.1 FHIR Std.
DocumentReference.securityLabel Base extensible SecurityLabels 📍4.0.1 FHIR Std.
DocumentReference.content.​attachment.contentType Base required MimeType 📍4.0.1 FHIR Std.
DocumentReference.content.​attachment.language Base preferred Common Languages 📍4.0.1 FHIR Std.
DocumentReference.content.​format Base preferred DocumentReference Format Code Set 📍4.0.1 FHIR Std.
DocumentReference.context.​event Base example v3 Code System ActCode 📦3.0.0 THO v6.3
DocumentReference.context.​facilityType Base example Facility Type Code Value Set 📍4.0.1 FHIR Std.
DocumentReference.context.​practiceSetting Base example Practice Setting Code Value Set 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
ch-elm-resolveableurl error DocumentReference.content.attachment Must resolve to the contained bundle. url.exists() and url.resolve()
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()

This structure is derived from PublishDocumentReference

Key Elements View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference 0..* PublishDocumentReference A reference to a document
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... Slices for contained 1..* Resource Contained, inline Resources
Slice: Unordered, Open by profile:$this
.... contained:document S 1..1 ChElmDocumentStrict CH ELM Document: Laboratory Report
... identifier Σ 1..1 Identifier Other identifiers for the document
... date SΣ 0..1 instant When this document reference was created
... relatesTo SΣ 0..* BackboneElement Relationships to other documents
.... 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(DocumentReference) Target of the relationship
... securityLabel SΣ 0..* CodeableConcept Document security-tags
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
... content Σ 1..1 BackboneElement Document referenced
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
.... attachment ΣC 1..1 Attachment Where to access the document
Constraints: ch-elm-resolveableurl
..... language SΣ 0..1 code Human language of the content (BCP-47)
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding

Example General: en-AU
..... url Σ 1..1 url The document is referenced by this url, contained in the DocumentReference
Example General: http://www.acme.com/logo-small.png
..... creation SΣ 0..1 dateTime Date attachment was first created

doco Documentation for this format

Terminology Bindings

Path Status Usage ValueSet Version Source
DocumentReference.status Base required DocumentReferenceStatus 📍4.0.1 FHIR Std.
DocumentReference.relatesTo.​code Base required DocumentRelationshipType 📍4.0.1 FHIR Std.
DocumentReference.securityLabel Base extensible SecurityLabels 📍4.0.1 FHIR Std.
DocumentReference.content.​attachment.language Base preferred Common Languages 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
ch-elm-resolveableurl error DocumentReference.content.attachment Must resolve to the contained bundle. url.exists() and url.resolve()
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()

Differential View

This structure is derived from PublishDocumentReference

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference 0..* PublishDocumentReference A reference to a document
... Slices for contained Content/Rules for all slices
.... contained:document 1..1 ChElmDocumentStrict CH ELM Document: Laboratory Report

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraints    Filter: Filtersdoco
.. DocumentReference 0..* PublishDocumentReference A reference to a document
... 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
... Slices for contained 1..* Resource Contained, inline Resources
Slice: Unordered, Open by profile:$this
.... contained:document S 1..1 ChElmDocumentStrict CH ELM Document: Laboratory Report
... extension 0..* Extension Additional content defined by implementations
... masterIdentifier Σ 0..1 Identifier Master Version Specific Identifier
... identifier Σ 1..1 Identifier Other identifiers for the document
... status ?!Σ 1..1 code current | superseded | entered-in-error
Binding: DocumentReferenceStatus (required): The status of the document reference.
Required Pattern: current
... type Σ 0..1 CodeableConcept Kind of document (LOINC if possible)
Binding: DocumentTypeValueSet (preferred): Precise type of clinical document.
... category Σ 0..* CodeableConcept Categorization of document
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.
... subject Σ 0..1 Reference(Patient | Practitioner | Group | Device) Who/what is the subject of the document
... date SΣ 0..1 instant When this document reference was created
... author Σ 0..* Reference(Practitioner | PractitionerRole | Organization | Device | Patient | RelatedPerson) Who and/or what authored the document
... authenticator 0..1 Reference(Practitioner | PractitionerRole | Organization) Who/what authenticated the document
... custodian 0..1 Reference(Organization) Organization which maintains the document
... relatesTo SΣ 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(DocumentReference) Target of the relationship
... description Σ 0..1 string Human-readable description
... securityLabel SΣ 0..* CodeableConcept Document security-tags
Binding: All Security Labels (extensible): Security Labels from the Healthcare Privacy and Security Classification System.
... content Σ 1..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 ΣC 1..1 Attachment Where to access the document
Constraints: ch-elm-resolveableurl
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Slice: Unordered, Open by value:url
..... contentType Σ 0..1 code Mime type of the content, with charset etc.
Binding: Mime Types (required): The mime type of an attachment. Any valid mime type is allowed.
Example General: text/plain; charset=UTF-8, image/png
..... language SΣ 0..1 code Human language of the content (BCP-47)
Binding: CommonLanguages (preferred): A human language.
Additional BindingsPurpose
AllLanguages Max Binding

Example General: en-AU
..... data 0..1 base64Binary Data inline, base64ed
..... url Σ 1..1 url The document is referenced by this url, contained in the DocumentReference
Example General: http://www.acme.com/logo-small.png
..... size Σ 0..1 unsignedInt Number of bytes of content (if url provided)
..... hash Σ 0..1 base64Binary Hash of the data (sha-1, base64ed)
..... title Σ 0..1 string Label to display in place of the data
Example General: Official Corporate Logo
..... creation SΣ 0..1 dateTime Date attachment was first created
.... 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(Encounter | EpisodeOfCare) Context of the document content
.... event 0..* CodeableConcept Main clinical acts documented
Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.
.... period Σ 0..1 Period Time of service that is being documented
.... facilityType 0..1 CodeableConcept Kind of facility where patient was seen
Binding: FacilityTypeCodeValueSet (example): XDS Facility Type.
.... practiceSetting 0..1 CodeableConcept Additional details about where the content was created (e.g. clinical specialty)
Binding: PracticeSettingCodeValueSet (example): Additional details about where the content was created (e.g. clinical specialty).
.... sourcePatientInfo 0..1 Reference(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.status Base required DocumentReferenceStatus 📍4.0.1 FHIR Std.
DocumentReference.type Base preferred Document Type Value Set 📍4.0.1 FHIR Std.
DocumentReference.category Base example Document Class Value Set 📍4.0.1 FHIR Std.
DocumentReference.relatesTo.​code Base required DocumentRelationshipType 📍4.0.1 FHIR Std.
DocumentReference.securityLabel Base extensible SecurityLabels 📍4.0.1 FHIR Std.
DocumentReference.content.​attachment.contentType Base required MimeType 📍4.0.1 FHIR Std.
DocumentReference.content.​attachment.language Base preferred Common Languages 📍4.0.1 FHIR Std.
DocumentReference.content.​format Base preferred DocumentReference Format Code Set 📍4.0.1 FHIR Std.
DocumentReference.context.​event Base example v3 Code System ActCode 📦3.0.0 THO v6.3
DocumentReference.context.​facilityType Base example Facility Type Code Value Set 📍4.0.1 FHIR Std.
DocumentReference.context.​practiceSetting Base example Practice Setting Code Value Set 📍4.0.1 FHIR Std.

Constraints

Id Grade Path(s) Description Expression
ch-elm-resolveableurl error DocumentReference.content.attachment Must resolve to the contained bundle. url.exists() and url.resolve()
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()

This structure is derived from PublishDocumentReference

 

Other representations of profile: CSV, Excel, Schematron