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

FHIR IG Statistics: StructureMap/MedicationOrder2to3

Packagehl7.fhir.uv.xver
Resource TypeStructureMap
IdMedicationOrder2to3
FHIR VersionR5
Sourcehttp://hl7.org/fhir/extensions/https://build.fhir.org/ig/HL7/fhir-cross-version/StructureMap-MedicationOrder2to3.html
URLhttp://hl7.org/fhir/StructureMap/MedicationOrder2to3
Version0.1.0
Statusactive
Date2024-02-22T03:16:50+00:00
NameMedicationOrder2to3
TitleMedicationOrder Transforms: R2 to R3
Realmuv
Authorityhl7
DescriptionMedicationOrderTransformsR2toR3

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/MedicationOrder2to3'
/// name = 'MedicationOrder2to3'
/// title = 'MedicationOrder Transforms: R2 to R3'
/// status = 'active'

uses "http://hl7.org/fhir/1.0/MedicationOrder" alias MedicationOrderR2 as source
uses "http://hl7.org/fhir/3.0/MedicationRequest" alias MedicationRequest as target

imports "http://hl7.org/fhir/StructureMap/*2to3"

group MedicationOrder(source src : MedicationOrderR2, target tgt : MedicationRequest) extends DomainResource <<type+>> {
  src -> tgt.intent = 'order' "MedicationOrder-intent";
  src.identifier -> tgt.identifier "MedicationOrder-identifier";
  src.dateWritten -> tgt.authoredOn "MedicationOrder-dateWritten";
  src.status -> tgt.status "MedicationOrder-status";
  src.patient -> tgt.subject "MedicationOrder-patient";
  src where prescriber.exists() -> tgt.requester as vt then medRequestor(src, vt) "MedicationOrder-prescriber";
  src.encounter -> tgt.context "MedicationOrder-encounter";
  src.reason where $this is CodeableConcept -> tgt.reasonCode "MedicationOrder-reasonCode";
  src.reason where $this is Reference -> tgt.reasonReference "MedicationOrder-reasonCode";
  src.note -> tgt.note "MedicationOrder-note";
  src.medication -> tgt.medication "MedicationOrder-medication";
  src.dosageInstruction as vs -> tgt.dosageInstruction as vt then medDosageInstruction(vs, vt) "MedicationOrder-dosageInstruction";
  src.dispenseRequest as vs check medication.empty() -> tgt.dispenseRequest as vt then medDispenseRequest(vs, vt) "MedicationOrder-dispenseRequest";
  src.substitution as vs -> tgt.substitution as vt then medSubstitution(vs, vt) "MedicationOrder-substitution";
  src.priorPrescription -> tgt.priorPrescription "MedicationOrder-priorPrescription";
}

group medDosageInstruction(source src, target tgt) extends Element {
  src.text -> tgt.text "dosage-text";
  src.additionalInstructions -> tgt.additionalInstruction "dosage-additionalInstructions";
  src.timing -> tgt.timing "dosage-timing";
  src.asNeeded -> tgt.asNeeded "dosage-asNeeded";
  src.site where $this is CodeableConcept -> tgt.site "dosage-site";
  src.route -> tgt.route "dosage-route";
  src.method -> tgt.method "dosage-method";
  src.dose -> tgt.dose "dosage-dose";
  src.rate -> tgt.rate "dosage-rate";
  src.maxDosePerPeriod -> tgt.maxDosePerPeriod "dosage-maxDosePerPeriod";
}

group medDispenseRequest(source src, target tgt) extends BackboneElement {
  src.validityPeriod -> tgt.validityPeriod "dispenseRequest-validityPeriod";
  src.numberOfRepeatsAllowed -> tgt.numberOfRepeatsAllowed "dispenseRequest-numberOfRepeatsAllowed";
  src.quantity -> tgt.quantity "dispenseRequest-quantity";
  src.expectedSupplyDuration as v -> tgt.expectedSupplyDuration as d then QuantityToDuration(v, d) "dispenseRequest-expectedSupplyDuration";
}

group medSubstitution(source src, target tgt) extends BackboneElement {
  src.reason -> tgt.reason "substitution-reason";
}

group medRequestor(source src, target tgt) {
  src.prescriber -> tgt.agent "MedicationOrder-prescriber2";
}


Source

