CH_CRL (v0.2.1)

This page is part of the CH-CRL (R4) (v0.2.1: STU) based on FHIR R4. This is the current published version. For a full list of available versions, see the Directory of published versions

StructureDefinition: ch-crl-documentreference

Formal Views of Profile Content

The official URL for this profile is:

http://fhir.ch/ig/ch-crl/StructureDefinition/ch-crl-documentreference

Document reference for the report as pdf

This profile builds on CHCoreDocumentReference.

This profile was published on Fri Nov 08 00:00:00 CET 2019 as a draft by Bundesamt für Gesundheit BAG.

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

This structure is derived from CHCoreDocumentReference

Summary

Mandatory: 8 elements

Structures

This structure refers to these other structures:

This structure is derived from CHCoreDocumentReference

NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference 0..*CHCoreDocumentReferenceCH CRL DocumentReference
... subject 1..1Reference(CH CRL Patient Profile)Patient
.... reference 1..1string
... author 1..*Reference(CH CRL Practitioner Profile | CH CRL Organization Department Profile)Practitioner if resident physician or Organization Department if hospital
.... reference 1..1string
... description 1..1string
... content 1..*BackboneElement
.... attachment 1..1Attachment
..... contentType 1..1code
..... data 1..1base64Binary
..... size 0..1unsignedInt
..... title 1..1string
..... creation 0..1dateTime

doco Documentation for this format

This structure is derived from CHCoreDocumentReference

NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference I0..*CHCoreDocumentReferenceCH CRL DocumentReference
... id Σ0..1stringLogical id of this artifact
... meta ΣI0..1MetaMetadata about the resource
... implicitRules ?!ΣI0..1uriA set of rules under which this content was created
... language I0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension I0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!I0..*ExtensionExtensions that cannot be ignored
... masterIdentifier ΣI0..1IdentifierMaster Version Specific Identifier
... identifier ΣI0..*IdentifierOther identifiers for the document
... status ?!ΣI1..1codecurrent | superseded | entered-in-error
Binding: DocumentReferenceStatus (required)
... docStatus ΣI0..1codepreliminary | final | amended | entered-in-error
Binding: CompositionStatus (required)
... type ΣI0..1CodeableConceptKind of document (LOINC if possible)
Binding: DocumentEntry.typeCode (preferred)
... category ΣI0..*CodeableConceptCategorization of document
Binding: DocumentEntry.classCode (preferred)
... subject ΣI1..1Reference(CH CRL Patient Profile)Patient
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣI1..1stringLiteral reference, Relative, internal or absolute URL
.... type ΣI0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible)
.... identifier ΣI0..1IdentifierLogical reference, when literal reference is not known
.... display ΣI0..1stringText alternative for the resource
... date ΣI0..1instantWhen this document reference was created
... author ΣI1..*Reference(CH CRL Practitioner Profile | CH CRL Organization Department Profile)Practitioner if resident physician or Organization Department if hospital
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣI1..1stringLiteral reference, Relative, internal or absolute URL
.... type ΣI0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible)
.... identifier ΣI0..1IdentifierLogical reference, when literal reference is not known
.... display ΣI0..1stringText alternative for the resource
... authenticator I0..1Reference(Practitioner | PractitionerRole | Organization)Who/what authenticated the document
... custodian I0..1Reference(Organization)Organization which maintains the document
... relatesTo ΣI0..*BackboneElementRelationships to other documents
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code ΣI1..1codereplaces | transforms | signs | appends
Binding: DocumentRelationshipType (required)
.... target ΣI1..1Reference(DocumentReference)Target of the relationship
... description ΣI1..1stringHuman-readable description
... securityLabel ΣI0..*CodeableConceptDocument security-tags
Binding: DocumentEntry.confidentialityCode (preferred)
... content ΣI1..*BackboneElementDocument referenced
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... attachment ΣI1..1AttachmentWhere to access the document
..... id 0..1stringUnique id for inter-element referencing
..... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... contentType ΣI1..1codeMime type of the content, with charset etc.
Binding: DocumentEntry.mimeType (preferred)
Example General: text/plain; charset=UTF-8, image/png
..... language ΣI0..1codeHuman language of the content (BCP-47)
Binding: DocumentEntry.languageCode (preferred)
Example General: en-AU
..... data I1..1base64BinaryData inline, base64ed
..... url ΣI0..1urlUri where the data can be found
Example General: http://www.acme.com/logo-small.png
..... size ΣI0..1unsignedIntNumber of bytes of content (if url provided)
..... hash ΣI0..1base64BinaryHash of the data (sha-1, base64ed)
..... title ΣI1..1stringLabel to display in place of the data
Example General: Official Corporate Logo
..... creation ΣI0..1dateTimeDate attachment was first created
.... format ΣI0..1CodingFormat/content rules for the document
Binding: DocumentEntry.formatCode (preferred)
... context ΣI0..1BackboneElementClinical context of document
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... encounter I0..*Reference(Encounter | EpisodeOfCare)Context of the document content
.... event I0..*CodeableConceptMain clinical acts documented
Binding: v3 Code System ActCode (example)
.... period ΣI0..1PeriodTime of service that is being documented
.... facilityType I0..1CodeableConceptKind of facility where patient was seen
Binding: DocumentEntry.healthcareFacilityTypeCode (preferred)
.... practiceSetting I0..1CodeableConceptAdditional details about where the content was created (e.g. clinical specialty)
Binding: DocumentEntry.practiceSettingCode (preferred)
.... sourcePatientInfo I0..1Reference(Patient)Patient demographics from source
.... related I0..*Reference(Resource)Related identifiers or resources

