Package | hl7.fhir.uv.xver |
Resource Type | StructureMap |
Id | Requirement4to3 |
FHIR Version | R5 |
Source | http://hl7.org/fhir/extensions/https://build.fhir.org/ig/HL7/fhir-cross-version/StructureMap-Requirement4to3.html |
URL | http://hl7.org/fhir/StructureMap/DataRequirement4to3 |
Version | 0.1.0 |
Status | active |
Date | 2024-02-22T03:16:50+00:00 |
Name | Requirement4to3 |
Title | R4 to R3 Conversion for DataRequirement |
Realm | uv |
Authority | hl7 |
Description | R4toR3ConversionforDataRequirement |
No resources found
No resources found
Note: links and images are rebased to the (stated) source
/// url = 'http://hl7.org/fhir/StructureMap/DataRequirement4to3' /// name = 'Requirement4to3' /// title = 'R4 to R3 Conversion for DataRequirement' /// status = 'active' uses "http://hl7.org/fhir/4.0/DataRequirement" alias DataRequirement as source uses "http://hl7.org/fhir/3.0/DataRequirement" alias DataRequirementR3 as target imports "http://hl7.org/fhir/StructureMap/*4to3" group DataRequirement(source src : DataRequirement, target tgt : DataRequirementR3) extends Element <<type+>> { src.type -> tgt.type; src.profile -> tgt.profile; src.mustSupport -> tgt.mustSupport; src.codeFilter as vs0 -> tgt.codeFilter as vt0 then codeFiter(vs0, vt0); src.dateFilter as vs0 -> tgt.dateFilter as vt0 then dateFilter(vs0, vt0); } group codeFiter(source src, target tgt) extends Element { src.path -> tgt.path; src.valueSet as vs -> tgt.valueSet = create('string') as vt then canonical2string(vs, vt); src.code as vs where system.empty() then { vs.code -> tgt.valueCode; }; src.code as vs where system.exists() -> tgt.valueCoding; } group dateFilter(source src, target tgt) extends Element { src.path -> tgt.path; src.value : dateTime as vs -> tgt.value = create('dateTime') as vt then dateTime(vs, vt); src.value : Period as vs -> tgt.value = create('Period') as vt then Period(vs, vt); src.value : Duration as vs -> tgt.value = create('Duration') as vt then Duration(vs, vt); }
{ "resourceType": "StructureMap", "id": "Requirement4to3", "text": { "status": "generated", "div": "<!-- snip (see above) -->" }, "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", "valueCode": "fhir" }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm", "valueInteger": 1, "_valueInteger": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom", "valueCanonical": "http://hl7.org/fhir/extensions/ImplementationGuide/hl7.fhir.uv.xver" } ] } }, { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status", "valueCode": "draft", "_valueCode": { "extension": [ { "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom", "valueCanonical": "http://hl7.org/fhir/extensions/ImplementationGuide/hl7.fhir.uv.xver" } ] } } ], "url": "http://hl7.org/fhir/StructureMap/DataRequirement4to3", "version": "0.1.0", "name": "Requirement4to3", "title": "R4 to R3 Conversion for DataRequirement", "status": "active", "date": "2024-02-22T03:16:50+00:00", "publisher": "HL7 International / FHIR Infrastructure", "contact": [ { "telecom": [ { "system": "url", "value": "http://www.hl7.org/Special/committees/fiwg" } ] } ], "description": "R4toR3ConversionforDataRequirement", "jurisdiction": [ { "coding": [ { "system": "http://unstats.un.org/unsd/methods/m49/m49.htm", "code": "001" } ] } ], "structure": [ { "url": "http://hl7.org/fhir/4.0/DataRequirement", "mode": "source", "alias": "DataRequirement" }, { "url": "http://hl7.org/fhir/3.0/DataRequirement", "mode": "target", "alias": "DataRequirementR3" } ], "import": [ "http://hl7.org/fhir/StructureMap/*4to3" ], "group": [ { "name": "DataRequirement", "extends": "Element", "typeMode": "type-and-types", "input": [ { "name": "src", "type": "DataRequirement", "mode": "source" }, { "name": "tgt", "type": "DataRequirementR3", "mode": "target" } ], "rule": [ { "name": "type", "source": [ { "context": "src", "element": "type", "variable": "vvv" } ], "target": [ { "context": "tgt", "element": "type", "variable": "vvv", "transform": "create" } ], "dependent": [ { "name": "DefaultMappingGroupAnonymousAlias", "parameter": [ { "valueId": "vvv" }, { "valueId": "vvv" } ] } ] }, { "name": "profile", "source": [ { "context": "src", "element": "profile", "variable": "vvv" } ], "target": [ { "context": "tgt", "element": "profile", "variable": "vvv", "transform": "create" } ], "dependent": [ { "name": "DefaultMappingGroupAnonymousAlias", "parameter": [ { "valueId": "vvv" }, { "valueId": "vvv" } ] } ] }, { "name": "mustSupport", "source": [ { "context": "src", "element": "mustSupport", "variable": "vvv" } ], "target": [ { "context": "tgt", "element": "mustSupport", "variable": "vvv", "transform": "create" } ], "dependent": [ { "name": "DefaultMappingGroupAnonymousAlias", "parameter": [ { "valueId": "vvv" }, { "valueId": "vvv" } ] } ] }, { "name": "codeFilter", "source": [ { "context": "src", "element": "codeFilter", "variable": "vs0" } ], "target": [ { "context": "tgt", "element": "codeFilter", "variable": "vt0" } ], "dependent": [ { "name": "codeFiter", "parameter": [ { "valueId": "vs0" }, { "valueId": "vt0" } ] } ] }, { "name": "dateFilter", "source": [ { "context": "src", "element": "dateFilter", "variable": "vs0" } ], "target": [ { "context": "tgt", "element": "dateFilter", "variable": "vt0" } ], "dependent": [ { "name": "dateFilter", "parameter": [ { "valueId": "vs0" }, { "valueId": "vt0" } ] } ] } ] }, { "name": "codeFiter", "extends": "Element", "input": [ { "name": "src", "mode": "source" }, { "name": "tgt", "mode": "target" } ], "rule": [ { "name": "path", "source": [ { "context": "src", "element": "path", "variable": "vvv" } ], "target": [ { "context": "tgt", "element": "path", "variable": "vvv", "transform": "create" } ], "dependent": [ { "name": "DefaultMappingGroupAnonymousAlias", "parameter": [ { "valueId": "vvv" }, { "valueId": "vvv" } ] } ] }, { "name": "valueSet", "source": [ { "context": "src", "element": "valueSet", "variable": "vs" } ], "target": [ { "context": "tgt", "element": "valueSet", "variable": "vt", "transform": "create", "parameter": [ { "valueString": "string" } ] } ], "dependent": [ { "name": "canonical2string", "parameter": [ { "valueId": "vs" }, { "valueId": "vt" } ] } ] }, { "name": "code", "source": [ { "context": "src", "element": "code", "variable": "vs", "condition": "system.empty()" } ], "rule": [ { "name": "code", "source": [ { "context": "vs", "element": "code", "variable": "vvv" } ], "target": [ { "context": "tgt", "element": "valueCode", "variable": "vvv", "transform": "create" } ], "dependent": [ { "name": "DefaultMappingGroupAnonymousAlias", "parameter": [ { "valueId": "vvv" }, { "valueId": "vvv" } ] } ] } ] }, { "name": "code", "source": [ { "context": "src", "element": "code", "variable": "vs", "condition": "system.exists()" } ], "target": [ { "context": "tgt", "element": "valueCoding" } ] } ] }, { "name": "dateFilter", "extends": "Element", "input": [ { "name": "src", "mode": "source" }, { "name": "tgt", "mode": "target" } ], "rule": [ { "name": "path", "source": [ { "context": "src", "element": "path", "variable": "vvv" } ], "target": [ { "context": "tgt", "element": "path", "variable": "vvv", "transform": "create" } ], "dependent": [ { "name": "DefaultMappingGroupAnonymousAlias", "parameter": [ { "valueId": "vvv" }, { "valueId": "vvv" } ] } ] }, { "name": "valueDateTime", "source": [ { "context": "src", "type": "dateTime", "element": "value", "variable": "vs" } ], "target": [ { "context": "tgt", "element": "value", "variable": "vt", "transform": "create", "parameter": [ { "valueString": "dateTime" } ] } ], "dependent": [ { "name": "dateTime", "parameter": [ { "valueId": "vs" }, { "valueId": "vt" } ] } ] }, { "name": "valuePeriod", "source": [ { "context": "src", "type": "Period", "element": "value", "variable": "vs" } ], "target": [ { "context": "tgt", "element": "value", "variable": "vt", "transform": "create", "parameter": [ { "valueString": "Period" } ] } ], "dependent": [ { "name": "Period", "parameter": [ { "valueId": "vs" }, { "valueId": "vt" } ] } ] }, { "name": "valueDuration", "source": [ { "context": "src", "type": "Duration", "element": "value", "variable": "vs" } ], "target": [ { "context": "tgt", "element": "value", "variable": "vt", "transform": "create", "parameter": [ { "valueString": "Duration" } ] } ], "dependent": [ { "name": "Duration", "parameter": [ { "valueId": "vs" }, { "valueId": "vt" } ] } ] } ] } ] }