Procedure.fml · fhir2omop
refs/refs/fhir-omop-ig/input/maps/Procedure.fml
29 lines · fml
1/// url = 'http://hl7.org/fhir/uv/omop/StructureMap/ProcedureMap' 2/// name = 'ProcedureMap' 3/// title = 'Mapping Procedure resource to Procedure Occurrence OMOP Domain' 5/// description = "This mapping maps FHIR Procedure instances to OMOP Procedure Occurrence Table objects." 7uses "http://hl7.org/fhir/StructureDefinition/Procedure" alias Procedure as source 8uses "http://hl7.org/fhir/uv/omop/StructureDefinition/ProcedureOccurrence" alias ProcedureTable as target 10group ProcedureOccurrence(source src : Procedure, target tgt : ProcedureTable) { 11 //src.id as id -> tgt.procedure_occurrence_id = cast(id, "integer"); 12 //src.subject as s -> tgt then { 13 //s.identifier as sid -> tgt then { 14 // sid.value as a -> tgt.person_id = a; 17 src.code as s -> tgt then { 18 s.coding as sc -> tgt then { 19 sc.code as a -> tgt.procedure_concept_id, tgt.procedure_source_value, tgt.procedure_source_concept_id = a; 23 src.occurrence : dateTime as edt -> tgt.procedure_datetime = cast(edt, "dateTime"), tgt.procedure_date = edt; 24 src.occurrence : Period as s -> tgt then { 25 s.start as start -> tgt.procedure_datetime = cast(start, "dateTime"), tgt.procedure_date = start; 26 s.end as end -> tgt.procedure_end_datetime, tgt.procedure_end_date = end;