FHIR IG analytics| Package | hl7.fhir.uv.omop |
| Resource Type | StructureMap |
| Id | StructureMap-RecordSetMap.json |
| FHIR Version | R5 |
| Source | https://build.fhir.org/ig/HL7/fhir-omop-ig/StructureMap-RecordSetMap.html |
| URL | http://hl7.org/fhir/uv/omop/StructureMap/RecordSetMap |
| Version | 2.0.0-ballot |
| Status | active |
| Date | 2026-08-06T19:12:13+00:00 |
| Name | RecordSetMap |
| Title | Mapping an International Patient Summary resource to OMOP domains collected in a RecordSet resource |
| Realm | uv |
| Authority | hl7 |
| Description | This mapping maps a FHIR International Patient Summary Bundle to a set of OMOP Patient records collected in a RecordSet resource. |
No resources found
No resources found
Note: links and images are rebased to the (stated) source
Generated Narrative: StructureMap RecordSetMap
/// url = 'http://hl7.org/fhir/uv/omop/StructureMap/RecordSetMap' /// name = 'RecordSetMap' /// title = 'Mapping an International Patient Summary resource to OMOP domains collected in a RecordSet resource' /// status = 'active' /// description = 'This mapping maps a FHIR International Patient Summary Bundle to a set of OMOP Patient records collected in a RecordSet resource.' uses "http://hl7.org/fhir/StructureDefinition/Bundle" alias Bundle as source uses "http://hl7.org/fhir/uv/omop/StructureDefinition/RecordSet" alias RecordSetTable as target imports "http://hl7.org/fhir/uv/omop/StructureMap/AllergyMap" imports "http://hl7.org/fhir/uv/omop/StructureMap/BloodPressureVitalSignsMap" imports "http://hl7.org/fhir/uv/omop/StructureMap/ConditionMap" imports "http://hl7.org/fhir/uv/omop/StructureMap/EncounterVisitMap" imports "http://hl7.org/fhir/uv/omop/StructureMap/ImmunizationMap" imports "http://hl7.org/fhir/uv/omop/StructureMap/MeasurementMap" imports "http://hl7.org/fhir/uv/omop/StructureMap/PersonMap" imports "http://hl7.org/fhir/uv/omop/StructureMap/ProcedureMap" imports "http://hl7.org/fhir/uv/omop/StructureMap/SimpleVitalSignsMap" group RecordSet(source src : Bundle, target tgt : RecordSetTable) { src.id as s -> tgt then { s.id as id -> tgt.record_id = (%id.substring(%id.indexOf('/') + 1)); }; // Map bundle timestamp src.timestamp as ts -> tgt.record_set_timestamp = ts; // Map bundle entries src.entry as entry -> tgt then { entry.resource : AllergyIntolerance as a -> tgt then { a -> tgt.allergy as allergy then Allergy(a, allergy) "allergyEntry"; } "allergyIntoleranceEntry"; entry.resource : Condition as condition -> tgt then { condition -> tgt.condition as conditionOccurrence then ConditionOccurrence(condition, conditionOccurrence) "conditionEntry"; } "conditionOccurenceEntry"; entry.resource : Encounter as encounter -> tgt then { encounter -> tgt.visitOccurrence as visitOccurrence then VisitOccurrence(encounter, visitOccurrence) "encounterEntry"; } "conditionOccurenceEntry"; entry.resource : Observation as observation -> tgt then { observation -> tgt.measurement as measurement then Measures(observation, measurement) "measurementEntry"; observation -> tgt as recordSet then BloodPressure(observation, recordSet) "bloodPressureEntry"; observation -> tgt.measurement as vitalSign then VitalSigns(observation, vitalSign) "simpleVitalSignEntry"; } "observationEntry"; entry.resource : Patient as patient -> tgt then { patient.id as s -> tgt then { s.id as id -> tgt.patient_id = (%id.substring(%id.indexOf('/') + 1)); }; }; entry.resource : Encounter as encounter -> tgt then { encounter -> tgt.visitOccurrence as visit then VisitOccurrence(encounter, visit) "visit"; }; } "bundleEntry"; }
{
"resourceType": "StructureMap",
"id": "RecordSetMap",
"text": {
"status": "generated",
"div": "<!-- snip (see above) -->"
},
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg",
"valueCode": "brr"
},
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-fmm",
"valueInteger": 2,
"_valueInteger": {
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom",
"valueCanonical": "http://hl7.org/fhir/uv/omop/ImplementationGuide/hl7.fhir.uv.omop"
}
]
}
},
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status",
"valueCode": "trial-use",
"_valueCode": {
"extension": [
{
"url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom",
"valueCanonical": "http://hl7.org/fhir/uv/omop/ImplementationGuide/hl7.fhir.uv.omop"
}
]
}
}
],
"url": "http://hl7.org/fhir/uv/omop/StructureMap/RecordSetMap",
"identifier": [
{
"system": "urn:ietf:rfc:3986",
"value": "urn:oid:2.16.840.1.113883.4.642.40.77.43.10"
}
],
"version": "2.0.0-ballot",
"name": "RecordSetMap",
"title": "Mapping an International Patient Summary resource to OMOP domains collected in a RecordSet resource",
"status": "active",
"date": "2026-08-06T19:12:13+00:00",
"publisher": "HL7 International / Biomedical Research and Regulation",
"contact": [
{
"name": "HL7 International / Biomedical Research and Regulation",
"telecom": [
{
"system": "url",
"value": "http://www.hl7.org/Special/committees/rcrim"
}
]
}
],
"description": "This mapping maps a FHIR International Patient Summary Bundle to a set of OMOP Patient records collected in a RecordSet resource.",
"jurisdiction": [
{
"coding": [
{
"system": "http://unstats.un.org/unsd/methods/m49/m49.htm",
"code": "001",
"display": "World"
}
]
}
],
"structure": [
{
"url": "http://hl7.org/fhir/StructureDefinition/Bundle",
"mode": "source",
"alias": "Bundle"
},
{
"url": "http://hl7.org/fhir/uv/omop/StructureDefinition/RecordSet",
"mode": "target",
"alias": "RecordSetTable"
}
],
"import": [
"http://hl7.org/fhir/uv/omop/StructureMap/AllergyMap",
"http://hl7.org/fhir/uv/omop/StructureMap/BloodPressureVitalSignsMap",
"http://hl7.org/fhir/uv/omop/StructureMap/ConditionMap",
"http://hl7.org/fhir/uv/omop/StructureMap/EncounterVisitMap",
"http://hl7.org/fhir/uv/omop/StructureMap/ImmunizationMap",
"http://hl7.org/fhir/uv/omop/StructureMap/MeasurementMap",
"http://hl7.org/fhir/uv/omop/StructureMap/PersonMap",
"http://hl7.org/fhir/uv/omop/StructureMap/ProcedureMap",
"http://hl7.org/fhir/uv/omop/StructureMap/SimpleVitalSignsMap"
],
"group": [
{
"name": "RecordSet",
"input": [
{
"name": "src",
"type": "Bundle",
"mode": "source"
},
{
"name": "tgt",
"type": "RecordSetTable",
"mode": "target"
}
],
"rule": [
{
"name": "id",
"source": [
{
"context": "src",
"element": "id",
"variable": "s"
}
],
"target": [
{
"context": "tgt"
}
],
"rule": [
{
"name": "id",
"source": [
{
"context": "s",
"element": "id",
"variable": "id"
}
],
"target": [
{
"context": "tgt",
"element": "record_id",
"transform": "evaluate",
"parameter": [
{
"valueString": "%id.substring(%id.indexOf('/') + 1)"
}
]
}
]
}
]
},
{
"name": "timestamp",
"source": [
{
"context": "src",
"element": "timestamp",
"variable": "ts"
}
],
"target": [
{
"context": "tgt",
"element": "record_set_timestamp",
"transform": "copy",
"parameter": [
{
"valueId": "ts"
}
]
}
],
"documentation": "Map bundle timestamp"
},
{
"name": "bundleEntry",
"source": [
{
"context": "src",
"element": "entry",
"variable": "entry"
}
],
"target": [
{
"context": "tgt"
}
],
"rule": [
{
"name": "allergyIntoleranceEntry",
"source": [
{
"context": "entry",
"type": "AllergyIntolerance",
"element": "resource",
"variable": "a"
}
],
"target": [
{
"context": "tgt"
}
],
"rule": [
{
"name": "allergyEntry",
"source": [
{
"context": "a"
}
],
"target": [
{
"context": "tgt",
"element": "allergy",
"variable": "allergy"
}
],
"dependent": [
{
"name": "Allergy",
"parameter": [
{
"valueId": "a"
},
{
"valueId": "allergy"
}
]
}
]
}
]
},
{
"name": "conditionOccurenceEntry",
"source": [
{
"context": "entry",
"type": "Condition",
"element": "resource",
"variable": "condition"
}
],
"target": [
{
"context": "tgt"
}
],
"rule": [
{
"name": "conditionEntry",
"source": [
{
"context": "condition"
}
],
"target": [
{
"context": "tgt",
"element": "condition",
"variable": "conditionOccurrence"
}
],
"dependent": [
{
"name": "ConditionOccurrence",
"parameter": [
{
"valueId": "condition"
},
{
"valueId": "conditionOccurrence"
}
]
}
]
}
]
},
{
"name": "conditionOccurenceEntry",
"source": [
{
"context": "entry",
"type": "Encounter",
"element": "resource",
"variable": "encounter"
}
],
"target": [
{
"context": "tgt"
}
],
"rule": [
{
"name": "encounterEntry",
"source": [
{
"context": "encounter"
}
],
"target": [
{
"context": "tgt",
"element": "visitOccurrence",
"variable": "visitOccurrence"
}
],
"dependent": [
{
"name": "VisitOccurrence",
"parameter": [
{
"valueId": "encounter"
},
{
"valueId": "visitOccurrence"
}
]
}
]
}
]
},
{
"name": "observationEntry",
"source": [
{
"context": "entry",
"type": "Observation",
"element": "resource",
"variable": "observation"
}
],
"target": [
{
"context": "tgt"
}
],
"rule": [
{
"name": "measurementEntry",
"source": [
{
"context": "observation"
}
],
"target": [
{
"context": "tgt",
"element": "measurement",
"variable": "measurement"
}
],
"dependent": [
{
"name": "Measures",
"parameter": [
{
"valueId": "observation"
},
{
"valueId": "measurement"
}
]
}
]
},
{
"name": "bloodPressureEntry",
"source": [
{
"context": "observation"
}
],
"target": [
{
"context": "tgt",
"variable": "recordSet"
}
],
"dependent": [
{
"name": "BloodPressure",
"parameter": [
{
"valueId": "observation"
},
{
"valueId": "recordSet"
}
]
}
]
},
{
"name": "simpleVitalSignEntry",
"source": [
{
"context": "observation"
}
],
"target": [
{
"context": "tgt",
"element": "measurement",
"variable": "vitalSign"
}
],
"dependent": [
{
"name": "VitalSigns",
"parameter": [
{
"valueId": "observation"
},
{
"valueId": "vitalSign"
}
]
}
]
}
]
},
{
"name": "resourcePatient",
"source": [
{
"context": "entry",
"type": "Patient",
"element": "resource",
"variable": "patient"
}
],
"target": [
{
"context": "tgt"
}
],
"rule": [
{
"name": "id",
"source": [
{
"context": "patient",
"element": "id",
"variable": "s"
}
],
"target": [
{
"context": "tgt"
}
],
"rule": [
{
"name": "id",
"source": [
{
"context": "s",
"element": "id",
"variable": "id"
}
],
"target": [
{
"context": "tgt",
"element": "patient_id",
"transform": "evaluate",
"parameter": [
{
"valueString": "%id.substring(%id.indexOf('/') + 1)"
}
]
}
]
}
]
}
]
},
{
"name": "resourceEncounter",
"source": [
{
"context": "entry",
"type": "Encounter",
"element": "resource",
"variable": "encounter"
}
],
"target": [
{
"context": "tgt"
}
],
"rule": [
{
"name": "visit",
"source": [
{
"context": "encounter"
}
],
"target": [
{
"context": "tgt",
"element": "visitOccurrence",
"variable": "visit"
}
],
"dependent": [
{
"name": "VisitOccurrence",
"parameter": [
{
"valueId": "encounter"
},
{
"valueId": "visit"
}
]
}
]
}
]
}
],
"documentation": "Map bundle entries"
}
]
}
]
}