From ac9e1c069fc770ce8a6fb51996bb3afd13923dfd Mon Sep 17 00:00:00 2001 From: Jason Callender Date: Fri, 22 Sep 2023 15:43:40 -0400 Subject: [PATCH 1/2] PDIP-108 adds optional zsegments, other segments; PDIP-109 handles out of order IN2 segments --- hl7v2_default.json | 39 ++++++++++++++++++++++++++------------- hl7v2_default_test.json | 39 ++++++++++++++++++++++++++------------- 2 files changed, 52 insertions(+), 26 deletions(-) diff --git a/hl7v2_default.json b/hl7v2_default.json index 91e76c5..6581282 100644 --- a/hl7v2_default.json +++ b/hl7v2_default.json @@ -63,13 +63,17 @@ }, {"name": "NTE","min": 0, "max": -1}, {"name": "ZPD","min": 0, "max": -1}, + {"name": "LAN","min": 0, "max": -1}, + {"name": "ZPD","min": 0, "max": -1}, {"name": "PD1","min": 0, "max": -1}, + {"name": "ZOE","min": 0, "max": -1}, {"name": "NTE","min": 0, "max": -1}, {"name": "ZPI","min": 0, "max": -1}, {"name": "ZEI","min": 0, "max": -1}, {"name": "MRG","min": 0, "max": -1}, {"name": "ROL","min": 0, "max": -1}, {"name": "CON","min": 0, "max": -1}, + {"name": "NTE","min": 0, "max": -1}, {"name": "NK1","min": 0, "max": -1}, {"name": "ZKI","min": 0, "max": -1}, {"name": "PV1","min": 0, @@ -91,6 +95,7 @@ {"name": "discharge_datetime", "index": 45, "default": ""} ] }, + {"name": "ZOE","min": 0, "max": -1}, {"name": "PV2","min": 0, "max": -1}, {"name": "PD1","min": 0, "max": -1}, {"name": "ZPV","min": 0, "max": -1}, @@ -195,7 +200,7 @@ ] }, { - "name": "IN2", "min": 0, + "name": "IN2", "min": 0, "max": -1, "elements": [ {"name": "insured_ssn", "index": 2, "default": ""}, {"name": "insured_home_phone", "index": 63, "component_index": 1, "default": ""}, @@ -231,7 +236,15 @@ {"name": "ZPV","min": 0, "max": -1}, {"name": "ZEX","min": 0, "max": -1}, {"name": "ZRE","min": 0, "max": -1}, - {"name": "ZQA","min": 0, "max": -1} + {"name": "ZQA","min": 0, "max": -1}, + {"name": "ZMP","min": 0, "max": -1}, + {"name": "ZEM","min": 0, "max": -1}, + {"name": "ZAD","min": 0, "max": -1}, + {"name": "ZVQ","min": 0, "max": -1}, + {"name": "ZMD","min": 0, "max": -1}, + {"name": "ZET","min": 0, "max": -1}, + {"name": "ZCQ","min": 0, "max": -1}, + {"name": "ZUD","min": 0, "max": -1} ] } ] @@ -960,10 +973,10 @@ "value": {"xpath": "IN1", "template": "transform_insurance_identifier", "_comment": "insurance identifer value is also used as subscriber identifier value"} } }, - {"xpath": ".[IN2/insured_ssn!='']", + {"xpath": ".[IN2[position()=1]/insured_ssn!='']", "object": { "system": {"const": "http://hl7.org/fhir/sid/us-ssn"}, - "value": {"xpath": "IN2/insured_ssn", "template": "transform_ssn"}, + "value": {"xpath": "IN2[position()=1]/insured_ssn", "template": "transform_ssn"}, "type": { "object": { "coding": { @@ -1006,31 +1019,31 @@ }, "telecom": { "array": [ - {"xpath": ".[IN2/insured_home_phone!='']", + {"xpath": ".[IN2[position()=1]/insured_home_phone!='']", "object": { "system": {"const": "phone"}, - "value": {"xpath": "IN2/insured_home_phone"}, - "use": {"xpath": "IN2/insured_home_phone_type", "template": "transform_phone_type"} + "value": {"xpath": "IN2[position()=1]/insured_home_phone"}, + "use": {"xpath": "IN2[position()=1]/insured_home_phone_type", "template": "transform_phone_type"} } }, - {"xpath": ".[IN2/insured_work_phone!='']", + {"xpath": ".[IN2[position()=1]/insured_work_phone!='']", "object": { "system": {"const": "phone"}, - "value": {"xpath": "IN2/insured_work_phone"}, + "value": {"xpath": "IN2[position()=1]/insured_work_phone"}, "use": {"const": "work"} } }, - {"xpath": ".[IN2/insured_home_email!='']", + {"xpath": ".[IN2[position()=1]/insured_home_email!='']", "object": { "system": {"const": "email"}, - "value": {"xpath": "IN2/insured_home_email", "template": "transform_email_type"}, + "value": {"xpath": "IN2[position()=1]/insured_home_email", "template": "transform_email_type"}, "use": {"const": "home"} } }, - {"xpath": ".[IN2/insured_work_email!='']", + {"xpath": ".[IN2[position()=1]/insured_work_email!='']", "object": { "system": {"const": "email"}, - "value": {"xpath": "IN2/insured_work_email", "template": "transform_email_type"}, + "value": {"xpath": "IN2[position()=1]/insured_work_email", "template": "transform_email_type"}, "use": {"const": "work"} } } diff --git a/hl7v2_default_test.json b/hl7v2_default_test.json index 91e76c5..6581282 100644 --- a/hl7v2_default_test.json +++ b/hl7v2_default_test.json @@ -63,13 +63,17 @@ }, {"name": "NTE","min": 0, "max": -1}, {"name": "ZPD","min": 0, "max": -1}, + {"name": "LAN","min": 0, "max": -1}, + {"name": "ZPD","min": 0, "max": -1}, {"name": "PD1","min": 0, "max": -1}, + {"name": "ZOE","min": 0, "max": -1}, {"name": "NTE","min": 0, "max": -1}, {"name": "ZPI","min": 0, "max": -1}, {"name": "ZEI","min": 0, "max": -1}, {"name": "MRG","min": 0, "max": -1}, {"name": "ROL","min": 0, "max": -1}, {"name": "CON","min": 0, "max": -1}, + {"name": "NTE","min": 0, "max": -1}, {"name": "NK1","min": 0, "max": -1}, {"name": "ZKI","min": 0, "max": -1}, {"name": "PV1","min": 0, @@ -91,6 +95,7 @@ {"name": "discharge_datetime", "index": 45, "default": ""} ] }, + {"name": "ZOE","min": 0, "max": -1}, {"name": "PV2","min": 0, "max": -1}, {"name": "PD1","min": 0, "max": -1}, {"name": "ZPV","min": 0, "max": -1}, @@ -195,7 +200,7 @@ ] }, { - "name": "IN2", "min": 0, + "name": "IN2", "min": 0, "max": -1, "elements": [ {"name": "insured_ssn", "index": 2, "default": ""}, {"name": "insured_home_phone", "index": 63, "component_index": 1, "default": ""}, @@ -231,7 +236,15 @@ {"name": "ZPV","min": 0, "max": -1}, {"name": "ZEX","min": 0, "max": -1}, {"name": "ZRE","min": 0, "max": -1}, - {"name": "ZQA","min": 0, "max": -1} + {"name": "ZQA","min": 0, "max": -1}, + {"name": "ZMP","min": 0, "max": -1}, + {"name": "ZEM","min": 0, "max": -1}, + {"name": "ZAD","min": 0, "max": -1}, + {"name": "ZVQ","min": 0, "max": -1}, + {"name": "ZMD","min": 0, "max": -1}, + {"name": "ZET","min": 0, "max": -1}, + {"name": "ZCQ","min": 0, "max": -1}, + {"name": "ZUD","min": 0, "max": -1} ] } ] @@ -960,10 +973,10 @@ "value": {"xpath": "IN1", "template": "transform_insurance_identifier", "_comment": "insurance identifer value is also used as subscriber identifier value"} } }, - {"xpath": ".[IN2/insured_ssn!='']", + {"xpath": ".[IN2[position()=1]/insured_ssn!='']", "object": { "system": {"const": "http://hl7.org/fhir/sid/us-ssn"}, - "value": {"xpath": "IN2/insured_ssn", "template": "transform_ssn"}, + "value": {"xpath": "IN2[position()=1]/insured_ssn", "template": "transform_ssn"}, "type": { "object": { "coding": { @@ -1006,31 +1019,31 @@ }, "telecom": { "array": [ - {"xpath": ".[IN2/insured_home_phone!='']", + {"xpath": ".[IN2[position()=1]/insured_home_phone!='']", "object": { "system": {"const": "phone"}, - "value": {"xpath": "IN2/insured_home_phone"}, - "use": {"xpath": "IN2/insured_home_phone_type", "template": "transform_phone_type"} + "value": {"xpath": "IN2[position()=1]/insured_home_phone"}, + "use": {"xpath": "IN2[position()=1]/insured_home_phone_type", "template": "transform_phone_type"} } }, - {"xpath": ".[IN2/insured_work_phone!='']", + {"xpath": ".[IN2[position()=1]/insured_work_phone!='']", "object": { "system": {"const": "phone"}, - "value": {"xpath": "IN2/insured_work_phone"}, + "value": {"xpath": "IN2[position()=1]/insured_work_phone"}, "use": {"const": "work"} } }, - {"xpath": ".[IN2/insured_home_email!='']", + {"xpath": ".[IN2[position()=1]/insured_home_email!='']", "object": { "system": {"const": "email"}, - "value": {"xpath": "IN2/insured_home_email", "template": "transform_email_type"}, + "value": {"xpath": "IN2[position()=1]/insured_home_email", "template": "transform_email_type"}, "use": {"const": "home"} } }, - {"xpath": ".[IN2/insured_work_email!='']", + {"xpath": ".[IN2[position()=1]/insured_work_email!='']", "object": { "system": {"const": "email"}, - "value": {"xpath": "IN2/insured_work_email", "template": "transform_email_type"}, + "value": {"xpath": "IN2[position()=1]/insured_work_email", "template": "transform_email_type"}, "use": {"const": "work"} } } From 03f8e4e1441e643ef54ff9c83919a6b842eaefd0 Mon Sep 17 00:00:00 2001 From: Anil Date: Fri, 22 Sep 2023 15:53:11 -0400 Subject: [PATCH 2/2] SMILECDR-502-validate-omniparser-template-with-additional-segments-to-resolve-parser-errors-in-log-analytics --- .../RelatedPerson/RelatedPerson_test_data_1.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/regression/regression_test_data/RelatedPerson/RelatedPerson_test_data_1.txt b/tests/regression/regression_test_data/RelatedPerson/RelatedPerson_test_data_1.txt index ef4b2d6..19f474d 100644 --- a/tests/regression/regression_test_data/RelatedPerson/RelatedPerson_test_data_1.txt +++ b/tests/regression/regression_test_data/RelatedPerson/RelatedPerson_test_data_1.txt @@ -1 +1 @@ -MSH|^~\&|Epic|STL|Pediatrix||20230411105743145038900|TCO4A|ADT^A08|13503|T|2.3|\rEVN|A08|20230411105743145038900||A31A08A31|TCO4A^COOK^TIM^^^^^^SJMH^^^^^SJMMC|\rPID|1||TEST333345038900^^^EPI^EPI||patient1^girl1testing^sprg^^^^D||20230411|F|||111 first st^apt 1^somewhere^fl^55555-5555^US^P||(479)555-5874^CP^7^pid1@gmail.com^^479^5555874|(479)555-5875^P^7^pid12@gmail.com^^479^5555874||SINGLE||9543332222|954-331-2222|||||Y|2||||21230620|||||||||||||||20230611|20230811|\rPD1|||MERCY HOSPITAL ST LOUIS^^20101|||||||||\rNK1|1|PATIENT^TESTING^SPRG^|Mother|^^^^^US|(555)555-5551^^7^^^555^5555551||EC1||||^^||\rNK1|2|PATIENT^TESTING^SPRG^||^^^^^US|(555)555-5551^^7^^^555^5555551||MOTHER||||^^||\rNK1|3||||||EMP||||^^||NOT EMPLOYED\rPV1|1|INPATIENT|SJMNICUS^2107^^SJMMC^Dirty^^^^STLO NICU 2|NB|||15236798^SOM IP^PHYSICIAN^HOSPITALIST|15236799^SOM IP^REFERRING^HOSPITALIST||NURSERY||||BORN INSIDE |||15236798^SOM IP^PHYSICIAN^HOSPITALIST^|CONF|17723456|COMM C||||||||||||||||||||||||20230411080900|20230511080900|\rPV2||Level 2||||||||||Hospital Encounter||\rDG1|1||^Newborn|Newborn||A|\rGT1|1|100003699|relpatient1^reltesting1^relSPRG1^||1500 corporate Drive^Suite 101^SUNRISE^FL^33322^US|(555)555-5551^P^7^gt1@gmail.com^^555^5555551|(555)555-5552^P^7^gt12@gmail.com^^555^5555551|19870108|F|P/F|MOT|105-45-2154||||||||\rIN1|1|2000805^AETNA PPO|20008|AETNA|PO BOX 981106^^EL PASO^TX^79998-1106^||(800)789-9009|1234|TEST|||20230101|20250101|3456T789|130|relpatientIN1^reltestingIN1^relSPRGIN1^|Child|19850207|123 downing st^apt 1^Gainesville^FL^33312-5555^US^H|||1|||YES||||||||||465|5678|||||||F||||BOTH||465\rIN2||954-333-2223|||Payer Plan|123456|||||||||||||||||||||||||||||||||||||||||||||||||||||||9876543211||(555)111-2221^^^In1@gmail.com|(555)111-2222^^^In12@gmail.com\rIN1|2|2007118^CIGNA HEALTHSCOPE PPO|20071|CIGNA HEALTHCARE|PO BOX 188061^^CHATTANOOGA^TN^37422-8061^||7898678090|1234||||20230202|20250202|20071PED|130|relpatient2IN1^reltesting2IN1^relSPRG2IN1^|Child|19870304|456 downing st^apt 2^Edison^NJ^19702-5342^US|||2|||YES||||||||||466|1789|||||||F||||BOTH||466\rIN2||954-333-2224|||Payer Plan||||||||||||||||||||||||||||||||||||||||||||||||||||||||987654321||(556)112-2222^^^In2@gmail.com|(556)112-2223^^^In22@gmail.com\rIN1|3|2000805^AETNA PPO|20008|AETNA|PO BOX 981106^^EL PASO^TX^79998-1106^||(800)789-9009|1234|TEST|||20230101|20250101|3456T789|130|relpatient3IN1^reltesting3IN1^relSPRG3IN1^|Child|19890201|789 downing st^apt 3^BOSTON^MA^98912-6543^US|||1|||YES||||||||||465|5678|||||||F||||BOTH||465\rIN2||954-333-2225|||Payer Plan|123456|||||||||||||||||||||||||||||||||||||||||||||||||||||||9876543211||(557)113-2223^^^In3@gmail.com|(557)113-2224^^^In32@gmail.com\rIN1||2007119^BCBS HEALTHSCOPE PPO|20072|BCBS HEALTHCARE|PO BOX 199045^^NASHVILLE^TN^37423-8062^||7898678919|4567||||20220202|20250301|2117108|131|relpatient3IN1^reltesting3IN1^relSPRG3IN1^|Child|19880108|789 downing st^apt 3^Boston^MA^98912-6543^US|||2|||YES||||||||||467|1790|||||||F||||BOTH||467\rIN2||954-444-2225|||Payer Plan||||||||||||||||||||||||||||||||||||||||||||||||||||||||987654322||5551112223^^In3@gmail.com|(557)113-2224^^In32@gmail.com \ No newline at end of file +MSH|^~\&|Epic|STL|Pediatrix||20230411105743145038900|TCO4A|ADT^A08|13503|T|2.3|\rEVN|A08|20230411105743145038900||A31A08A31|TCO4A^COOK^TIM^^^^^^SJMH^^^^^SJMMC|\rPID|1||TEST333345038900^^^EPI^EPI||patient1^girl1testing^sprg^^^^D||20230411|F|||111 first st^apt 1^somewhere^fl^55555-5555^US^P||(479)555-5874^CP^7^pid1@gmail.com^^479^5555874|(479)555-5875^P^7^pid12@gmail.com^^479^5555874||SINGLE||9543332222|954-331-2222|||||Y|2||||21230620|||||||||||||||20230611|20230811|\rPD1|||MERCY HOSPITAL ST LOUIS^^20101|||||||||\rNK1|1|PATIENT^TESTING^SPRG^|Mother|^^^^^US|(555)555-5551^^7^^^555^5555551||EC1||||^^||\rNK1|2|PATIENT^TESTING^SPRG^||^^^^^US|(555)555-5551^^7^^^555^5555551||MOTHER||||^^||\rNK1|3||||||EMP||||^^||NOT EMPLOYED\rPV1|1|INPATIENT|SJMNICUS^2107^^SJMMC^Dirty^^^^STLO NICU 2|NB|||15236798^SOM IP^PHYSICIAN^HOSPITALIST|15236799^SOM IP^REFERRING^HOSPITALIST||NURSERY||||BORN INSIDE |||15236798^SOM IP^PHYSICIAN^HOSPITALIST^|CONF|17723456|COMM C||||||||||||||||||||||||20230411080900|20230511080900|\rPV2||Level 2||||||||||Hospital Encounter||\rDG1|1||^Newborn|Newborn||A|\rGT1|1|100003699|relpatient1^reltesting1^relSPRG1^||1500 corporate Drive^Suite 101^SUNRISE^FL^33322^US|(555)555-5551^P^7^gt1@gmail.com^^555^5555551|(555)555-5552^P^7^gt12@gmail.com^^555^5555551|19870108|F|P/F|MOT|105-45-2154||||||||\rIN1|1|2000805^AETNA PPO|20008|AETNA|PO BOX 981106^^EL PASO^TX^79998-1106^||(800)789-9009|1234|TEST|||20230101|20250101|3456T789|130|relpatientIN1^reltestingIN1^relSPRGIN1^|Child|19850207|123 downing st^apt 1^Gainesville^FL^33312-5555^US^H|||1|||YES||||||||||465|5678|||||||F||||BOTH||465\rIN2||954-333-2223|||Payer Plan|123456|||||||||||||||||||||||||||||||||||||||||||||||||||||||9876543211||(555)111-2221^^^In1@gmail.com|(555)111-2222^^^In12@gmail.com\rIN2||954-333-2223|||Payer Plan|789101|||||||||||||||||||||||||||||||||||||||||||||||||||||||9876543211||(555)111-2221^^^In1@gmail.com|(555)111-2222^^^In12@gmail.com\rIN1|2|2007118^CIGNA HEALTHSCOPE PPO|20071|CIGNA HEALTHCARE|PO BOX 188061^^CHATTANOOGA^TN^37422-8061^||7898678090|1234||||20230202|20250202|20071PED|130|relpatient2IN1^reltesting2IN1^relSPRG2IN1^|Child|19870304|456 downing st^apt 2^Edison^NJ^19702-5342^US|||2|||YES||||||||||466|1789|||||||F||||BOTH||466\rIN2||954-333-2224|||Payer Plan||||||||||||||||||||||||||||||||||||||||||||||||||||||||987654321||(556)112-2222^^^In2@gmail.com|(556)112-2223^^^In22@gmail.com\rIN2||954-333-2223|||Payer Plan|121314|||||||||||||||||||||||||||||||||||||||||||||||||||||||9876543211||(555)111-2221^^^In1@gmail.com|(555)111-2222^^^In12@gmail.com\rIN2||954-333-2223|||Payer Plan|151617|||||||||||||||||||||||||||||||||||||||||||||||||||||||9876543211||(555)111-2221^^^In1@gmail.com|(555)111-2222^^^In12@gmail.com\rIN1|3|2000805^AETNA PPO|20008|AETNA|PO BOX 981106^^EL PASO^TX^79998-1106^||(800)789-9009|1234|TEST|||20230101|20250101|3456T789|130|relpatient3IN1^reltesting3IN1^relSPRG3IN1^|Child|19890201|789 downing st^apt 3^BOSTON^MA^98912-6543^US|||1|||YES||||||||||465|5678|||||||F||||BOTH||465\rIN2||954-333-2225|||Payer Plan|181920|||||||||||||||||||||||||||||||||||||||||||||||||||||||9876543211||(557)113-2223^^^In3@gmail.com|(557)113-2224^^^In32@gmail.com\rIN2||954-333-2223|||Payer Plan|212223|||||||||||||||||||||||||||||||||||||||||||||||||||||||9876543211||(555)111-2221^^^In1@gmail.com|(555)111-2222^^^In12@gmail.com\r \ No newline at end of file