This page is part of the FHIR Core Extensions Registry (v5.1.0-snapshot1: Release 5.1) based on FHIR (HL7® FHIR® Standard) v5.0.0. The current version which supersedes this version is 1.0.0. For a full list of available versions, see the Directory of published versions
Orders and Observations Work Group | Maturity Level: N/A | Standards Status: Informative | Security Category: N/A | Compartments: N/A |
Following are maps for converting between the equivalent R4B resource and this R5 resource.
/// url = 'http://hl7.org/fhir/StructureMap/DocumentReference5to4' /// name = 'DocumentReference5to4' /// title = 'FML Conversion for DocumentReference: R5 to R4' /// status = 'active' conceptmap "DocumentReferenceStatus" { prefix s = "http://hl7.org/fhir/document-reference-status" prefix t = "http://hl7.org/fhir/4.0/document-reference-status" s:current - t:current s:superseded - t:superseded s:"entered-in-error" - t:"entered-in-error" } conceptmap "ReferredDocumentStatus" { prefix s = "http://hl7.org/fhir/composition-status" prefix t = "http://hl7.org/fhir/4.0/composition-status" s:preliminary - t:preliminary s:final - t:final s:amended - t:amended s:"entered-in-error" - t:"entered-in-error" } uses "http://hl7.org/fhir/StructureDefinition/DocumentReference" alias DocumentReferenceR5 as source uses "http://hl7.org/fhir/4.0/StructureDefinition/DocumentReference" alias DocumentReferenceR4 as target imports "http://hl7.org/fhir/StructureMap/*5to4" group DocumentReference(source src : DocumentReferenceR5, target tgt : DocumentReferenceR4) extends DomainResource <<type+>> { src.identifier -> tgt.identifier; src.status as v -> tgt.status = translate(v, '#DocumentReferenceStatus', 'code'); // src.version -> tgt.version; src.docStatus as v -> tgt.docStatus = translate(v, '#ReferredDocumentStatus', 'code'); src.type -> tgt.type; // src.modality -> tgt.modality; src.category -> tgt.category; src.subject -> tgt.subject; src.context : Reference as s -> tgt.context as t, t.encounter = s; src.event as s -> tgt.context as t, t.event = s; src.facilityType as s -> tgt.context as t, t.facilityType = s; src.practiceSetting as s -> tgt.context as t, t.practiceSetting = s; src.period as s -> tgt.context as t, t.period = s; src.date -> tgt.date; // src.bodySite -> tgt.bodySite; src.author -> tgt.author; src.attester as s where src.attester.mode = 'professional' -> tgt then { s.party -> tgt.authenticator; }; src.custodian -> tgt.custodian; src.relatesTo as s -> tgt.relatesTo as t then DocumentReferenceRelatesTo(s, t); src.description -> tgt.description; src.securityLabel -> tgt.securityLabel; src.content as s -> tgt.content as t then DocumentReferenceContent(s, t); } group DocumentReferenceRelatesTo(source src, target tgt) extends BackboneElement { src.code as s -> tgt then { s.coding as sc -> tgt.code = sc; }; src.target -> tgt.target; } group DocumentReferenceContent(source src, target tgt) extends BackboneElement { src.attachment -> tgt.attachment; src.profile as s -> tgt then { s.value : Coding -> tgt.format; }; }
/// url = 'http://hl7.org/fhir/StructureMap/DocumentReference5to4B' /// name = 'DocumentReference5to4B' /// title = 'FML Conversion for DocumentReference: R5 to R4B' /// status = 'active' conceptmap "DocumentReferenceStatus" { prefix s = "http://hl7.org/fhir/document-reference-status" prefix t = "http://hl7.org/fhir/4.3/document-reference-status" s:current - t:current s:superseded - t:superseded s:"entered-in-error" - t:"entered-in-error" } conceptmap "ReferredDocumentStatus" { prefix s = "http://hl7.org/fhir/composition-status" prefix t = "http://hl7.org/fhir/4.3/composition-status" s:preliminary - t:preliminary s:final - t:final s:amended - t:amended s:"entered-in-error" - t:"entered-in-error" } uses "http://hl7.org/fhir/StructureDefinition/DocumentReference" alias DocumentReferenceR5 as source uses "http://hl7.org/fhir/4.3/StructureDefinition/DocumentReference" alias DocumentReferenceR4B as target imports "http://hl7.org/fhir/StructureMap/*5to4B" group DocumentReference(source src : DocumentReferenceR5, target tgt : DocumentReferenceR4B) extends DomainResource <<type+>> { src.identifier -> tgt.identifier; src.status as v -> tgt.status = translate(v, '#DocumentReferenceStatus', 'code'); // src.version -> tgt.version; src.docStatus as v -> tgt.docStatus = translate(v, '#ReferredDocumentStatus', 'code'); src.type -> tgt.type; // src.modality -> tgt.modality; src.category -> tgt.category; src.subject -> tgt.subject; src.context : Reference as s -> tgt.context as t, t.encounter = s; src.event as s -> tgt.context as t, t.event = s; src.facilityType as s -> tgt.context as t, t.facilityType = s; src.practiceSetting as s -> tgt.context as t, t.practiceSetting = s; src.period as s -> tgt.context as t, t.period = s; src.date -> tgt.date; // src.bodySite -> tgt.bodySite; src.author -> tgt.author; src.attester as s where src.attester.mode = 'professional' -> tgt then { s.party -> tgt.authenticator; }; src.custodian -> tgt.custodian; src.relatesTo as s -> tgt.relatesTo as t then DocumentReferenceRelatesTo(s, t); src.description -> tgt.description; src.securityLabel -> tgt.securityLabel; src.content as s -> tgt.content as t then DocumentReferenceContent(s, t); } group DocumentReferenceRelatesTo(source src, target tgt) extends BackboneElement { src.code as s -> tgt then { s.coding as sc -> tgt.code = sc; }; src.target -> tgt.target; } group DocumentReferenceContent(source src, target tgt) extends BackboneElement { src.attachment -> tgt.attachment; src.profile as s -> tgt then { s.value : Coding -> tgt.format; }; }
/// url = 'http://hl7.org/fhir/StructureMap/DocumentReference4Bto5' /// name = 'DocumentReference4Bto5' /// title = 'FML Conversion for DocumentReference: R4B to R5' /// status = 'active' conceptmap "DocumentReferenceStatus" { prefix s = "http://hl7.org/fhir/4.3/document-reference-status" prefix t = "http://hl7.org/fhir/document-reference-status" s:current - t:current s:superseded - t:superseded s:"entered-in-error" - t:"entered-in-error" } conceptmap "ReferredDocumentStatus" { prefix s = "http://hl7.org/fhir/4.3/composition-status" prefix t = "http://hl7.org/fhir/composition-status" s:preliminary - t:preliminary s:final - t:final s:amended - t:amended s:"entered-in-error" - t:"entered-in-error" } uses "http://hl7.org/fhir/4.3/StructureDefinition/DocumentReference" alias DocumentReferenceR4B as source uses "http://hl7.org/fhir/StructureDefinition/DocumentReference" alias DocumentReferenceR5 as target imports "http://hl7.org/fhir/StructureMap/*4Bto5" group DocumentReference(source src : DocumentReferenceR4B, target tgt : DocumentReferenceR5) extends DomainResource <<type+>> { src.masterIdentifier -> tgt.identifier; src.identifier -> tgt.identifier; src.status as v -> tgt.status = translate(v, '#DocumentReferenceStatus', 'code'); // src.version -> tgt.version; src.docStatus as v -> tgt.docStatus = translate(v, '#ReferredDocumentStatus', 'code'); src.type -> tgt.type; // src.modality -> tgt.modality; src.category -> tgt.category; src.subject -> tgt.subject; src.context as s -> tgt then { s.encounter : Reference -> tgt.context; s.event : CodeableConcept -> tgt.event; s.period -> tgt.period; s.facilityType -> tgt.facilityType; s.practiceSetting -> tgt.practiceSetting; }; src.date -> tgt.date; // src.bodySite -> tgt.bodySite; src.author -> tgt.author; src.authenticator as s -> tgt.attester as t, t.mode = 'professional'; // src.authenticator as s -> tgt.attester as t, t.mode = 'professional', t.party = s; src.authenticator : Reference as s -> tgt.attester as t, t.party = s; src.custodian -> tgt.custodian; src.relatesTo as s -> tgt.relatesTo as t then DocumentReferenceRelatesTo(s, t); src.description -> tgt.description; src.securityLabel -> tgt.securityLabel; src.content as s -> tgt.content as t then DocumentReferenceContent(s, t); } group DocumentReferenceRelatesTo(source src, target tgt) extends BackboneElement { src.code as s -> tgt.code = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://hl7.org/fhir/document-relationship-type', tcc.code = s; src.target -> tgt.target; } group DocumentReferenceContent(source src, target tgt) extends BackboneElement { src.attachment -> tgt.attachment; src.format : Coding as s -> tgt.profile as t, t.value = s; }
/// url = 'http://hl7.org/fhir/StructureMap/DocumentReference4to5' /// name = 'DocumentReference4to5' /// title = 'FML Conversion for DocumentReference: R4 to R5' /// status = 'active' conceptmap "DocumentReferenceStatus" { prefix s = "http://hl7.org/fhir/4.0/document-reference-status" prefix t = "http://hl7.org/fhir/document-reference-status" s:current - t:current s:superseded - t:superseded s:"entered-in-error" - t:"entered-in-error" } conceptmap "ReferredDocumentStatus" { prefix s = "http://hl7.org/fhir/4.0/composition-status" prefix t = "http://hl7.org/fhir/composition-status" s:preliminary - t:preliminary s:final - t:final s:amended - t:amended s:"entered-in-error" - t:"entered-in-error" } uses "http://hl7.org/fhir/4.0/StructureDefinition/DocumentReference" alias DocumentReferenceR4 as source uses "http://hl7.org/fhir/StructureDefinition/DocumentReference" alias DocumentReferenceR5 as target imports "http://hl7.org/fhir/StructureMap/*4to5" group DocumentReference(source src : DocumentReferenceR4, target tgt : DocumentReferenceR5) extends DomainResource <<type+>> { src.masterIdentifier -> tgt.identifier; src.identifier -> tgt.identifier; src.status as v -> tgt.status = translate(v, '#DocumentReferenceStatus', 'code'); // src.version -> tgt.version; src.docStatus as v -> tgt.docStatus = translate(v, '#ReferredDocumentStatus', 'code'); src.type -> tgt.type; // src.modality -> tgt.modality; src.category -> tgt.category; src.subject -> tgt.subject; src.context as s -> tgt then { s.encounter : Reference -> tgt.context; s.event : CodeableConcept -> tgt.event; s.period -> tgt.period; s.facilityType -> tgt.facilityType; s.practiceSetting -> tgt.practiceSetting; }; src.date -> tgt.date; // src.bodySite -> tgt.bodySite; src.author -> tgt.author; src.authenticator as s -> tgt.attester as t, t.mode = 'professional'; // src.authenticator as s -> tgt.attester as t, t.mode = 'professional', t.party = s; src.authenticator : Reference as s -> tgt.attester as t, t.party = s; src.custodian -> tgt.custodian; src.relatesTo as s -> tgt.relatesTo as t then DocumentReferenceRelatesTo(s, t); src.description -> tgt.description; src.securityLabel -> tgt.securityLabel; src.content as s -> tgt.content as t then DocumentReferenceContent(s, t); } group DocumentReferenceRelatesTo(source src, target tgt) extends BackboneElement { src.code as s -> tgt.code = create('CodeableConcept') as tc, tc.coding = create('Coding') as tcc, tcc.system = 'http://hl7.org/fhir/document-relationship-type', tcc.code = s; src.target -> tgt.target; } group DocumentReferenceContent(source src, target tgt) extends BackboneElement { src.attachment -> tgt.attachment; src.format : Coding as s -> tgt.profile as t, t.value = s; }