{
  "resourceType": "StructureMap",
  "id": "MedicationOrder2to3",
  "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/MedicationOrder2to3",
  "version": "0.1.0",
  "name": "MedicationOrder2to3",
  "title": "MedicationOrder Transforms: R2 to R3",
  "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": "MedicationOrderTransformsR2toR3",
  "jurisdiction": [
    {
      "coding": [
        {
          "system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
          "code": "001"
        }
      ]
    }
  ],
  "structure": [
    {
      "url": "http://hl7.org/fhir/1.0/MedicationOrder",
      "mode": "source",
      "alias": "MedicationOrderR2"
    },
    {
      "url": "http://hl7.org/fhir/3.0/MedicationRequest",
      "mode": "target",
      "alias": "MedicationRequest"
    }
  ],
  "import": [
    "http://hl7.org/fhir/StructureMap/*2to3"
  ],
  "group": [
    {
      "name": "MedicationOrder",
      "extends": "DomainResource",
      "typeMode": "type-and-types",
      "input": [
        {
          "name": "src",
          "type": "MedicationOrderR2",
          "mode": "source"
        },
        {
          "name": "tgt",
          "type": "MedicationRequest",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "MedicationOrder-intent",
          "source": [
            {
              "context": "src"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "intent",
              "transform": "copy",
              "parameter": [
                {
                  "valueString": "order"
                }
              ]
            }
          ]
        },
        {
          "name": "MedicationOrder-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": "MedicationOrder-dateWritten",
          "source": [
            {
              "context": "src",
              "element": "dateWritten",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "authoredOn",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "MedicationOrder-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": "MedicationOrder-patient",
          "source": [
            {
              "context": "src",
              "element": "patient",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "subject",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "MedicationOrder-prescriber",
          "source": [
            {
              "context": "src",
              "condition": "prescriber.exists()"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "requester",
              "variable": "vt"
            }
          ],
          "dependent": [
            {
              "name": "medRequestor",
              "parameter": [
                {
                  "valueId": "src"
                },
                {
                  "valueId": "vt"
                }
              ]
            }
          ]
        },
        {
          "name": "MedicationOrder-encounter",
          "source": [
            {
              "context": "src",
              "element": "encounter",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "context",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "MedicationOrder-reasonCode",
          "source": [
            {
              "context": "src",
              "element": "reason",
              "variable": "vvv",
              "condition": "$this is CodeableConcept"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "reasonCode",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "MedicationOrder-reasonCode",
          "source": [
            {
              "context": "src",
              "element": "reason",
              "variable": "vvv",
              "condition": "$this is Reference"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "reasonReference",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "MedicationOrder-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": "MedicationOrder-medication",
          "source": [
            {
              "context": "src",
              "element": "medication",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "medication",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "MedicationOrder-dosageInstruction",
          "source": [
            {
              "context": "src",
              "element": "dosageInstruction",
              "variable": "vs"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "dosageInstruction",
              "variable": "vt"
            }
          ],
          "dependent": [
            {
              "name": "medDosageInstruction",
              "parameter": [
                {
                  "valueId": "vs"
                },
                {
                  "valueId": "vt"
                }
              ]
            }
          ]
        },
        {
          "name": "MedicationOrder-dispenseRequest",
          "source": [
            {
              "context": "src",
              "element": "dispenseRequest",
              "variable": "vs",
              "check": "medication.empty()"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "dispenseRequest",
              "variable": "vt"
            }
          ],
          "dependent": [
            {
              "name": "medDispenseRequest",
              "parameter": [
                {
                  "valueId": "vs"
                },
                {
                  "valueId": "vt"
                }
              ]
            }
          ]
        },
        {
          "name": "MedicationOrder-substitution",
          "source": [
            {
              "context": "src",
              "element": "substitution",
              "variable": "vs"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "substitution",
              "variable": "vt"
            }
          ],
          "dependent": [
            {
              "name": "medSubstitution",
              "parameter": [
                {
                  "valueId": "vs"
                },
                {
                  "valueId": "vt"
                }
              ]
            }
          ]
        },
        {
          "name": "MedicationOrder-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": "medDosageInstruction",
      "extends": "Element",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "dosage-text",
          "source": [
            {
              "context": "src",
              "element": "text",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "text",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "dosage-additionalInstructions",
          "source": [
            {
              "context": "src",
              "element": "additionalInstructions",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "additionalInstruction",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "dosage-timing",
          "source": [
            {
              "context": "src",
              "element": "timing",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "timing",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "dosage-asNeeded",
          "source": [
            {
              "context": "src",
              "element": "asNeeded",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "asNeeded",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "dosage-site",
          "source": [
            {
              "context": "src",
              "element": "site",
              "variable": "vvv",
              "condition": "$this is CodeableConcept"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "site",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "dosage-route",
          "source": [
            {
              "context": "src",
              "element": "route",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "route",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "dosage-method",
          "source": [
            {
              "context": "src",
              "element": "method",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "method",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "dosage-dose",
          "source": [
            {
              "context": "src",
              "element": "dose",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "dose",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "dosage-rate",
          "source": [
            {
              "context": "src",
              "element": "rate",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "rate",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        },
        {
          "name": "dosage-maxDosePerPeriod",
          "source": [
            {
              "context": "src",
              "element": "maxDosePerPeriod",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "maxDosePerPeriod",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "medDispenseRequest",
      "extends": "BackboneElement",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "dispenseRequest-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": "dispenseRequest-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": "dispenseRequest-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": "dispenseRequest-expectedSupplyDuration",
          "source": [
            {
              "context": "src",
              "element": "expectedSupplyDuration",
              "variable": "v"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "expectedSupplyDuration",
              "variable": "d"
            }
          ],
          "dependent": [
            {
              "name": "QuantityToDuration",
              "parameter": [
                {
                  "valueId": "v"
                },
                {
                  "valueId": "d"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "medSubstitution",
      "extends": "BackboneElement",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "substitution-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"
                }
              ]
            }
          ]
        }
      ]
    },
    {
      "name": "medRequestor",
      "input": [
        {
          "name": "src",
          "mode": "source"
        },
        {
          "name": "tgt",
          "mode": "target"
        }
      ],
      "rule": [
        {
          "name": "MedicationOrder-prescriber2",
          "source": [
            {
              "context": "src",
              "element": "prescriber",
              "variable": "vvv"
            }
          ],
          "target": [
            {
              "context": "tgt",
              "element": "agent",
              "variable": "vvv",
              "transform": "create"
            }
          ],
          "dependent": [
            {
              "name": "DefaultMappingGroupAnonymousAlias",
              "parameter": [
                {
                  "valueId": "vvv"
                },
                {
                  "valueId": "vvv"
                }
              ]
            }
          ]
        }
      ]
    }
  ]
}