CH EPR mHealth (R4)
0.1.2 - Draft Standard for Trial Use

This page is part of the CH EPR mHealth (R4) (v0.1.2: DSTU 1) based on FHIR R4. . For a full list of available versions, see the Directory of published versions

StructureDefinition: IHE_MHD_Provide_Comprehensive_DocumentReference

IHE MHD Profile on DocumentReference (DocumentEntry) when used in the Provide Transaction with Comprehensive (aka XDS-on-FHIR) Metadata.

The official URL for this profile is:

http://ihe.net/fhir/ihe.mhd.fhir/StructureDefinition/IHE.MHD.Provide.Comprehensive.DocumentReference

Formal Views of Profile Content

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

This structure is derived from IHE_MHD_Provide_Minimal_DocumentReference

Summary

Mandatory: 8 elements (2 nested mandatory elements)

This structure is derived from IHE_MHD_Provide_Minimal_DocumentReference

NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference 0..*IHE_MHD_Provide_Minimal_DocumentReferenceA reference to a document
... type 1..1CodeableConceptKind of document (LOINC if possible)
... category 1..*CodeableConceptCategorization of document
... subject 1..1Reference(Patient) {rb}Who/what is the subject of the document
... securityLabel 1..*CodeableConceptDocument security-tags
... content
.... attachment
..... language 1..1codeHuman language of the content (BCP-47)
..... creation 1..1dateTimeDate attachment was first created
.... format 1..1CodingFormat/content rules for the document
... context
.... facilityType 1..1CodeableConceptKind of facility where patient was seen
.... practiceSetting 1..1CodeableConceptAdditional details about where the content was created (e.g. clinical specialty)

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

... type SΣ1..1CodeableConceptKind of document (LOINC if possible)
Binding: DocumentTypeValueSet (preferred): Precise type of clinical document.

... category SΣ1..*CodeableConceptCategorization of document
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.


... subject SΣ1..1Reference(Patient) {rb}Who/what is the subject of the document
... date SΣ1..1instantWhen this document reference was created
... author SΣ0..*Reference() {c}Who and/or what authored the document
... authenticator 0..1Reference() {c}Who/what authenticated the document
... relatesTo SΣ0..*BackboneElementRelationships to other documents
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code Σ1..1codereplaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.

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


... content SΣ1..1BackboneElementDocument referenced
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... attachment SΣ1..1AttachmentWhere to access the document
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... contentType SΣ1..1codeMime 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Σ1..1codeHuman language of the content (BCP-47)
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages: A human language.


Example General: en-AU
..... url SΣ1..1urlUri where the data can be found
Example General: http://www.acme.com/logo-small.png
..... size Σ0..1unsignedIntNumber of bytes of content (if url provided)
..... hash Σ0..1base64BinaryHash of the data (sha-1, base64ed)
..... title Σ0..1stringLabel to display in place of the data
Example General: Official Corporate Logo
..... creation Σ1..1dateTimeDate attachment was first created
.... format SΣ1..1CodingFormat/content rules for the document
Binding: http://ihe.net/fhir/ihe.formatcode.fhir/ValueSet/formatcode (preferred)
... context Σ0..1BackboneElementClinical context of document
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... encounter 0..*Reference(Encounter | EpisodeOfCare)Context of the document content
.... event 0..*CodeableConceptMain clinical acts documented
Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.


.... period SΣ0..1PeriodTime of service that is being documented
.... facilityType S1..1CodeableConceptKind of facility where patient was seen
Binding: FacilityTypeCodeValueSet (example): XDS Facility Type.

.... practiceSetting S1..1CodeableConceptAdditional 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 S0..1Reference() {c}Patient demographics from source
.... related 0..*Reference(Resource)Related identifiers or resources

doco Documentation for this format

This structure is derived from IHE_MHD_Provide_Minimal_DocumentReference

Summary

Mandatory: 8 elements (2 nested mandatory elements)

Differential View

This structure is derived from IHE_MHD_Provide_Minimal_DocumentReference

NameFlagsCard.TypeDescription & Constraintsdoco
.. DocumentReference 0..*IHE_MHD_Provide_Minimal_DocumentReferenceA reference to a document
... type 1..1CodeableConceptKind of document (LOINC if possible)
... category 1..*CodeableConceptCategorization of document
... subject 1..1Reference(Patient) {rb}Who/what is the subject of the document
... securityLabel 1..*CodeableConceptDocument security-tags
... content
.... attachment
..... language 1..1codeHuman language of the content (BCP-47)
..... creation 1..1dateTimeDate attachment was first created
.... format 1..1CodingFormat/content rules for the document
... context
.... facilityType 1..1CodeableConceptKind of facility where patient was seen
.... practiceSetting 1..1CodeableConceptAdditional details about where the content was created (e.g. clinical specialty)

