BmiQuestionnaireResponseToObservations
type: StructureMap
node role: treeRoot
resource.id:
  value: BmiQuestionnaireResponseToObservations
domain resource.text:
  narrative.status:
    value: generated
  narrative.div: Generated Narrative: StructureMap BmiQuestionnaireResponseToObservations #xD; map "https://fhir.hl7.at/prenudge/appdata/r4/StructureMap/BmiQuestionnaireResponseToObservations" = "BmiQuestionnaireResponseToObservations"#xD; #xD; // BMI Q to Body Height, Body Weight and BMI Observations Bundle#xD; #xD; uses "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse" alias QR as source#xD; uses "http://hl7.org/fhir/StructureDefinition/Bundle" alias Bundle as target#xD; uses "http://hl7.org/fhir/StructureDefinition/Observation" alias Obs as target#xD; #xD; group BmiQuestionnaireResponseToObservations(source src : QR, target tgt : Bundle) {#xD; src -> tgt.type = 'collection' "SetBundleType";#xD; src -> tgt.entry as heightEntry, heightEntry.resource = create('Observation') as heightObs then {#xD; src then MapBodyHeightObservation(src, heightObs) "MapBodyHeightObservation";#xD; } "CreateBodyHeightEntry";#xD; src -> tgt.entry as weightEntry, weightEntry.resource = create('Observation') as weightObs then {#xD; src then MapBodyWeightObservation(src, weightObs) "MapBodyWeightObservation";#xD; } "CreateBodyWeightEntry";#xD; src -> tgt.entry as bmiEntry, bmiEntry.resource = create('Observation') as bmiObs then {#xD; src then MapBodyMassIndexObservation(src, bmiObs) "MapBodyMassIndexObservation";#xD; } "CreateBmiEntry";#xD; }#xD; #xD; group SetCommonObservationFields(source src : QR, target tgt : Obs) {#xD; src -> tgt.status = 'final' "setFinalStatus";#xD; src.subject as subject -> tgt.subject = subject "copySubject";#xD; src.authored as authored -> tgt.effective = authored "copyAuthoredToEffective";#xD; src.authored as authored -> tgt.issued = authored "copyAuthoredToIssued";#xD; src -> tgt.method = cc('http://snomed.info/sct', '87982008', 'Manual') "setManualMethod";#xD; src.id as id -> tgt.derivedFrom = create('Reference') as reference then {#xD; id -> reference.reference = append('QuestionnaireResponse/', id) "setDerivedFromReference";#xD; } "setDerivedFrom";#xD; }#xD; #x…
structure map.url:
  value: https://fhir.hl7.at/prenudge/appdata/r4/StructureMap/BmiQuestionnaireResponseToObservations
structure map.version:
  value: 0.1.0
structure map.name:
  value: BmiQuestionnaireResponseToObservations
structure map.title:
  value: BMI Q to Body Height, Body Weight and BMI Observations Bundle
structure map.status:
  value: active
structure map.date:
  value: 2026-07-01T10:20:10+00:00
structure map.publisher:
  value: The PreNUDGE Consortium
structure map.contact:
  index: 0
  contact detail.name:
    value: The PreNUDGE Consortium
  contact detail.telecom:
    index: 0
    contact point.system:
      value: url
    contact point.value:
      value: https://prenudge.at
structure map.contact:
  index: 1
  contact detail.name:
    value: The PreNUDGE Consortium
  contact detail.telecom:
    index: 0
    contact point.system:
      value: url
    contact point.value:
      value: https://prenudge.at
    contact point.use:
      value: work
structure map.description:
  value: BMI Q to Body Height, Body Weight and BMI Observations Bundle
structure map.structure:
  index: 0
  structure map.structure.url:
    value: http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse
    link: http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse
  structure map.structure.mode:
    value: source
  structure map.structure.alias:
    value: QR
structure map.structure:
  index: 1
  structure map.structure.url:
    value: http://hl7.org/fhir/StructureDefinition/Bundle
    link: http://hl7.org/fhir/StructureDefinition/Bundle
  structure map.structure.mode:
    value: target
  structure map.structure.alias:
    value: Bundle
