This page is part of the FHIR Core Extensions Registry (v5.1.0: Release 5.1) based on FHIR (HL7® FHIR® Standard) v5.0.0. This is the current published version. For a full list of available versions, see the Directory of published versions
Official URL: http://hl7.org/fhir/StructureMap/RequestOrchestration4to5 | Version: 5.1.0 | |||
Standards status: Trial-use | Maturity Level: 1 | Computable Name: RequestOrchestration4to5 |
FMLConversionforRequestOrchestrationR4toR5
/// url = 'http://hl7.org/fhir/StructureMap/RequestOrchestration4to5' /// name = 'RequestOrchestration4to5' /// title = 'FML Conversion for RequestOrchestration: R4 to R5' /// status = 'active' conceptmap "ActionCardinalityBehavior" { prefix s = "http://hl7.org/fhir/4.0/action-cardinality-behavior" prefix t = "http://hl7.org/fhir/action-cardinality-behavior" s:single - t:single s:multiple - t:multiple } conceptmap "ActionConditionKind" { prefix s = "http://hl7.org/fhir/4.0/action-condition-kind" prefix t = "http://hl7.org/fhir/action-condition-kind" s:applicability - t:applicability s:start - t:start s:stop - t:stop } conceptmap "ActionGroupingBehavior" { prefix s = "http://hl7.org/fhir/4.0/action-grouping-behavior" prefix t = "http://hl7.org/fhir/action-grouping-behavior" s:"visual-group" - t:"visual-group" s:"logical-group" - t:"logical-group" s:"sentence-group" - t:"sentence-group" } conceptmap "ActionPrecheckBehavior" { prefix s = "http://hl7.org/fhir/4.0/action-precheck-behavior" prefix t = "http://hl7.org/fhir/action-precheck-behavior" s:yes - t:yes s:no - t:no } conceptmap "ActionRelationshipType" { prefix s = "http://hl7.org/fhir/4.0/action-relationship-type" prefix t = "http://hl7.org/fhir/action-relationship-type" s:before - t:before s:"before-start" - t:"before-start" s:"before-end" - t:"before-end" s:concurrent - t:concurrent s:"concurrent-with-start" - t:"concurrent-with-start" s:"concurrent-with-end" - t:"concurrent-with-end" s:after - t:after s:"after-start" - t:"after-start" s:"after-end" - t:"after-end" } conceptmap "ActionRequiredBehavior" { prefix s = "http://hl7.org/fhir/4.0/action-required-behavior" prefix t = "http://hl7.org/fhir/action-required-behavior" s:must - t:must s:could - t:could s:"must-unless-documented" - t:"must-unless-documented" } conceptmap "ActionSelectionBehavior" { prefix s = "http://hl7.org/fhir/4.0/action-selection-behavior" prefix t = "http://hl7.org/fhir/action-selection-behavior" s:any - t:any s:all - t:all s:"all-or-none" - t:"all-or-none" s:"exactly-one" - t:"exactly-one" s:"at-most-one" - t:"at-most-one" s:"one-or-more" - t:"one-or-more" } conceptmap "RequestIntent" { prefix s = "http://hl7.org/fhir/4.0/request-intent" prefix t = "http://hl7.org/fhir/request-intent" s:proposal - t:proposal s:plan - t:plan s:directive - t:directive s:order - t:order s:"original-order" - t:"original-order" s:"reflex-order" - t:"reflex-order" s:"filler-order" - t:"filler-order" s:"instance-order" - t:"instance-order" s:option - t:option } conceptmap "RequestPriority" { prefix s = "http://hl7.org/fhir/4.0/request-priority" prefix t = "http://hl7.org/fhir/request-priority" s:routine - t:routine s:urgent - t:urgent s:asap - t:asap s:stat - t:stat } conceptmap "RequestStatus" { prefix s = "http://hl7.org/fhir/4.0/request-status" prefix t = "http://hl7.org/fhir/request-status" s:draft - t:draft s:active - t:active s:"on-hold" - t:"on-hold" s:revoked - t:revoked s:completed - t:completed s:"entered-in-error" - t:"entered-in-error" s:unknown - t:unknown } uses "http://hl7.org/fhir/4.0/StructureDefinition/RequestGroup" alias RequestGroupR4 as source uses "http://hl7.org/fhir/StructureDefinition/RequestOrchestration" alias RequestOrchestrationR5 as target imports "http://hl7.org/fhir/StructureMap/*4to5" group RequestOrchestration(source src : RequestGroupR4, target tgt : RequestOrchestrationR5) extends DomainResource <<type+>> { src.identifier -> tgt.identifier; src.instantiatesCanonical -> tgt.instantiatesCanonical; src.instantiatesUri -> tgt.instantiatesUri; src.basedOn -> tgt.basedOn; src.replaces -> tgt.replaces; src.groupIdentifier -> tgt.groupIdentifier; src.status as v -> tgt.status = translate(v, '#RequestStatus', 'code'); src.intent as v -> tgt.intent = translate(v, '#RequestIntent', 'code'); src.priority as v -> tgt.priority = translate(v, '#RequestPriority', 'code'); src.code -> tgt.code; src.subject -> tgt.subject; src.encounter -> tgt.encounter; src.authoredOn -> tgt.authoredOn; src.author -> tgt.author; src.reasonCode : CodeableConcept -> tgt.reason; src.reasonReference : Reference -> tgt.reason; src.note -> tgt.note; // src.goal -> tgt.goal; src.action as s -> tgt.action as t then RequestOrchestrationAction(s, t); } group RequestOrchestrationAction(source src, target tgt) extends BackboneElement { src.prefix -> tgt.prefix; // src.linkId -> tgt.linkId; src.title -> tgt.title; src.description -> tgt.description; src.textEquivalent -> tgt.textEquivalent; src.priority as v -> tgt.priority = translate(v, '#RequestPriority', 'code'); src.code -> tgt.code; src.documentation -> tgt.documentation; src.condition as s -> tgt.condition as t then RequestOrchestrationActionCondition(s, t); // src.goal -> tgt.goal; src.relatedAction as s -> tgt.relatedAction as t then RequestOrchestrationActionRelatedAction(s, t); // src.input as s -> tgt.input as t then RequestOrchestrationActionInput(s,t); src.timing : dateTime -> tgt.timing; src.timing : Age -> tgt.timing; src.timing : Period -> tgt.timing; src.timing : Duration -> tgt.timing; src.timing : Range -> tgt.timing; src.timing : Timing -> tgt.timing; src.participant : Reference as s -> tgt.participant as t, t.actor = s; // src.location -> tgt.location; src.type -> tgt.type; src.groupingBehavior as v -> tgt.groupingBehavior = translate(v, '#ActionGroupingBehavior', 'code'); src.selectionBehavior as v -> tgt.selectionBehavior = translate(v, '#ActionSelectionBehavior', 'code'); src.requiredBehavior as v -> tgt.requiredBehavior = translate(v, '#ActionRequiredBehavior', 'code'); src.precheckBehavior as v -> tgt.precheckBehavior = translate(v, '#ActionPrecheckBehavior', 'code'); src.cardinalityBehavior as v -> tgt.cardinalityBehavior = translate(v, '#ActionCardinalityBehavior', 'code'); src.resource -> tgt.resource; } group RequestOrchestrationActionCondition(source src, target tgt) extends BackboneElement { src.kind as v -> tgt.kind = translate(v, '#ActionConditionKind', 'code'); src.expression -> tgt.expression; } // group RequestOrchestrationActionInput(source src, target tgt) extends BackboneElement { // src.title -> tgt.title; // src.requirement -> tgt.requirement; // src.relatedData -> tgt.relatedData; // } // group RequestOrchestrationActionOutput(source src, target tgt) extends BackboneElement { // src.title -> tgt.title; // src.requirement -> tgt.requirement; // src.relatedData -> tgt.relatedData; // } group RequestOrchestrationActionRelatedAction(source src, target tgt) extends BackboneElement { src.actionId -> tgt.targetId; src.relationship as v -> tgt.relationship = translate(v, '#ActionRelationshipType', 'code'); src.offset : Duration -> tgt.offset; // src.endRelationship as v -> tgt.endRelationship = translate(v, '#ActionRelationshipType', 'code'); src.offset : Range -> tgt.offset; }