doco Documentation for this format

This structure is derived from CHCoreDocumentReference

Summary

Mandatory: 8 elements

Structures

This structure refers to these other structures:

Differential View

This structure is derived from CHCoreDocumentReference

NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference 0..*CHCoreDocumentReferenceCH CRL DocumentReference
... subject 1..1Reference(CH CRL Patient Profile)Patient
.... reference 1..1string
... author 1..*Reference(CH CRL Practitioner Profile | CH CRL Organization Department Profile)Practitioner if resident physician or Organization Department if hospital
.... reference 1..1string
... description 1..1string
... content 1..*BackboneElement
.... attachment 1..1Attachment
..... contentType 1..1code
..... data 1..1base64Binary
..... size 0..1unsignedInt
..... title 1..1string
..... creation 0..1dateTime

doco Documentation for this format

Snapshot View

NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference I0..*CHCoreDocumentReferenceCH CRL DocumentReference
... id Σ0..1stringLogical id of this artifact
... meta ΣI0..1MetaMetadata about the resource
... implicitRules ?!ΣI0..1uriA set of rules under which this content was created
... language I0..1codeLanguage of the resource content
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages
... text I0..1NarrativeText summary of the resource, for human interpretation
... contained 0..*ResourceContained, inline Resources
... extension I0..*ExtensionAdditional content defined by implementations
... modifierExtension ?!I0..*ExtensionExtensions that cannot be ignored
... masterIdentifier ΣI0..1IdentifierMaster Version Specific Identifier
... identifier ΣI0..*IdentifierOther identifiers for the document
... status ?!ΣI1..1codecurrent | superseded | entered-in-error
Binding: DocumentReferenceStatus (required)
... docStatus ΣI0..1codepreliminary | final | amended | entered-in-error
Binding: CompositionStatus (required)
... type ΣI0..1CodeableConceptKind of document (LOINC if possible)
Binding: DocumentEntry.typeCode (preferred)
... category ΣI0..*CodeableConceptCategorization of document
Binding: DocumentEntry.classCode (preferred)
... subject ΣI1..1Reference(CH CRL Patient Profile)Patient
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣI1..1stringLiteral reference, Relative, internal or absolute URL
.... type ΣI0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible)
.... identifier ΣI0..1IdentifierLogical reference, when literal reference is not known
.... display ΣI0..1stringText alternative for the resource
... date ΣI0..1instantWhen this document reference was created
... author ΣI1..*Reference(CH CRL Practitioner Profile | CH CRL Organization Department Profile)Practitioner if resident physician or Organization Department if hospital
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
.... reference ΣI1..1stringLiteral reference, Relative, internal or absolute URL
.... type ΣI0..1uriType the reference refers to (e.g. "Patient")
Binding: ResourceType (extensible)
.... identifier ΣI0..1IdentifierLogical reference, when literal reference is not known
.... display ΣI0..1stringText alternative for the resource
... authenticator I0..1Reference(Practitioner | PractitionerRole | Organization)Who/what authenticated the document
... custodian I0..1Reference(Organization)Organization which maintains the document
... relatesTo ΣI0..*BackboneElementRelationships to other documents
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code ΣI1..1codereplaces | transforms | signs | appends
Binding: DocumentRelationshipType (required)
.... target ΣI1..1Reference(DocumentReference)Target of the relationship
... description ΣI1..1stringHuman-readable description
... securityLabel ΣI0..*CodeableConceptDocument security-tags
Binding: DocumentEntry.confidentialityCode (preferred)
... content ΣI1..*BackboneElementDocument referenced
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... attachment ΣI1..1AttachmentWhere to access the document
..... id 0..1stringUnique id for inter-element referencing
..... extension I0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... contentType ΣI1..1codeMime type of the content, with charset etc.
Binding: DocumentEntry.mimeType (preferred)
Example General: text/plain; charset=UTF-8, image/png
..... language ΣI0..1codeHuman language of the content (BCP-47)
Binding: DocumentEntry.languageCode (preferred)
Example General: en-AU
..... data I1..1base64BinaryData inline, base64ed
..... url ΣI0..1urlUri where the data can be found
Example General: http://www.acme.com/logo-small.png
..... size ΣI0..1unsignedIntNumber of bytes of content (if url provided)
..... hash ΣI0..1base64BinaryHash of the data (sha-1, base64ed)
..... title ΣI1..1stringLabel to display in place of the data
Example General: Official Corporate Logo
..... creation ΣI0..1dateTimeDate attachment was first created
.... format ΣI0..1CodingFormat/content rules for the document
Binding: DocumentEntry.formatCode (preferred)
... context ΣI0..1BackboneElementClinical context of document
.... id 0..1stringUnique id for inter-element referencing
.... extension I0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!ΣI0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... encounter I0..*Reference(Encounter | EpisodeOfCare)Context of the document content
.... event I0..*CodeableConceptMain clinical acts documented
Binding: v3 Code System ActCode (example)
.... period ΣI0..1PeriodTime of service that is being documented
.... facilityType I0..1CodeableConceptKind of facility where patient was seen
Binding: DocumentEntry.healthcareFacilityTypeCode (preferred)
.... practiceSetting I0..1CodeableConceptAdditional details about where the content was created (e.g. clinical specialty)
Binding: DocumentEntry.practiceSettingCode (preferred)
.... sourcePatientInfo I0..1Reference(Patient)Patient demographics from source
.... related I0..*Reference(Resource)Related identifiers or resources