structure map.structure:
  index: 2
  structure map.structure.url:
    value: http://hl7.org/fhir/StructureDefinition/Observation
    link: http://hl7.org/fhir/StructureDefinition/Observation
  structure map.structure.mode:
    value: target
  structure map.structure.alias:
    value: Obs
structure map.group:
  index: 0
  structure map.group.name:
    value: BmiQuestionnaireResponseToObservations
  structure map.group.type mode:
    value: none
  structure map.group.input:
    index: 0
    structure map.group.input.name:
      value: src
    structure map.group.input.type:
      value: QR
    structure map.group.input.mode:
      value: source
  structure map.group.input:
    index: 1
    structure map.group.input.name:
      value: tgt
    structure map.group.input.type:
      value: Bundle
    structure map.group.input.mode:
      value: target
  structure map.group.rule:
    index: 0
    structure map.group.rule.name:
      value: SetBundleType
    structure map.group.rule.source:
      index: 0
      structure map.group.rule.source.context:
        value: src
    structure map.group.rule.target:
      index: 0
      structure map.group.rule.target.context:
        value: tgt
      structure map.group.rule.target.context type:
        value: variable
      structure map.group.rule.target.element:
        value: type
      structure map.group.rule.target.transform:
        value: copy
      structure map.group.rule.target.parameter:
        index: 0
  structure map.group.rule:
    index: 1
    structure map.group.rule.name:
      value: CreateBodyHeightEntry
    structure map.group.rule.source:
      index: 0
      structure map.group.rule.source.context:
        value: src
    structure map.group.rule.target:
      index: 0
      structure map.group.rule.target.context:
        value: tgt
      structure map.group.rule.target.context type:
        value: variable
      structure map.group.rule.target.element:
        value: entry
      structure map.group.rule.target.variable:
        value: heightEntry
    structure map.group.rule.target:
      index: 1
      structure map.group.rule.target.context:
        value: heightEntry
      structure map.group.rule.target.context type:
        value: variable
      structure map.group.rule.target.element:
        value: resource
      structure map.group.rule.target.variable:
        value: heightObs
      structure map.group.rule.target.transform:
        value: create
      structure map.group.rule.target.parameter:
        index: 0
    structure map.group.rule.rule:
      index: 0
      structure map.group.rule.name:
        value: MapBodyHeightObservation
      structure map.group.rule.source:
        index: 0
      structure map.group.rule.dependent:
        index: 0
  structure map.group.rule:
    index: 2
    structure map.group.rule.name:
      value: CreateBodyWeightEntry
    structure map.group.rule.source:
      index: 0
      structure map.group.rule.source.context:
        value: src
    structure map.group.rule.target:
      index: 0
      structure map.group.rule.target.context:
        value: tgt
      structure map.group.rule.target.context type:
        value: variable
      structure map.group.rule.target.element:
        value: entry
      structure map.group.rule.target.variable:
        value: weightEntry
    structure map.group.rule.target:
      index: 1
      structure map.group.rule.target.context:
        value: weightEntry
      structure map.group.rule.target.context type:
        value: variable
      structure map.group.rule.target.element:
        value: resource
      structure map.group.rule.target.variable:
        value: weightObs
      structure map.group.rule.target.transform:
        value: create
      structure map.group.rule.target.parameter:
        index: 0
    structure map.group.rule.rule:
      index: 0
      structure map.group.rule.name:
        value: MapBodyWeightObservation
      structure map.group.rule.source:
        index: 0
      structure map.group.rule.dependent:
        index: 0
  structure map.group.rule:
    index: 3
    structure map.group.rule.name:
      value: CreateBmiEntry
    structure map.group.rule.source:
      index: 0
      structure map.group.rule.source.context:
        value: src

value: collection

value: Observation

value: src

value: MapBodyHeightObservation

value: src
index: 0

value: heightObs
index: 1

value: Observation

value: src

value: MapBodyWeightObservation

value: src
index: 0

value: weightObs
index: 1

index: 0
structure map.group.rule.target.context:
  value: tgt
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: entry
structure map.group.rule.target.variable:
  value: bmiEntry