doco Documentation for this format

Snapshot View

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

... type SΣ1..1CodeableConceptKind of document (LOINC if possible)
Binding: DocumentTypeValueSet (preferred): Precise type of clinical document.

... category SΣ1..*CodeableConceptCategorization of document
Binding: DocumentClassValueSet (example): High-level kind of a clinical document at a macro level.


... subject SΣ1..1Reference(Patient) {rb}Who/what is the subject of the document
... date SΣ1..1instantWhen this document reference was created
... author SΣ0..*Reference() {c}Who and/or what authored the document
... authenticator 0..1Reference() {c}Who/what authenticated the document
... relatesTo SΣ0..*BackboneElementRelationships to other documents
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... code Σ1..1codereplaces | transforms | signs | appends
Binding: DocumentRelationshipType (required): The type of relationship between documents.

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


... content SΣ1..1BackboneElementDocument referenced
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... attachment SΣ1..1AttachmentWhere to access the document
..... id 0..1stringUnique id for inter-element referencing
..... extension 0..*ExtensionAdditional content defined by implementations
Slice: Unordered, Open by value:url
..... contentType SΣ1..1codeMime 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Σ1..1codeHuman language of the content (BCP-47)
Binding: CommonLanguages (preferred)
Max Binding: AllLanguages: A human language.


Example General: en-AU
..... url SΣ1..1urlUri where the data can be found
Example General: http://www.acme.com/logo-small.png
..... size Σ0..1unsignedIntNumber of bytes of content (if url provided)
..... hash Σ0..1base64BinaryHash of the data (sha-1, base64ed)
..... title Σ0..1stringLabel to display in place of the data
Example General: Official Corporate Logo
..... creation Σ1..1dateTimeDate attachment was first created
.... format SΣ1..1CodingFormat/content rules for the document
Binding: http://ihe.net/fhir/ihe.formatcode.fhir/ValueSet/formatcode (preferred)
... context Σ0..1BackboneElementClinical context of document
.... id 0..1stringUnique id for inter-element referencing
.... extension 0..*ExtensionAdditional content defined by implementations
.... modifierExtension ?!Σ0..*ExtensionExtensions that cannot be ignored even if unrecognized
.... encounter 0..*Reference(Encounter | EpisodeOfCare)Context of the document content
.... event 0..*CodeableConceptMain clinical acts documented
Binding: v3 Code System ActCode (example): This list of codes represents the main clinical acts being documented.


.... period SΣ0..1PeriodTime of service that is being documented
.... facilityType S1..1CodeableConceptKind of facility where patient was seen
Binding: FacilityTypeCodeValueSet (example): XDS Facility Type.

.... practiceSetting S1..1CodeableConceptAdditional 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 S0..1Reference() {c}Patient demographics from source
.... related 0..*Reference(Resource)Related identifiers or resources

doco Documentation for this format

 

Other representations of profile: Schematron

Terminology Bindings

Terminology Bindings

PathConformanceValueSet
DocumentReference.languagepreferredCommonLanguages
Max Binding: AllLanguages
DocumentReference.statusrequiredDocumentReferenceStatus
DocumentReference.typepreferredDocumentTypeValueSet
DocumentReference.categoryexampleDocumentClassValueSet
DocumentReference.relatesTo.coderequiredDocumentRelationshipType
DocumentReference.securityLabelextensibleAll Security Labels
DocumentReference.content.attachment.contentTyperequiredMime Types
DocumentReference.content.attachment.languagepreferredCommonLanguages
Max Binding: AllLanguages
DocumentReference.content.formatpreferredhttp://ihe.net/fhir/ihe.formatcode.fhir/ValueSet/formatcode
DocumentReference.context.eventexamplev3.ActCode
DocumentReference.context.facilityTypeexampleFacilityTypeCodeValueSet
DocumentReference.context.practiceSettingexamplePracticeSettingCodeValueSet

Constraints

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.typeAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.categoryAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.subjectAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.dateAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.authorAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.authenticatorAll FHIR elements must have a @value or children
: hasValue() or (children().count() > id.count())
ele-1DocumentReference.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.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())