FHIR © HL7.org  |  Server Home  |  XIG Home  |  XIG Stats  |  Server Source  |  FHIR  

FHIR IG Statistics: StructureMap/MedicationRequest3to4

Packagehl7.fhir.uv.xver
Resource TypeStructureMap
IdMedicationRequest3to4
FHIR VersionR5
Sourcehttp://hl7.org/fhir/extensions/https://build.fhir.org/ig/HL7/fhir-cross-version/StructureMap-MedicationRequest3to4.html
URLhttp://hl7.org/fhir/StructureMap/MedicationRequest3to4
Version0.1.0
Statusactive
Date2024-02-22T03:16:50+00:00
NameMedicationRequest3to4
TitleMedicationRequest Transforms: R3 to R4
Realmuv
Authorityhl7
DescriptionMedicationRequestTransformsR3toR4

Resources that use this resource

No resources found


Resources that this resource uses

No resources found


Narrative

Note: links and images are rebased to the (stated) source

/// url = 'http://hl7.org/fhir/StructureMap/MedicationRequest3to4'
/// name = 'MedicationRequest3to4'
/// title = 'MedicationRequest Transforms: R3 to R4'
/// status = 'active'

uses "http://hl7.org/fhir/3.0/MedicationRequest" alias MedicationRequestR3 as source
uses "http://hl7.org/fhir/4.0/MedicationRequest" alias MedicationRequest as target

imports "http://hl7.org/fhir/StructureMap/*3to4"

group MedicationRequest(source src : MedicationRequestR3, target tgt : MedicationRequest) extends DomainResource <<type+>> {
  src.identifier -> tgt.identifier;
  src.definition -> tgt.instantiatesCanonical;
  src.basedOn -> tgt.basedOn;
  src.groupIdentifier -> tgt.groupIdentifier;
  src.status -> tgt.status;
  src.intent -> tgt.intent;
  src.category -> tgt.category;
  src.priority -> tgt.priority;
  src.medication : CodeableConcept as vs -> tgt.medication = create('CodeableConcept') as vt then CodeableConcept(vs, vt);
  src.medication : Reference as vs -> tgt.medication = create('Reference') as vt then Reference(vs, vt);
  src.subject -> tgt.subject;
  src.context -> tgt.encounter;
  src.supportingInformation -> tgt.supportingInformation;
  src.authoredOn -> tgt.authoredOn;
  src.requester as vs0 then requester(vs0, tgt);
  src.recorder -> tgt.recorder;
  src.reasonCode -> tgt.reasonCode;
  src.reasonReference -> tgt.reasonReference;
  src.note -> tgt.note;
  src.dosageInstruction -> tgt.dosageInstruction;
  src.dispenseRequest as vs0 -> tgt.dispenseRequest as vt0 then dispense(vs0, vt0);
  src.substitution as vs0 -> tgt.substitution as vt0 then subst(vs0, vt0);
  src.priorPrescription -> tgt.priorPrescription;
  src.detectedIssue -> tgt.detectedIssue;
  src.eventHistory -> tgt.eventHistory;
}

group requester(source src, target tgt) {
  src.agent -> tgt.requester;
  src.onBehalfOf as v ->  tgt.extension as vt,  vt.url = 'http://hl7.org/fhir/3.0/StructureDefinition/extension-MedicationRequest.requester.onBehalfOf',  vt.value = v;
}

group dispense(source src, target tgt) {
  src.validityPeriod -> tgt.validityPeriod;
  src.numberOfRepeatsAllowed -> tgt.numberOfRepeatsAllowed;
  src.quantity -> tgt.quantity;
  src.expectedSupplyDuration -> tgt.expectedSupplyDuration;
  src.performer -> tgt.performer;
}

group subst(source src, target tgt) {
  src.allowed as vs -> tgt.allowed = create('boolean') as vt then boolean(vs, vt);
  src.reason -> tgt.reason;
}


Source