index: 1
structure map.group.rule.target.context:
  value: bmiEntry
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: resource
structure map.group.rule.target.variable:
  value: bmiObs
structure map.group.rule.target.transform:
  value: create
structure map.group.rule.target.parameter:
  index: 0
  structure map.group.rule.target.parameter.value string:
    value: Observation

index: 0
structure map.group.rule.name:
  value: MapBodyMassIndexObservation
structure map.group.rule.source:
  index: 0
  structure map.group.rule.source.context:
    value: src
structure map.group.rule.dependent:
  index: 0
  structure map.group.rule.dependent.name:
    value: MapBodyMassIndexObservation
  structure map.group.rule.dependent.variable:
    value: src
    index: 0
  structure map.group.rule.dependent.variable:
    value: bmiObs
    index: 1

index: 1
structure map.group.name:
  value: SetCommonObservationFields
structure map.group.type mode:
  value: none
structure map.group.input:
  index: 0
  structure map.group.input.name:
    value: src
  structure map.group.input.type:
    value: QR
  structure map.group.input.mode:
    value: source
structure map.group.input:
  index: 1
  structure map.group.input.name:
    value: tgt
  structure map.group.input.type:
    value: Obs
  structure map.group.input.mode:
    value: target
structure map.group.rule:
  index: 0
  structure map.group.rule.name:
    value: setFinalStatus
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: status
    structure map.group.rule.target.transform:
      value: copy
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value string:
        value: final
structure map.group.rule:
  index: 1
  structure map.group.rule.name:
    value: copySubject
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
    structure map.group.rule.source.element:
      value: subject
    structure map.group.rule.source.variable:
      value: subject
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: subject
    structure map.group.rule.target.transform:
      value: copy
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value id:
        value: subject
structure map.group.rule:
  index: 2
  structure map.group.rule.name:
    value: copyAuthoredToEffective
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
    structure map.group.rule.source.element:
      value: authored
    structure map.group.rule.source.variable:
      value: authored
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: effective
    structure map.group.rule.target.transform:
      value: copy
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value id:
        value: authored
structure map.group.rule:
  index: 3
  structure map.group.rule.name:
    value: copyAuthoredToIssued
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
    structure map.group.rule.source.element:
      value: authored
    structure map.group.rule.source.variable:
      value: authored
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: issued
    structure map.group.rule.target.transform:
      value: copy
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value id:
        value: authored
structure map.group.rule:
  index: 4
  structure map.group.rule.name:
    value: setManualMethod
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: method
    structure map.group.rule.target.transform:
      value: cc
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value string:
        value: http://snomed.info/sct
    structure map.group.rule.target.parameter:
      index: 1
      structure map.group.rule.target.parameter.value string:
        value: 87982008
    structure map.group.rule.target.parameter:
      index: 2
      structure map.group.rule.target.parameter.value string:
        value: Manual
structure map.group.rule:
  index: 5
  structure map.group.rule.name:
    value: setDerivedFrom
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
    structure map.group.rule.source.element:
      value: id
    structure map.group.rule.source.variable:
      value: id
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: derivedFrom
    structure map.group.rule.target.variable:
      value: reference
    structure map.group.rule.target.transform:
      value: create
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value string:
        value: Reference
  structure map.group.rule.rule:
    index: 0
    structure map.group.rule.name:
      value: setDerivedFromReference
    structure map.group.rule.source:
      index: 0
      structure map.group.rule.source.context:
        value: id
    structure map.group.rule.target:
      index: 0
      structure map.group.rule.target.context:
        value: reference
      structure map.group.rule.target.context type:
        value: variable
      structure map.group.rule.target.element:
        value: reference
      structure map.group.rule.target.transform:
        value: append
      structure map.group.rule.target.parameter:
        index: 0
      structure map.group.rule.target.parameter:
        index: 1

value: QuestionnaireResponse/

value: id

index: 2
structure map.group.name:
  value: MapBodyHeightObservation
structure map.group.type mode:
  value: none
structure map.group.input:
  index: 0
  structure map.group.input.name:
    value: src
  structure map.group.input.type:
    value: QR
  structure map.group.input.mode:
    value: source
