EncounterVisit.fml · fhir2omop
refs/refs/fhir-omop-ig/input/maps/EncounterVisit.fml
45 lines · fml
1/// url = 'http://hl7.org/fhir/uv/omop/StructureMap/EncounterVisitMap' 2/// name = 'EncounterVisitMap' 3/// title = 'Mapping Encounter resource to VisitOccurrence OMOP Domain' 5/// description = "This mapping maps FHIR Encounter instances to OMOP Visit Occurence Table objects." 7uses "http://hl7.org/fhir/StructureDefinition/Encounter" alias Encounter as source 8uses "http://hl7.org/fhir/uv/omop/StructureDefinition/VisitOccurrence" alias VisitTable as target 10group VisitOccurrence(source src: Encounter, target tgt : VisitTable) { 12 //src.id as id -> tgt.visit_occurrence_id = cast(id, "integer"); 14 //src.subject as s -> tgt then { 15 // s.identifier as sid -> tgt then { 16 // sid.value as a -> tgt.person_id = a; 20 src.class as s -> tgt then { 21 s.coding as sc -> tgt then { 22 sc.code as a-> tgt.visit_concept_id = a, tgt.visit_source_value = a, tgt.visit_source_concept_id = a; 26 src.actualPeriod as s -> tgt then { 27 s.start as std -> tgt.visit_start_date = cast(std, "date"), tgt.visit_start_datetime = std; 28 s.end as ed -> tgt.visit_end_date = cast(ed, "date"), tgt.visit_end_datetime = ed; 31 src.admission as s -> tgt then { 32 s.admitSource as sa -> tgt then { 33 sa.coding as sc -> tgt then { 34 sc.code as code -> tgt.admitted_from_concept_id = code, tgt.admitted_from_source_value = code; 38 s.dischargeDisposition as sd -> tgt then { 39 sd.coding as sc -> tgt then { 40 sc.code as code -> tgt.discharged_to_concept_id = code, tgt.discharged_to_source_value = code;