{
  "resourceType": "StructureMap",
  "id": "MedicationRequest3to4",
  "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/MedicationRequest3to4",
  "version": "0.1.0",
  "name": "MedicationRequest3to4",
  "title": "MedicationRequest Transforms: R3 to R4",
  "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": "MedicationRequestTransformsR3toR4",
  "jurisdiction": [
    {
      "coding": [
        {
          "system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
          "code": "001"
        }
      ]
    }
  ],
  "structure": [
    {
      "url": "http://hl7.org/fhir/3.0/MedicationRequest",
      "mode": "source",
      "alias": "MedicationRequestR3"
    },
    {
      "url": "http://hl7.org/fhir/4.0/MedicationRequest",
      "mode": "target",
      "alias": "MedicationRequest"
    }
  ],
  "import": [
    "http://hl7.org/fhir/StructureMap/*3to4"
  ],
  "group": [
    {
      "name": "MedicationRequest",
      "extends": "DomainResource",
      "typeMode": "type-and-types",
      "input": [
        {
          "name": "src",
          "type": "MedicationRequestR3",
          "mode": "source"
        },
        {
          "name": "tgt",
          "type": "MedicationRequest",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "identifier",
          "source": [
            {
              "context": "src",
              "element": "identifier",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "identifier",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "definition",
          "source": [
            {
              "context": "src",
              "element": "definition",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "instantiatesCanonical",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "basedOn",
          "source": [
            {
              "context": "src",
              "element": "basedOn",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "basedOn",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "groupIdentifier",
          "source": [
            {
              "context": "src",
              "element": "groupIdentifier",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "groupIdentifier",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "status",
          "source": [
            {
              "context": "src",
              "element": "status",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "status",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "intent",
          "source": [
            {
              "context": "src",
              "element": "intent",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "intent",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "category",
          "source": [
            {
              "context": "src",
              "element": "category",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "category",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "priority",
          "source": [
            {
              "context": "src",
              "element": "priority",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "priority",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "medicationCodeableConcept",
          "source": [
            {
              "context": "src",
              "type": "CodeableConcept",
              "element": "medication",
              "variable": "vs"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "medication",
              "variable": "vt",
              "transform": "create",
              "parameter": [
                {
                  "valueString": "CodeableConcept"
                }
              ]
            }
          ],
          "dependent": [
            {
              "name": "CodeableConcept",
              "parameter": [
                {
                  "valueId": "vs"
                },
                {
                  "valueId": "vt"
                }
              ]
            }
          ]
        },
        {
          "name": "medicationReference",
          "source": [
            {
              "context": "src",
              "type": "Reference",
              "element": "medication",
              "variable": "vs"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "medication",
              "variable": "vt",
              "transform": "create",
              "parameter": [
                {
                  "valueString": "Reference"
                }
              ]
            }
          ],
          "dependent": [
            {
              "name": "Reference",
              "parameter": [
                {
                  "valueId": "vs"
                },
                {
                  "valueId": "vt"
                }
              ]
            }
          ]
        },
        {
          "name": "subject",
          "source": [
            {
              "context": "src",
              "element": "subject",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "subject",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "context",
          "source": [
            {
              "context": "src",
              "element": "context",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "encounter",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "supportingInformation",
          "source": [
            {
              "context": "src",
              "element": "supportingInformation",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "supportingInformation",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "authoredOn",
          "source": [
            {
              "context": "src",
              "element": "authoredOn",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "authoredOn",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "requester",
          "source": [
            {
              "context": "src",
              "element": "requester",
              "variable": "vs0"
            }
          ],
          "dependent": [
            {
              "name": "requester",
              "parameter": [
                {
                  "valueId": "vs0"
                },
                {
                  "valueId": "tgt"
                }
              ]
            }
          ]
        },
        {
          "name": "recorder",
          "source": [
            {
              "context": "src",
              "element": "recorder",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "recorder",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "reasonCode",
          "source": [
            {
              "context": "src",
              "element": "reasonCode",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "reasonCode",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "reasonReference",
          "source": [
            {
              "context": "src",
              "element": "reasonReference",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "reasonReference",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "note",
          "source": [
            {
              "context": "src",
              "element": "note",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "note",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "dosageInstruction",
          "source": [
            {
              "context": "src",
              "element": "dosageInstruction",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "dosageInstruction",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "dispenseRequest",
          "source": [
            {
              "context": "src",
              "element": "dispenseRequest",
              "variable": "vs0"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "dispenseRequest",
              "variable": "vt0"
            }
          ],
          "dependent": [
            {
              "name": "dispense",
              "parameter": [
                {
                  "valueId": "vs0"
                },
                {
                  "valueId": "vt0"
                }
              ]
            }
          ]
        },
        {
          "name": "substitution",
          "source": [
            {
              "context": "src",
              "element": "substitution",
              "variable": "vs0"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "substitution",
              "variable": "vt0"
            }
          ],
          "dependent": [
            {
              "name": "subst",
              "parameter": [
                {
                  "valueId": "vs0"
                },
                {
                  "valueId": "vt0"
                }
              ]
            }
          ]
        },
        {
          "name": "priorPrescription",
          "source": [
            {
              "context": "src",
              "element": "priorPrescription",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "priorPrescription",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "detectedIssue",
          "source": [
            {
              "context": "src",
              "element": "detectedIssue",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "detectedIssue",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "eventHistory",
          "source": [
            {
              "context": "src",
              "element": "eventHistory",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "eventHistory",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "requester",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "agent",
          "source": [
            {
              "context": "src",
              "element": "agent",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "requester",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "onBehalfOf",
          "source": [
            {
              "context": "src",
              "element": "onBehalfOf",
              "variable": "v"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "extension",
              "variable": "vt"
            },
            {
              "context": "vt",
              "element": "url",
              "transform": "copy",
              "parameter": [
                {
                  "valueString": "http://hl7.org/fhir/3.0/StructureDefinition/extension-MedicationRequest.requester.onBehalfOf"
                }
              ]
            },
            {
              "context": "vt",
              "element": "value",
              "transform": "copy",
              "parameter": [
                {
                  "valueId": "v"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "dispense",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "validityPeriod",
          "source": [
            {
              "context": "src",
              "element": "validityPeriod",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "validityPeriod",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "numberOfRepeatsAllowed",
          "source": [
            {
              "context": "src",
              "element": "numberOfRepeatsAllowed",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "numberOfRepeatsAllowed",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "quantity",
          "source": [
            {
              "context": "src",
              "element": "quantity",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "quantity",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "expectedSupplyDuration",
          "source": [
            {
              "context": "src",
              "element": "expectedSupplyDuration",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "expectedSupplyDuration",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "performer",
          "source": [
            {
              "context": "src",
              "element": "performer",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "performer",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "subst",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "allowed",
          "source": [
            {
              "context": "src",
              "element": "allowed",
              "variable": "vs"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "allowed",
              "variable": "vt",
              "transform": "create",
              "parameter": [
                {
                  "valueString": "boolean"
                }
              ]
            }
          ],
          "dependent": [
            {
              "name": "boolean",
              "parameter": [
                {
                  "valueId": "vs"
                },
                {
                  "valueId": "vt"
                }
              ]
            }
          ]
        },
        {
          "name": "reason",
          "source": [
            {
              "context": "src",
              "element": "reason",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "reason",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}