structure map.group.input:
  index: 1
  structure map.group.input.name:
    value: tgt
  structure map.group.input.type:
    value: Obs
  structure map.group.input.mode:
    value: target
structure map.group.rule:
  index: 0
  structure map.group.rule.name:
    value: SetCommonFields
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
  structure map.group.rule.dependent:
    index: 0
    structure map.group.rule.dependent.name:
      value: SetCommonObservationFields
    structure map.group.rule.dependent.variable:
      value: src
      index: 0
    structure map.group.rule.dependent.variable:
      value: tgt
      index: 1
structure map.group.rule:
  index: 1
  structure map.group.rule.name:
    value: SetProfile
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: meta
    structure map.group.rule.target.variable:
      value: meta
  structure map.group.rule.target:
    index: 1
    structure map.group.rule.target.context:
      value: meta
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: profile
    structure map.group.rule.target.transform:
      value: copy
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value string:
        value: https://fhir.hl7.at/prenudge/appdata/r4/StructureDefinition/at-prenudge-bodyheight-observation
structure map.group.rule:
  index: 2
  structure map.group.rule.name:
    value: SetCategory
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: category
    structure map.group.rule.target.transform:
      value: cc
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value string:
        value: http://terminology.hl7.org/CodeSystem/observation-category
    structure map.group.rule.target.parameter:
      index: 1
      structure map.group.rule.target.parameter.value string:
        value: vital-signs
    structure map.group.rule.target.parameter:
      index: 2
      structure map.group.rule.target.parameter.value string:
        value: Vital Signs
structure map.group.rule:
  index: 3
  structure map.group.rule.name:
    value: SetCode
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: code
    structure map.group.rule.target.transform:
      value: cc
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value string:
        value: http://loinc.org
    structure map.group.rule.target.parameter:
      index: 1
      structure map.group.rule.target.parameter.value string:
        value: 8302-2
    structure map.group.rule.target.parameter:
      index: 2
      structure map.group.rule.target.parameter.value string:
        value: Body height
structure map.group.rule:
  index: 4
  structure map.group.rule.name:
    value: SetIdentifier
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
    structure map.group.rule.source.element:
      value: identifier
    structure map.group.rule.source.variable:
      value: identifier
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: identifier
    structure map.group.rule.target.variable:
      value: targetIdentifier
    structure map.group.rule.target.transform:
      value: create
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value string:
        value: Identifier
  structure map.group.rule.rule:
    index: 0
    structure map.group.rule.name:
      value: SetIdentifierSystem
    structure map.group.rule.source:
      index: 0
      structure map.group.rule.source.context:
        value: identifier
      structure map.group.rule.source.element:
        value: system
      structure map.group.rule.source.variable:
        value: system
    structure map.group.rule.target:
      index: 0
      structure map.group.rule.target.context:
        value: targetIdentifier
      structure map.group.rule.target.context type:
        value: variable
      structure map.group.rule.target.element:
        value: system
      structure map.group.rule.target.transform:
        value: copy
      structure map.group.rule.target.parameter:
        index: 0
  structure map.group.rule.rule:
    index: 1
    structure map.group.rule.name:
      value: SetIdentifierValue
    structure map.group.rule.source:
      index: 0
      structure map.group.rule.source.context:
        value: identifier
      structure map.group.rule.source.element:
        value: value
      structure map.group.rule.source.variable:
        value: value
    structure map.group.rule.target:
      index: 0
      structure map.group.rule.target.context:
        value: targetIdentifier
      structure map.group.rule.target.context type:
        value: variable
      structure map.group.rule.target.element:
        value: value

value: system

value: append

index: 0
structure map.group.rule.target.parameter.value id:
  value: value

index: 1
structure map.group.rule.target.parameter.value string:
  value: -bodyheight

index: 5
structure map.group.rule.name:
  value: ProcessBmiGroup
structure map.group.rule.source:
  index: 0
  structure map.group.rule.source.context:
    value: src
  structure map.group.rule.source.element:
    value: item
  structure map.group.rule.source.variable:
    value: bmiGroup
  structure map.group.rule.source.condition:
    value: bmiGroup.linkId = 'bmi'