doco Documentation for this format

 

Terminology Bindings

PathConformanceValueSet
DocumentReference.languagepreferredCommonLanguages
Max Binding: AllLanguages
DocumentReference.statusrequiredDocumentReferenceStatus
DocumentReference.docStatusrequiredCompositionStatus
DocumentReference.typepreferredDocumentEntry.typeCode
DocumentReference.categorypreferredDocumentEntry.classCode
DocumentReference.subject.typeextensibleResourceType
DocumentReference.author.typeextensibleResourceType
DocumentReference.relatesTo.coderequiredDocumentRelationshipType
DocumentReference.securityLabelpreferredDocumentEntry.confidentialityCode
DocumentReference.content.attachment.contentTypepreferredDocumentEntry.mimeType
DocumentReference.content.attachment.languagepreferredDocumentEntry.languageCode
DocumentReference.content.formatpreferredDocumentEntry.formatCode
DocumentReference.context.eventexamplev3.ActCode
DocumentReference.context.facilityTypepreferredDocumentEntry.healthcareFacilityTypeCode
DocumentReference.context.practiceSettingpreferredDocumentEntry.practiceSettingCode

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.subject.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1DocumentReference.subject.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1DocumentReference.subject.referenceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.subject.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.subject.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.subject.displayAll 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.author.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1DocumentReference.author.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1DocumentReference.author.referenceAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.author.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.author.identifierAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.author.displayAll 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.attachment.extensionAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ext-1DocumentReference.content.attachment.extensionMust have either extensions or value[x], not both
: extension.exists() != value.exists()
ele-1DocumentReference.content.attachment.contentTypeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.content.attachment.languageAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.content.attachment.dataAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.content.attachment.urlAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.content.attachment.sizeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.content.attachment.hashAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.content.attachment.titleAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.content.attachment.creationAll 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())
.