structure map.group.rule.rule:
  index: 0
  structure map.group.rule.name:
    value: ProcessHeightItem
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: bmiGroup
    structure map.group.rule.source.element:
      value: item
    structure map.group.rule.source.variable:
      value: heightItem
    structure map.group.rule.source.condition:
      value: heightItem.linkId = 'height-cm'
  structure map.group.rule.rule:
    index: 0
    structure map.group.rule.name:
      value: ProcessAnswer
    structure map.group.rule.source:
      index: 0
      structure map.group.rule.source.context:
        value: heightItem
      structure map.group.rule.source.element:
        value: answer
      structure map.group.rule.source.variable:
        value: answer
    structure map.group.rule.rule:
      index: 0
      structure map.group.rule.name:
        value: ExtractPrimitiveValue
      structure map.group.rule.source:
        index: 0
      structure map.group.rule.rule:
        index: 0

value: answer

value: value

value: val

value: SetValue

index: 0
structure map.group.rule.source.context:
  value: val
structure map.group.rule.source.element:
  value: value
structure map.group.rule.source.variable:
  value: numVal

index: 0
structure map.group.rule.target.context:
  value: tgt
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: value
structure map.group.rule.target.variable:
  value: qty
structure map.group.rule.target.transform:
  value: create
structure map.group.rule.target.parameter:
  index: 0
  structure map.group.rule.target.parameter.value string:
    value: Quantity

index: 1
structure map.group.rule.target.context:
  value: qty
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: value
structure map.group.rule.target.transform:
  value: copy
structure map.group.rule.target.parameter:
  index: 0
  structure map.group.rule.target.parameter.value id:
    value: numVal

index: 2
structure map.group.rule.target.context:
  value: qty
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: unit
structure map.group.rule.target.transform:
  value: copy
structure map.group.rule.target.parameter:
  index: 0
  structure map.group.rule.target.parameter.value string:
    value: cm

index: 3
structure map.group.rule.target.context:
  value: qty
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: system
structure map.group.rule.target.transform:
  value: copy
structure map.group.rule.target.parameter:
  index: 0
  structure map.group.rule.target.parameter.value string:
    value: http://unitsofmeasure.org

index: 4
structure map.group.rule.target.context:
  value: qty
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: code
structure map.group.rule.target.transform:
  value: copy
structure map.group.rule.target.parameter:
  index: 0
  structure map.group.rule.target.parameter.value string:
    value: cm

index: 3
structure map.group.name:
  value: MapBodyWeightObservation
structure map.group.type mode:
  value: none
structure map.group.input:
  index: 0
  structure map.group.input.name:
    value: src
  structure map.group.input.type:
    value: QR
  structure map.group.input.mode:
    value: source
structure map.group.input:
  index: 1
  structure map.group.input.name:
    value: tgt
  structure map.group.input.type:
    value: Obs
  structure map.group.input.mode:
    value: target
structure map.group.rule:
  index: 0
  structure map.group.rule.name:
    value: SetCommonFields
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
  structure map.group.rule.dependent:
    index: 0
    structure map.group.rule.dependent.name:
      value: SetCommonObservationFields
    structure map.group.rule.dependent.variable:
      value: src
      index: 0
    structure map.group.rule.dependent.variable:
      value: tgt
      index: 1
structure map.group.rule:
  index: 1
  structure map.group.rule.name:
    value: SetProfile
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: meta
    structure map.group.rule.target.variable:
      value: meta
  structure map.group.rule.target:
    index: 1
    structure map.group.rule.target.context:
      value: meta
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: profile
    structure map.group.rule.target.transform:
      value: copy
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value string:
        value: https://fhir.hl7.at/prenudge/appdata/r4/StructureDefinition/at-prenudge-bodyweight-observation
structure map.group.rule:
  index: 2
  structure map.group.rule.name:
    value: SetCategory
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: category
    structure map.group.rule.target.transform:
      value: cc
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value string:
        value: http://terminology.hl7.org/CodeSystem/observation-category
    structure map.group.rule.target.parameter:
      index: 1
      structure map.group.rule.target.parameter.value string:
        value: vital-signs
    structure map.group.rule.target.parameter:
      index: 2
      structure map.group.rule.target.parameter.value string:
        value: Vital Signs
structure map.group.rule:
  index: 3
  structure map.group.rule.name:
    value: SetCode
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: code
    structure map.group.rule.target.transform:
      value: cc
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value string:
        value: http://loinc.org
    structure map.group.rule.target.parameter:
      index: 1
      structure map.group.rule.target.parameter.value string:
        value: 29463-7
    structure map.group.rule.target.parameter:
      index: 2
      structure map.group.rule.target.parameter.value string:
        value: Body weight
structure map.group.rule:
  index: 4
  structure map.group.rule.name:
    value: SetIdentifier
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
    structure map.group.rule.source.element:
      value: identifier
    structure map.group.rule.source.variable:
      value: identifier
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: identifier
    structure map.group.rule.target.variable:
      value: targetIdentifier
    structure map.group.rule.target.transform:
      value: create
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value string:
        value: Identifier
  structure map.group.rule.rule:
    index: 0
    structure map.group.rule.name:
      value: SetIdentifierSystem
    structure map.group.rule.source:
      index: 0
      structure map.group.rule.source.context:
        value: identifier
      structure map.group.rule.source.element:
        value: system
      structure map.group.rule.source.variable:
        value: system
    structure map.group.rule.target:
      index: 0
      structure map.group.rule.target.context:
        value: targetIdentifier
      structure map.group.rule.target.context type:
        value: variable
      structure map.group.rule.target.element:
        value: system
      structure map.group.rule.target.transform:
        value: copy
      structure map.group.rule.target.parameter:
        index: 0
  structure map.group.rule.rule:
    index: 1
    structure map.group.rule.name:
      value: SetIdentifierValue
    structure map.group.rule.source:
      index: 0
      structure map.group.rule.source.context:
        value: identifier
      structure map.group.rule.source.element:
        value: value
      structure map.group.rule.source.variable:
        value: value
    structure map.group.rule.target:
      index: 0
      structure map.group.rule.target.context:
        value: targetIdentifier
      structure map.group.rule.target.context type:
        value: variable
      structure map.group.rule.target.element:
        value: value

value: system

value: append

index: 0
structure map.group.rule.target.parameter.value id:
  value: value

index: 1
structure map.group.rule.target.parameter.value string:
  value: -bodyweight

index: 5
structure map.group.rule.name:
  value: ProcessBmiGroup
structure map.group.rule.source:
  index: 0
  structure map.group.rule.source.context:
    value: src
  structure map.group.rule.source.element:
    value: item
  structure map.group.rule.source.variable:
    value: bmiGroup
  structure map.group.rule.source.condition:
    value: bmiGroup.linkId = 'bmi'
structure map.group.rule.rule:
  index: 0
  structure map.group.rule.name:
    value: ProcessWeightItem
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: bmiGroup
    structure map.group.rule.source.element:
      value: item
    structure map.group.rule.source.variable:
      value: weightItem
    structure map.group.rule.source.condition:
      value: weightItem.linkId = 'weight-kg'
  structure map.group.rule.rule:
    index: 0
    structure map.group.rule.name:
      value: ProcessAnswer
    structure map.group.rule.source:
      index: 0
      structure map.group.rule.source.context:
        value: weightItem
      structure map.group.rule.source.element:
        value: answer
      structure map.group.rule.source.variable:
        value: answer
    structure map.group.rule.rule:
      index: 0
      structure map.group.rule.name:
        value: ExtractPrimitiveValue
      structure map.group.rule.source:
        index: 0
      structure map.group.rule.rule:
        index: 0

value: answer

value: value

value: val

value: SetValue

index: 0
structure map.group.rule.source.context:
  value: val
structure map.group.rule.source.element:
  value: value
structure map.group.rule.source.variable:
  value: numVal

index: 0
structure map.group.rule.target.context:
  value: tgt
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: value
structure map.group.rule.target.variable:
  value: qty
structure map.group.rule.target.transform:
  value: create
structure map.group.rule.target.parameter:
  index: 0
  structure map.group.rule.target.parameter.value string:
    value: Quantity

index: 1
structure map.group.rule.target.context:
  value: qty
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: value
structure map.group.rule.target.transform:
  value: copy
structure map.group.rule.target.parameter:
  index: 0
  structure map.group.rule.target.parameter.value id:
    value: numVal

index: 2
structure map.group.rule.target.context:
  value: qty
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: unit
structure map.group.rule.target.transform:
  value: copy
structure map.group.rule.target.parameter:
  index: 0
  structure map.group.rule.target.parameter.value string:
    value: kg

index: 3
structure map.group.rule.target.context:
  value: qty
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: system
structure map.group.rule.target.transform:
  value: copy
structure map.group.rule.target.parameter:
  index: 0
  structure map.group.rule.target.parameter.value string:
    value: http://unitsofmeasure.org

index: 4
structure map.group.rule.target.context:
  value: qty
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: code
structure map.group.rule.target.transform:
  value: copy
structure map.group.rule.target.parameter:
  index: 0
  structure map.group.rule.target.parameter.value string:
    value: kg

index: 4
structure map.group.name:
  value: MapBodyMassIndexObservation
structure map.group.type mode:
  value: none
structure map.group.input:
  index: 0
  structure map.group.input.name:
    value: src
  structure map.group.input.type:
    value: QR
  structure map.group.input.mode:
    value: source
structure map.group.input:
  index: 1
  structure map.group.input.name:
    value: tgt
  structure map.group.input.type:
    value: Obs
  structure map.group.input.mode:
    value: target
structure map.group.rule:
  index: 0
  structure map.group.rule.name:
    value: SetCommonFields
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
  structure map.group.rule.dependent:
    index: 0
    structure map.group.rule.dependent.name:
      value: SetCommonObservationFields
    structure map.group.rule.dependent.variable:
      value: src
      index: 0
    structure map.group.rule.dependent.variable:
      value: tgt
      index: 1
structure map.group.rule:
  index: 1
  structure map.group.rule.name:
    value: SetProfile
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: meta
    structure map.group.rule.target.variable:
      value: meta
  structure map.group.rule.target:
    index: 1
    structure map.group.rule.target.context:
      value: meta
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: profile
    structure map.group.rule.target.transform:
      value: copy
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value string:
        value: https://fhir.hl7.at/prenudge/appdata/r4/StructureDefinition/at-prenudge-bmi-observation
structure map.group.rule:
  index: 2
  structure map.group.rule.name:
    value: SetCategory
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: category
    structure map.group.rule.target.transform:
      value: cc
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value string:
        value: http://terminology.hl7.org/CodeSystem/observation-category
    structure map.group.rule.target.parameter:
      index: 1
      structure map.group.rule.target.parameter.value string:
        value: vital-signs
    structure map.group.rule.target.parameter:
      index: 2
      structure map.group.rule.target.parameter.value string:
        value: Vital Signs
structure map.group.rule:
  index: 3
  structure map.group.rule.name:
    value: SetCode
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: code
    structure map.group.rule.target.transform:
      value: cc
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value string:
        value: http://loinc.org
    structure map.group.rule.target.parameter:
      index: 1
      structure map.group.rule.target.parameter.value string:
        value: 39156-5
    structure map.group.rule.target.parameter:
      index: 2
      structure map.group.rule.target.parameter.value string:
        value: Body mass index (BMI) [Ratio]
structure map.group.rule:
  index: 4
  structure map.group.rule.name:
    value: SetIdentifier
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: src
    structure map.group.rule.source.element:
      value: identifier
    structure map.group.rule.source.variable:
      value: identifier
  structure map.group.rule.target:
    index: 0
    structure map.group.rule.target.context:
      value: tgt
    structure map.group.rule.target.context type:
      value: variable
    structure map.group.rule.target.element:
      value: identifier
    structure map.group.rule.target.variable:
      value: targetIdentifier
    structure map.group.rule.target.transform:
      value: create
    structure map.group.rule.target.parameter:
      index: 0
      structure map.group.rule.target.parameter.value string:
        value: Identifier
  structure map.group.rule.rule:
    index: 0
    structure map.group.rule.name:
      value: SetIdentifierSystem
    structure map.group.rule.source:
      index: 0
      structure map.group.rule.source.context:
        value: identifier
      structure map.group.rule.source.element:
        value: system
      structure map.group.rule.source.variable:
        value: system
    structure map.group.rule.target:
      index: 0
      structure map.group.rule.target.context:
        value: targetIdentifier
      structure map.group.rule.target.context type:
        value: variable
      structure map.group.rule.target.element:
        value: system
      structure map.group.rule.target.transform:
        value: copy
      structure map.group.rule.target.parameter:
        index: 0
  structure map.group.rule.rule:
    index: 1
    structure map.group.rule.name:
      value: SetIdentifierValue
    structure map.group.rule.source:
      index: 0
      structure map.group.rule.source.context:
        value: identifier
      structure map.group.rule.source.element:
        value: value
      structure map.group.rule.source.variable:
        value: value
    structure map.group.rule.target:
      index: 0
      structure map.group.rule.target.context:
        value: targetIdentifier
      structure map.group.rule.target.context type:
        value: variable
      structure map.group.rule.target.element:
        value: value

value: system

value: append

index: 0
structure map.group.rule.target.parameter.value id:
  value: value

index: 1
structure map.group.rule.target.parameter.value string:
  value: -bmi

index: 5
structure map.group.rule.name:
  value: ProcessBmiGroup
structure map.group.rule.source:
  index: 0
  structure map.group.rule.source.context:
    value: src
  structure map.group.rule.source.element:
    value: item
  structure map.group.rule.source.variable:
    value: bmiGroup
  structure map.group.rule.source.condition:
    value: bmiGroup.linkId = 'bmi'
structure map.group.rule.rule:
  index: 0
  structure map.group.rule.name:
    value: ProcessBmiItem
  structure map.group.rule.source:
    index: 0
    structure map.group.rule.source.context:
      value: bmiGroup
    structure map.group.rule.source.element:
      value: item
    structure map.group.rule.source.variable:
      value: bmiItem
    structure map.group.rule.source.condition:
      value: bmiItem.linkId = 'bmi-kg-m2'
  structure map.group.rule.rule:
    index: 0
    structure map.group.rule.name:
      value: ProcessAnswer
    structure map.group.rule.source:
      index: 0
      structure map.group.rule.source.context:
        value: bmiItem
      structure map.group.rule.source.element:
        value: answer
      structure map.group.rule.source.variable:
        value: answer
    structure map.group.rule.rule:
      index: 0
      structure map.group.rule.name:
        value: ExtractPrimitiveValue
      structure map.group.rule.source:
        index: 0
      structure map.group.rule.rule:
        index: 0

value: answer

value: value

value: val

value: SetValue

index: 0
structure map.group.rule.source.context:
  value: val
structure map.group.rule.source.element:
  value: value
structure map.group.rule.source.variable:
  value: numVal

index: 0
structure map.group.rule.target.context:
  value: tgt
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: value
structure map.group.rule.target.variable:
  value: qty
structure map.group.rule.target.transform:
  value: create
structure map.group.rule.target.parameter:
  index: 0
  structure map.group.rule.target.parameter.value string:
    value: Quantity

index: 1
structure map.group.rule.target.context:
  value: qty
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: value
structure map.group.rule.target.transform:
  value: copy
structure map.group.rule.target.parameter:
  index: 0
  structure map.group.rule.target.parameter.value id:
    value: numVal

index: 2
structure map.group.rule.target.context:
  value: qty
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: unit
structure map.group.rule.target.transform:
  value: copy
structure map.group.rule.target.parameter:
  index: 0
  structure map.group.rule.target.parameter.value string:
    value: kg/m2

index: 3
structure map.group.rule.target.context:
  value: qty
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: system
structure map.group.rule.target.transform:
  value: copy
structure map.group.rule.target.parameter:
  index: 0
  structure map.group.rule.target.parameter.value string:
    value: http://unitsofmeasure.org

index: 4
structure map.group.rule.target.context:
  value: qty
structure map.group.rule.target.context type:
  value: variable
structure map.group.rule.target.element:
  value: code
structure map.group.rule.target.transform:
  value: copy
structure map.group.rule.target.parameter:
  index: 0
  structure map.group.rule.target.parameter.value string:
    value: kg/m2