From 38281aa698595303240ae275a8e0b251a884818f Mon Sep 17 00:00:00 2001 From: Luke Duncan Date: Fri, 15 Mar 2024 11:43:42 -0700 Subject: [PATCH] Added in files for Mumps for CQL/plandefs for decision tables and contraindications. --- input/cql/IMMZConcepts.cql | 1 + input/cql/IMMZD2DTMumps.cql | 161 ++++++++++++++++++ input/cql/IMMZD2DTMumpsInput.cql | 122 +++++++++++++ input/cql/IMMZD2DTRubellaInput.cql | 2 +- input/cql/IMMZD5DTMumps.cql | 115 +++++++++++++ .../activitydefinitions/IMMZD2DTMumpsMR.fsh | 7 + .../activitydefinitions/IMMZD5DTMumpsMR.fsh | 7 + .../IMMZ.D1.QuestionnaireResponse.Mumps.fsh | 47 +++++ input/fsh/models/IMMZD1ClientHistoryMumps.fsh | 8 + input/fsh/plandefinitions/IMMZD2DTMumps.fsh | 15 ++ .../plandefinitions/IMMZD2DTRubellaHigh.fsh | 2 +- .../plandefinitions/IMMZD2DTRubellaLow.fsh | 2 +- input/fsh/plandefinitions/IMMZD5DTMumps.fsh | 13 ++ .../QIMMZD1ClientHistoryMumps.fsh | 69 ++++++++ input/fsh/valuesets/IMMZ.Z.DE11.fsh | 19 +++ input/maps/IMMZD1MumpsQRToResources.fml | 19 +++ .../08.Alt12m/Patient/08.Alt12m.json | 12 ++ .../Immunization/flu-09.D0Agt12mLVlt4w.json | 23 +++ .../Patient/09.D0Agt12mLVlt4w.json | 12 ++ .../Immunization/flu-10.D0Agt12mLVgt4w.json | 23 +++ .../Patient/10.D0Agt12mLVgt4w.json | 12 ++ .../Immunization/mumps-11.D1Mlt4w.json | 29 ++++ .../11.D1Mlt4w/Patient/11.D1Mlt4w.json | 12 ++ .../Immunization/flu-12.D1Mgt4wLVlt4w.json | 23 +++ .../Immunization/mumps-12.D1Mgt4wLVlt4w.json | 29 ++++ .../Patient/12.D1Mgt4wLVlt4w.json | 12 ++ .../Immunization/flu-13.D1Mgt4wLVgt4w.json | 23 +++ .../Immunization/mumps-13.D1Mgt4wLVgt4w.json | 29 ++++ .../Patient/13.D1Mgt4wLVgt4w.json | 12 ++ .../14.D2/Immunization/mumps1-14.D2.json | 29 ++++ .../14.D2/Immunization/mumps2-14.D2.json | 29 ++++ .../IMMZD2DTMumps/14.D2/Patient/14.D2.json | 12 ++ .../IMMZD2DTMumps/examples.yaml | 135 +++++++++++++++ .../IMMZD2DTRubellaHigh/examples.yaml | 2 +- .../IMMZD2DTRubellaLow/examples.yaml | 2 +- .../Condition/allergy-20.pregnant.json | 24 +++ .../MedicationRequest/mumps-20.pregnant.json | 19 +++ .../20.pregnant/Patient/20.pregnant.json | 12 ++ .../Condition/allergy-21.severe.json | 24 +++ .../MedicationRequest/mumps-21.severe.json | 19 +++ .../21.severe/Patient/21.severe.json | 12 ++ .../allergy-22.immunodeficiency.json | 24 +++ .../mumps-22.immunodeficiency.json | 19 +++ .../Patient/22.immunodeficiency.json | 12 ++ .../allergy-23.immunosuppressed.json | 24 +++ .../mumps-23.immunosuppressed.json | 19 +++ .../Patient/23.immunosuppressed.json | 12 ++ .../IMMZD5DTMumps/examples.yaml | 87 ++++++++++ 48 files changed, 1371 insertions(+), 5 deletions(-) create mode 100644 input/cql/IMMZD2DTMumps.cql create mode 100644 input/cql/IMMZD2DTMumpsInput.cql create mode 100644 input/cql/IMMZD5DTMumps.cql create mode 100644 input/fsh/activitydefinitions/IMMZD2DTMumpsMR.fsh create mode 100644 input/fsh/activitydefinitions/IMMZD5DTMumpsMR.fsh create mode 100644 input/fsh/examples/IMMZ.D1.QuestionnaireResponse.Mumps.fsh create mode 100644 input/fsh/models/IMMZD1ClientHistoryMumps.fsh create mode 100644 input/fsh/plandefinitions/IMMZD2DTMumps.fsh create mode 100644 input/fsh/plandefinitions/IMMZD5DTMumps.fsh create mode 100644 input/fsh/questionnaires/QIMMZD1ClientHistoryMumps.fsh create mode 100644 input/fsh/valuesets/IMMZ.Z.DE11.fsh create mode 100644 input/maps/IMMZD1MumpsQRToResources.fml create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/08.Alt12m/Patient/08.Alt12m.json create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/09.D0Agt12mLVlt4w/Immunization/flu-09.D0Agt12mLVlt4w.json create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/09.D0Agt12mLVlt4w/Patient/09.D0Agt12mLVlt4w.json create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/10.D0Agt12mLVgt4w/Immunization/flu-10.D0Agt12mLVgt4w.json create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/10.D0Agt12mLVgt4w/Patient/10.D0Agt12mLVgt4w.json create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/11.D1Mlt4w/Immunization/mumps-11.D1Mlt4w.json create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/11.D1Mlt4w/Patient/11.D1Mlt4w.json create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/12.D1Mgt4wLVlt4w/Immunization/flu-12.D1Mgt4wLVlt4w.json create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/12.D1Mgt4wLVlt4w/Immunization/mumps-12.D1Mgt4wLVlt4w.json create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/12.D1Mgt4wLVlt4w/Patient/12.D1Mgt4wLVlt4w.json create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/13.D1Mgt4wLVgt4w/Immunization/flu-13.D1Mgt4wLVgt4w.json create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/13.D1Mgt4wLVgt4w/Immunization/mumps-13.D1Mgt4wLVgt4w.json create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/13.D1Mgt4wLVgt4w/Patient/13.D1Mgt4wLVgt4w.json create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/14.D2/Immunization/mumps1-14.D2.json create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/14.D2/Immunization/mumps2-14.D2.json create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/14.D2/Patient/14.D2.json create mode 100644 input/tests/plandefinition/IMMZD2DTMumps/examples.yaml create mode 100644 input/tests/plandefinition/IMMZD5DTMumps/20.pregnant/Condition/allergy-20.pregnant.json create mode 100644 input/tests/plandefinition/IMMZD5DTMumps/20.pregnant/MedicationRequest/mumps-20.pregnant.json create mode 100644 input/tests/plandefinition/IMMZD5DTMumps/20.pregnant/Patient/20.pregnant.json create mode 100644 input/tests/plandefinition/IMMZD5DTMumps/21.severe/Condition/allergy-21.severe.json create mode 100644 input/tests/plandefinition/IMMZD5DTMumps/21.severe/MedicationRequest/mumps-21.severe.json create mode 100644 input/tests/plandefinition/IMMZD5DTMumps/21.severe/Patient/21.severe.json create mode 100644 input/tests/plandefinition/IMMZD5DTMumps/22.immunodeficiency/Condition/allergy-22.immunodeficiency.json create mode 100644 input/tests/plandefinition/IMMZD5DTMumps/22.immunodeficiency/MedicationRequest/mumps-22.immunodeficiency.json create mode 100644 input/tests/plandefinition/IMMZD5DTMumps/22.immunodeficiency/Patient/22.immunodeficiency.json create mode 100644 input/tests/plandefinition/IMMZD5DTMumps/23.immunosuppressed/Condition/allergy-23.immunosuppressed.json create mode 100644 input/tests/plandefinition/IMMZD5DTMumps/23.immunosuppressed/MedicationRequest/mumps-23.immunosuppressed.json create mode 100644 input/tests/plandefinition/IMMZD5DTMumps/23.immunosuppressed/Patient/23.immunosuppressed.json create mode 100644 input/tests/plandefinition/IMMZD5DTMumps/examples.yaml diff --git a/input/cql/IMMZConcepts.cql b/input/cql/IMMZConcepts.cql index 4fccf896d7..ee12f78a61 100644 --- a/input/cql/IMMZConcepts.cql +++ b/input/cql/IMMZConcepts.cql @@ -49,6 +49,7 @@ valueset "Pertussis Vaccine": 'http://smart.who.int/ig/smart-immunizations/Value valueset "Rubella Vaccine": 'http://smart.who.int/ig/smart-immunizations/ValueSet/IMMZ.Z.DE17' valueset "Measles and Rubella Vaccine": 'http://smart.who.int/ig/smart-immunizations/ValueSet/IMMZ.Z.DE32' valueset "All Rubella Vaccine": 'http://smart.who.int/ig/smart-immunizations/ValueSet/IMMZ.Z.DE17.All' +valueset "Mumps Vaccine": 'http://smart.who.int/ig/smart-immunizations/ValueSet/IMMZ.Z.DE11' /* diff --git a/input/cql/IMMZD2DTMumps.cql b/input/cql/IMMZD2DTMumps.cql new file mode 100644 index 0000000000..bb5c073318 --- /dev/null +++ b/input/cql/IMMZD2DTMumps.cql @@ -0,0 +1,161 @@ + +/* + * Library: IMMZD2DTMumps (IMMZ.D2.DT.Mumps) + * Rule: Determine if the client is due for a mumps vaccination according to the national immunization schedule + * Decision Table: 2-dose schedule (countries with mumps in schedule and low transmission of measles) + * Trigger: IMMZ.D2 Determine required vaccination(s) if any + */ +library IMMZD2DTMumps +// Start Skeleton CQL +using FHIR version '4.0.1' +include FHIRHelpers version '4.0.1' +include IMMZCommon called IMMZCom +include IMMZConcepts called IMMZc +include IMMZConfig called IMMZCon +include IMMZVaccineLibrary called IMMZvl +include FHIRCommon called FC +include IMMZD2DTMumpsInput called input + +// End Skeleton CQL +context Patient + +define "mumps": + input."Mumps Doses Administered to Patient" + +/* +@dynamicValue: Guidance +*/ +define "Guidance": + case + when "Client is not due for mumps vaccination" then "Client is not due for mumps vaccination Guidance" + when "Client is due for mumps vaccination" then "Client is due for mumps vaccination Guidance" + when "Mumps immunization schedule is complete" then "Mumps immunization schedule is complete Guidance" + else '' + end + +/* +@output: Client is not due for mumps vaccination Case 1 +@pseudocode: "Immunization recommendation status" = 'Not due' +*/ +define "Client is not due for mumps vaccination Case 1": + input."Client's age is less than 12 months" + +/* +@output: Client is not due for mumps vaccination Case 2 +@pseudocode: "Immunization recommendation status" = 'Not due' +*/ +define "Client is not due for mumps vaccination Case 2": + input."No mumps primary series doses were administered" + and input."Client's age is more than or equal to 12 months" + and input."Live vaccine was administered in the last 4 weeks" + +/* +@output: Client is not due for mumps vaccination Case 3 +@pseudocode: "Immunization recommendation status" = 'Not due' +*/ +define "Client is not due for mumps vaccination Case 3": + input."One mumps primary series dose was administered" + and input."The latest mumps dose was administered less than 4 weeks ago" + +/* +@output: Client is not due for mumps vaccination Case 4 +@pseudocode: "Immunization recommendation status" = 'Not due' +*/ +define "Client is not due for mumps vaccination Case 4": + input."One mumps primary series dose was administered" + and input."The latest mumps dose was administered more than 4 weeks ago" + and input."Live vaccine was administered in the last 4 weeks" + +/* +@output: Client is not due for mumps vaccination +@pseudocode: "Immunization recommendation status" = 'Not due' +*/ +define "Client is not due for mumps vaccination": + "Client is not due for mumps vaccination Case 1" + or "Client is not due for mumps vaccination Case 2" + or "Client is not due for mumps vaccination Case 3" + or "Client is not due for mumps vaccination Case 4" + +/* +@output: Client is not due for mumps vaccination Guidance +@guidance: Should not vaccinate client for first mumps dose as client's age is less than 12 months. Check for any other vaccines due, and inform the caregiver of when to come back for first dose. +@guidance: Should not vaccinate client for first mumps dose as live vaccine was administered in the last 4 weeks. Check for any other vaccines due, and inform the caregiver of when to come back for first dose. +@guidance: Should not vaccinate client for second mumps dose as latest mumps dose was administered less than 4 weeks ago. Check for any other vaccines due, and inform the caregiver of when to come back for the second dose. +@guidance: Should not vaccinate client for second mumps dose as live vaccine was administered in the last 4 weeks. Check for any other vaccines due, and inform the caregiver of when to come back for the second dose. +*/ +define "Client is not due for mumps vaccination Guidance": + case + when "Client is not due for mumps vaccination Case 1" then 'Should not vaccinate client for first mumps dose as client\'s age is less than 12 months. Check for any other vaccines due, and inform the caregiver of when to come back for first dose.' + when "Client is not due for mumps vaccination Case 2" then 'Should not vaccinate client for first mumps dose as live vaccine was administered in the last 4 weeks. Check for any other vaccines due, and inform the caregiver of when to come back for first dose.' + when "Client is not due for mumps vaccination Case 3" then 'Should not vaccinate client for second mumps dose as latest mumps dose was administered less than 4 weeks ago. Check for any other vaccines due, and inform the caregiver of when to come back for the second dose.' + when "Client is not due for mumps vaccination Case 4" then 'Should not vaccinate client for second mumps dose as live vaccine was administered in the last 4 weeks. Check for any other vaccines due, and inform the caregiver of when to come back for the second dose.' + else '' + end + +/* +@output: Client is due for mumps vaccination Case 1 +@pseudocode: "Immunization recommendation status" = 'Due' +*/ +define "Client is due for mumps vaccination Case 1": + input."No mumps primary series doses were administered" + and input."Client's age is more than or equal to 12 months" + and input."No live vaccine was administered in the last 4 weeks" + +/* +@output: Client is due for mumps vaccination Case 2 +@pseudocode: "Immunization recommendation status" = 'Due' +*/ +define "Client is due for mumps vaccination Case 2": + input."One mumps primary series dose was administered" + and input."The latest mumps dose was administered more than 4 weeks ago" + and input."No live vaccine was administered in the last 4 weeks" + +/* +@output: Client is due for mumps vaccination +@pseudocode: "Immunization recommendation status" = 'Due' +*/ +define "Client is due for mumps vaccination": + "Client is due for mumps vaccination Case 1" + or "Client is due for mumps vaccination Case 2" + +/* +@output: Client is due for mumps vaccination Guidance +@guidance: Should vaccinate client for first mumps dose as the client is within appropriate age range and no live vaccine was administered in the last 4 weeks. Check for contraindications. +@guidance: Should vaccinate client for second mumps dose as latest mumps dose was administered more than 4 weeks ago and no live vaccine was administered in the last 4 weeks. Check for contraindications. +*/ +define "Client is due for mumps vaccination Guidance": + case + when "Client is due for mumps vaccination Case 1" then 'Should vaccinate client for first mumps dose as the client is within appropriate age range and no live vaccine was administered in the last 4 weeks. Check for contraindications. ' + when "Client is due for mumps vaccination Case 2" then 'Should vaccinate client for second mumps dose as latest mumps dose was administered more than 4 weeks ago and no live vaccine was administered in the last 4 weeks. Check for contraindications.' + else '' + end + +/* +@output: Mumps immunization schedule is complete +@pseudocode: "Immunization recommendation status" = 'Complete' +*/ +define "Mumps immunization schedule is complete": + input."Two mumps primary series doses were administered" + +/* +@output: Mumps immunization schedule is complete Guidance +@guidance: Mumps immunization schedule is complete. Two mumps primary series doses were administered. Check for any other vaccines due. +*/ +define "Mumps immunization schedule is complete Guidance": + 'Mumps immunization schedule is complete. Two mumps primary series doses were administered. Check for any other vaccines due.' + + +/* +@test: Test expected results based on example patients +*/ +define "Test Validation": + case + when Patient.id = '08.Alt12m' then "Client is not due for mumps vaccination Case 1" and "Guidance" = 'Should not vaccinate client for first mumps dose as client\'s age is less than 12 months. Check for any other vaccines due, and inform the caregiver of when to come back for first dose.' + when Patient.id = '09.D0Agt12mLVlt4w' then "Client is not due for mumps vaccination Case 2" and "Guidance" = 'Should not vaccinate client for first mumps dose as live vaccine was administered in the last 4 weeks. Check for any other vaccines due, and inform the caregiver of when to come back for first dose.' + when Patient.id = '10.D0Agt12mLVgt4w' then "Client is due for mumps vaccination Case 1" and "Guidance" = 'Should vaccinate client for first mumps dose as the client is within appropriate age range and no live vaccine was administered in the last 4 weeks. Check for contraindications. ' + when Patient.id = '11.D1Mlt4w' then "Client is not due for mumps vaccination Case 3" and "Guidance" = 'Should not vaccinate client for second mumps dose as latest mumps dose was administered less than 4 weeks ago. Check for any other vaccines due, and inform the caregiver of when to come back for the second dose.' + when Patient.id = '12.D1Mgt4wLVlt4w' then "Client is not due for mumps vaccination Case 4" and "Guidance" = 'Should not vaccinate client for second mumps dose as live vaccine was administered in the last 4 weeks. Check for any other vaccines due, and inform the caregiver of when to come back for the second dose.' + when Patient.id = '13.D1Mgt4wLVgt4w' then "Client is due for mumps vaccination Case 2" and "Guidance" = 'Should vaccinate client for second mumps dose as latest mumps dose was administered more than 4 weeks ago and no live vaccine was administered in the last 4 weeks. Check for contraindications.' + when Patient.id = '14.D2' then "Mumps immunization schedule is complete" and "Guidance" = 'Mumps immunization schedule is complete. Two mumps primary series doses were administered. Check for any other vaccines due.' + else 'No test case set' + end diff --git a/input/cql/IMMZD2DTMumpsInput.cql b/input/cql/IMMZD2DTMumpsInput.cql new file mode 100644 index 0000000000..de495ecd79 --- /dev/null +++ b/input/cql/IMMZD2DTMumpsInput.cql @@ -0,0 +1,122 @@ +/* + * Library: IMMZD2DTMumpsInput (IMMZ.D2.DT.MumpsInput) + */ +library IMMZD2DTMumpsInput +// Start Skeleton CQL +using FHIR version '4.0.1' +include FHIRHelpers version '4.0.1' +include IMMZCommon called IMMZCom +include IMMZConcepts called IMMZc +include IMMZConfig called IMMZCon +include IMMZVaccineLibrary called IMMZvl +include FHIRCommon called FC + +// End Skeleton CQL +context Patient + +/* +@internal: Mumps containing Doses Administered to Patient +*/ +define "Mumps Doses Administered to Patient": + IMMZCom."Doses Administered to Patient" I + where + I.vaccineCode in IMMZc."Mumps Vaccine" + +/* +@internal: Date of latest Mumps Vaccine +*/ +define "Date of latest Mumps Vaccine": + First("Mumps Doses Administered to Patient").occurrence as dateTime + +/* +@input: No mumps primary series doses were administered +@pseudocode: Count of vaccines administered (where "Vaccine type" = 'Mumps containing vaccines' and "Type of dose" = "Primary series") = 0 +*/ +define "No mumps primary series doses were administered": + not exists("Mumps Doses Administered to Patient") + +/* +@input: One mumps primary series dose was administered +@pseudocode: Count of vaccines administered (where "Vaccine type" = 'Mumps containing vaccines' and "Type of dose" = "Primary series") = 1 +*/ +define "One mumps primary series dose was administered": + Count("Mumps Doses Administered to Patient") = 1 + +/* +@input: Two mumps primary series doses were administered +@pseudocode: Count of vaccines administered (where "Vaccine type" = 'Mumps containing vaccines' and "Type of dose" = "Primary series") = 2 +*/ +define "Two mumps primary series doses were administered": + Count("Mumps Doses Administered to Patient") >= 2 + +/* +@input: Client's age is less than 12 months +@pseudocode: 'Today's date - "Date of birth" < 12 'month' +*/ +define "Client's age is less than 12 months": + IMMZCom."Current Patient Age In Months" < 12 + +/* +@input: Client's age is more than or equal to 12 months +@pseudocode: 'Today's date - "Date of birth" ≥ 12 'month' +*/ +define "Client's age is more than or equal to 12 months": + not("Client's age is less than 12 months") + +/* +@input: The latest mumps dose was administered less than 4 weeks ago +@pseudocode: 'Today's date - "Date and time of vaccination" (where "Vaccine type" = 'Mumps containing vaccines') < 4 'week' +*/ +define "The latest mumps dose was administered less than 4 weeks ago": + "Date of latest Mumps Vaccine" is not null and duration in weeks between "Date of latest Mumps Vaccine" and Now() < 4 + +/* +@input: The latest mumps dose was administered more than 4 weeks ago +@pseudocode: 'Today's date - "Date and time of vaccination" (where "Vaccine type" = 'Mumps containing vaccines') ≥ 4 'week' +*/ +define "The latest mumps dose was administered more than 4 weeks ago": + Not("The latest mumps dose was administered less than 4 weeks ago") + +/* +@input: Live vaccine was administered in the last 4 weeks +@pseudocode: 'Today's date - latest "Date and time of vaccination" (where "Live vaccine" = TRUE) < 4 'week' +*/ +define "Live vaccine was administered in the last 4 weeks": + IMMZCom."Date of Latest Live Attenuated Vaccine" is not null and duration in weeks between IMMZCom."Date of Latest Live Attenuated Vaccine" and Now() < 4 + +/* +@input: No live vaccine was administered in the last 4 weeks +@pseudocode: 'Today's date - latest "Date and time of vaccination" (where "Live vaccine" = TRUE) ≥ 4 'week' +*/ +define "No live vaccine was administered in the last 4 weeks": + not("Live vaccine was administered in the last 4 weeks") + + +/* +@input: The client is currently pregnant +@pseudocode: "Potential contraindications" = "Currently pregnant" +*/ +define "The client is currently pregnant": + IMMZCom."Pregnant" + +/* +@input: The client has allergy to vaccine components +@pseudocode: '"Potential contraindications" = 'Severe allergic reactions" +*/ +define "The client has allergy to vaccine components": + exists(IMMZCom."Severe Allergic Reactions Condition") + +/* +@input: The client has immune deficiency +@pseudocode: '"Potential contraindications" = 'Immunodeficiency syndromes' +*/ +define "The client has immune deficiency": + exists(IMMZCom."Immunodeficiency syndromes Condition") + +/* +@input: The client is severely immunosuppressed +@pseudocode: "Potential contraindications" = "Severely immunosuppressed" +*/ +define "The client is severely immunosuppressed": + exists(IMMZCom."Severely Immunosuppressed Condition") + diff --git a/input/cql/IMMZD2DTRubellaInput.cql b/input/cql/IMMZD2DTRubellaInput.cql index f18da8ccc7..78d86944a1 100644 --- a/input/cql/IMMZD2DTRubellaInput.cql +++ b/input/cql/IMMZD2DTRubellaInput.cql @@ -33,7 +33,7 @@ define "No rubella primary series dose was administered": @pseudocode: Count of vaccines administered (where "Vaccine type" = 'Rubella containing vaccines' and "Type of dose" = "Primary series") = 1 */ define "One rubella primary series dose was administered": - Count("Rubella Doses Administered to Patient") = 1 + Count("Rubella Doses Administered to Patient") >= 1 /* @input: Client's age is less than 9 months diff --git a/input/cql/IMMZD5DTMumps.cql b/input/cql/IMMZD5DTMumps.cql new file mode 100644 index 0000000000..6c4d0534e5 --- /dev/null +++ b/input/cql/IMMZD5DTMumps.cql @@ -0,0 +1,115 @@ + +/* + * Library: IMMZD5DTMumps (IMMZ.D5.DT.Mumps contraindications) + * Rule: "Check for contraindications before administering the vaccine(s) due " + * Decision Table: Potential contraindications + * Trigger: IMMZ.D5 Determine vaccine(s) to be administered based on contraindications + */ +library IMMZD5DTMumps +// Start Skeleton CQL +using FHIR version '4.0.1' +include FHIRHelpers version '4.0.1' +include IMMZCommon called IMMZCom +include IMMZConcepts called IMMZc +include IMMZConfig called IMMZCon +include IMMZVaccineLibrary called IMMZvl +include FHIRCommon called FC +include IMMZD2DTMumpsInput called input + +// End Skeleton CQL +context Patient + +/* +@internal: Draft Medication Request for Mumps dose +*/ +define "Draft Medication Request for Mumps dose": + [MedicationRequest: IMMZc."Mumps Vaccine"] MR where MR.status = 'draft' and MR.intent = 'proposal' + sort by date from (authoredOn as FHIR.dateTime) desc + +/* +@dynamicValue: Draft Medication Request ID for Mumps dose +*/ +define "Draft Medication Request ID for Mumps dose": + First("Draft Medication Request for Mumps dose").id + + +/* +@dynamicValue: Guidance +*/ +define "Guidance": + case + when "Mumps vaccination is contraindicated" then "Mumps vaccination is contraindicated Guidance" + when "Mumps vaccination could be contraindicated. Clinical judgement is required." then "Mumps vaccination could be contraindicated. Clinical judgement is required. Guidance" + else '' + end + +/* +@output: Mumps vaccination is contraindicated Case 1 +@pseudocode: "Immunization recommendation status" = 'Contraindicated' +*/ +define "Mumps vaccination is contraindicated Case 1": + input."The client is currently pregnant" + +/* +@output: Mumps vaccination is contraindicated Case 2 +@pseudocode: "Immunization recommendation status" = 'Contraindicated' +*/ +define "Mumps vaccination is contraindicated Case 2": + input."The client has immune deficiency" + +/* +@output: Mumps vaccination is contraindicated Case 3 +@pseudocode: "Immunization recommendation status" = 'Contraindicated' +*/ +define "Mumps vaccination is contraindicated Case 3": + input."The client is severely immunosuppressed" + +/* +@output: Mumps vaccination is contraindicated +@pseudocode: "Immunization recommendation status" = 'Contraindicated' +*/ +define "Mumps vaccination is contraindicated": + "Mumps vaccination is contraindicated Case 1" + or "Mumps vaccination is contraindicated Case 2" + or "Mumps vaccination is contraindicated Case 3" + +/* +@output: Mumps vaccination is contraindicated Guidance +@guidance: Do not vaccinate client for mumps as mumps vaccination is contraindicated for pregnant individuals. +@guidance: Do not vaccinate client for mumps as mumps vaccination is contraindicated in individuals with immunodeficiency syndromes +@guidance: Do not vaccinate client for mumps as mumps vaccination is contraindicated in immunosuppressed individuals +*/ +define "Mumps vaccination is contraindicated Guidance": + case + when "Mumps vaccination is contraindicated Case 1" then 'Do not vaccinate client for mumps as mumps vaccination is contraindicated for pregnant individuals.' + when "Mumps vaccination is contraindicated Case 2" then 'Do not vaccinate client for mumps as mumps vaccination is contraindicated in individuals with immunodeficiency syndromes' + when "Mumps vaccination is contraindicated Case 3" then 'Do not vaccinate client for mumps as mumps vaccination is contraindicated in immunosuppressed individuals' + else '' + end + +/* +@output: Mumps vaccination could be contraindicated. Clinical judgement is required. +@pseudocode: Create a clinical note. +*/ +define "Mumps vaccination could be contraindicated. Clinical judgement is required.": + input."The client has allergy to vaccine components" + +/* +@output: Mumps vaccination could be contraindicated. Clinical judgement is required. Guidance +@guidance: Do not vaccinate client for mumps if client has allergy to vaccine components, such as neomycin and gelatin. +*/ +define "Mumps vaccination could be contraindicated. Clinical judgement is required. Guidance": + 'Do not vaccinate client for mumps if client has allergy to vaccine components, such as neomycin and gelatin.' + + +/* +@test: Test expected results based on example patients +*/ +define "Test Validation": + case + when Patient.id = '20.pregnant' then "Mumps vaccination is contraindicated Case 1" and "Guidance" = 'Do not vaccinate client for mumps as mumps vaccination is contraindicated for pregnant individuals.' + when Patient.id = '21.severe' then "Mumps vaccination could be contraindicated. Clinical judgement is required." and "Guidance" = 'Do not vaccinate client for mumps if client has allergy to vaccine components, such as neomycin and gelatin.' + when Patient.id = '22.immunodeficiency' then "Mumps vaccination is contraindicated Case 2" and "Guidance" = 'Do not vaccinate client for mumps as mumps vaccination is contraindicated in individuals with immunodeficiency syndromes' + when Patient.id = '23.immunosuppressed' then "Mumps vaccination is contraindicated Case 3" and "Guidance" = 'Do not vaccinate client for mumps as mumps vaccination is contraindicated in immunosuppressed individuals' + else 'No test case set' + end diff --git a/input/fsh/activitydefinitions/IMMZD2DTMumpsMR.fsh b/input/fsh/activitydefinitions/IMMZD2DTMumpsMR.fsh new file mode 100644 index 0000000000..5230ed3146 --- /dev/null +++ b/input/fsh/activitydefinitions/IMMZD2DTMumpsMR.fsh @@ -0,0 +1,7 @@ +Instance: IMMZD2DTMumpsMR +InstanceOf: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-immunizationactivity +Title: "IMMZ.D2.DT.Mumps.MR" +Description: "Provide immunization" +Usage: #definition + +* insert MedicationRequestActivityDefinition( D2DTMumps, 0.1.0, 2024-02-29, false, [[$ICD11#XM1131 "Mumps vaccine"]]) \ No newline at end of file diff --git a/input/fsh/activitydefinitions/IMMZD5DTMumpsMR.fsh b/input/fsh/activitydefinitions/IMMZD5DTMumpsMR.fsh new file mode 100644 index 0000000000..e86bb4f2c7 --- /dev/null +++ b/input/fsh/activitydefinitions/IMMZD5DTMumpsMR.fsh @@ -0,0 +1,7 @@ +Instance: IMMZD5DTMumpsMR +InstanceOf: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-immunizationactivity +Title: "IMMZ.D5.DT.Mumps.MR" +Description: "Immunization Contraindication" +Usage: #definition + +* insert MedicationRequestActivityDefinition( D5DTMumps, 0.1.0, 2023-10-23, true, $ICD11#XM1131 "Mumps vaccine") \ No newline at end of file diff --git a/input/fsh/examples/IMMZ.D1.QuestionnaireResponse.Mumps.fsh b/input/fsh/examples/IMMZ.D1.QuestionnaireResponse.Mumps.fsh new file mode 100644 index 0000000000..f0c4a37e48 --- /dev/null +++ b/input/fsh/examples/IMMZ.D1.QuestionnaireResponse.Mumps.fsh @@ -0,0 +1,47 @@ +Instance: Example.IMMZ.D1.QuestionnaireResponse.Mumps +InstanceOf: QuestionnaireResponse +Usage: #example +* status = #completed +* authored = "2023-10-18T19:20:20.913Z" +* questionnaire = Canonical(QIMMZD1ClientHistoryMumps) +* subject = Reference(patient654321) + +* item[+] + * linkId = "birth" + * answer.valueBoolean = false +* item[+] + * linkId = "booster" + * answer.valueBoolean = false +* item[+] + * linkId = "completedPrimarySeries" + * answer.valueBoolean = true +* item[+] + * linkId = "dateSeriesCompleted" + * answer.valueDate = "2023-01-01" +* item[+] + * linkId = "hivStatus" + * answer.valueCoding = IMMZ.D1#DE11 +* item[+] + * linkId = "pretermBirth" + * answer.valueBoolean = false +* item[+] + * linkId = "immunocompromised" + * answer.valueBoolean = false +* item[+] + * linkId = "OnART" + * answer.valueBoolean = true +* item[+] + * linkId = "severelyImmunosuppressed" + * answer.valueBoolean = true +* item[+] + * linkId = "artStartDate" + * answer.valueDate = "2022-06-01" +* item[+] + * linkId = "vaccineHistory" + * item[+] + * linkId = "vaccineType" + * answer.valueCoding = $ICD11#XM1131 + * item[+] + * linkId = "vaccineDate" + * answer.valueDate = "2023-04-05" + diff --git a/input/fsh/models/IMMZD1ClientHistoryMumps.fsh b/input/fsh/models/IMMZD1ClientHistoryMumps.fsh new file mode 100644 index 0000000000..8cc54e78f5 --- /dev/null +++ b/input/fsh/models/IMMZD1ClientHistoryMumps.fsh @@ -0,0 +1,8 @@ +Logical: IMMZD1ClientHistoryMumps +Title: "IMMZ.D1 Capture Client History for Mumps" +Parent: IMMZD1ClientHistory +Description: "Data elements for the IMMZ.D1 Capture Client History Data Dictionary for Mumps." + +* ^name = "IMMZ_D1_Client_History_Mumps" + +* vaccineHistory.vaccineType from IMMZ.Z.DE11 diff --git a/input/fsh/plandefinitions/IMMZD2DTMumps.fsh b/input/fsh/plandefinitions/IMMZD2DTMumps.fsh new file mode 100644 index 0000000000..dbc33820ed --- /dev/null +++ b/input/fsh/plandefinitions/IMMZD2DTMumps.fsh @@ -0,0 +1,15 @@ +Instance: IMMZD2DTMumps +InstanceOf: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-recommendationdefinition +Title: "IMMZ.D2.DT.Mumps" +Description: """ +Determine if the client is due for a mumps vaccination according to the national immunization schedule +""" +Usage: #definition + +* insert PlanDefMain( IMMZD2DTMumps, 0.1.0 ) +* insert PlanDefMedicationRequestAction( [[Determine if the client is due for mumps]], [[""" + Determine if the client is due for mumps vaccination according to the national immunization protocol. + """]], Client is due for mumps vaccination, IMMZD2DTMumpsMR ) +* insert PlanDefCommunicationRequestAction([[Send Guidance for the patient regarding mumps primary series.]], [[""" + Send Guidance for the patient regarding mumps primary series. + """]], Guidance, Guidance) \ No newline at end of file diff --git a/input/fsh/plandefinitions/IMMZD2DTRubellaHigh.fsh b/input/fsh/plandefinitions/IMMZD2DTRubellaHigh.fsh index cfba4bc363..98725b19e6 100644 --- a/input/fsh/plandefinitions/IMMZD2DTRubellaHigh.fsh +++ b/input/fsh/plandefinitions/IMMZD2DTRubellaHigh.fsh @@ -2,7 +2,7 @@ Instance: IMMZD2DTRubellaHigh InstanceOf: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-recommendationdefinition Title: "IMMZ.D2.DT.RubellaHigh" Description: """ -Determine if the client is due for a hepatitis B vaccination according to the national immunization schedule +Determine if the client is due for a rubella vaccination according to the national immunization schedule """ Usage: #definition diff --git a/input/fsh/plandefinitions/IMMZD2DTRubellaLow.fsh b/input/fsh/plandefinitions/IMMZD2DTRubellaLow.fsh index a320ab0997..ff4fb40ba7 100644 --- a/input/fsh/plandefinitions/IMMZD2DTRubellaLow.fsh +++ b/input/fsh/plandefinitions/IMMZD2DTRubellaLow.fsh @@ -2,7 +2,7 @@ Instance: IMMZD2DTRubellaLow InstanceOf: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-recommendationdefinition Title: "IMMZ.D2.DT.RubellaLow" Description: """ -Determine if the client is due for a hepatitis B vaccination according to the national immunization schedule +Determine if the client is due for a rubella vaccination according to the national immunization schedule """ Usage: #definition diff --git a/input/fsh/plandefinitions/IMMZD5DTMumps.fsh b/input/fsh/plandefinitions/IMMZD5DTMumps.fsh new file mode 100644 index 0000000000..9524ba65f4 --- /dev/null +++ b/input/fsh/plandefinitions/IMMZD5DTMumps.fsh @@ -0,0 +1,13 @@ +Instance: IMMZD5DTMumps +InstanceOf: http://hl7.org/fhir/uv/cpg/StructureDefinition/cpg-recommendationdefinition +Title: "IMMZ.D5.DT.Mumps" +Description: "Check contraindications for Mumps vaccine" +Usage: #definition + +* insert PlanDefMain( IMMZD5DTMumps, 0.1.0 ) +* insert PlanDefCommunicationRequestAction([[Send Guidance for the patient regarding Mumps contraindication.]], [[""" + Show Guidance for the patient regarding Mumps contraindication. + """]], Guidance, Guidance) +* insert PlanDefMedicationRequestUpdate([[Check Contraindication for Mumps Immunization]], [[""" + Contraindication for rubella immunization + """]], Mumps vaccination is contraindicated, IMMZD5DTMumpsMR, Draft Medication Request ID for Mumps dose ) \ No newline at end of file diff --git a/input/fsh/questionnaires/QIMMZD1ClientHistoryMumps.fsh b/input/fsh/questionnaires/QIMMZD1ClientHistoryMumps.fsh new file mode 100644 index 0000000000..cb28da8e20 --- /dev/null +++ b/input/fsh/questionnaires/QIMMZD1ClientHistoryMumps.fsh @@ -0,0 +1,69 @@ +Instance: QIMMZD1ClientHistoryMumps +InstanceOf: sdc-questionnaire-extr-smap +Title: "Capture Client History Questionnaire - Mumps" +Description: "Immunization - Capture Client History Questionnaire for Mumps Immunization" +Usage: #definition +* id = "IMMZD1ClientHistoryMumps" +* version = "2023" +* status = #draft +* subjectType = #Patient +* language = #en +* status = #draft +* derivedFrom = Canonical(QIMMZD1ClientHistory) +* contained[+] = IMMZ.D1.DE10 +* contained[+] = IMMZ.D1.DE103 +* contained[+] = IMMZ.Z.DE11 + +* extension[+].url = "http://hl7.org/fhir/uv/sdc/StructureDefinition/sdc-questionnaire-targetStructureMap" +* extension[=].valueCanonical = "http://smart.who.int/ig/smart-immunizations/StructureMap/IMMZD1MumpsQRToResources" + + +* insert Question(type, The type of dose in a series that the client received, choice, true, false) +* item[=] + * answerValueSet = Canonical(IMMZ.D1.DE103) + * code[+] = IMMZ.D1#DE103 +* insert Question(booster, Indicates if the client has completed the booster series of a product/antigen, boolean, false, false) +* item[=] + * code[+] = IMMZ.D1#DE102 +* insert Question(completedPrimarySeries, Indicates if the client has completed the primary vaccination series of a product/antigen. If the client has not yet completed their primary series\, it means they may be expected to receive more doses to complete their vaccination regimen for the respective product/antigen., boolean, false, false) +* item[=] + * code[+] = IMMZ.D1#DE8 +* insert Question(dateSeriesCompleted, The date when the client completed the primary vaccination series - per product/antigen, date, false, false) +* item[=] + * code[+] = IMMZ.D1#DE81 +* insert Question(hivStatus, The current human immunodeficiency virus HIV status of the client, choice, false, false) +* item[=] + * answerValueSet = Canonical(IMMZ.D1.DE10) + * code[+] = IMMZ.D1#DE10 + * code[+] = $LNC#55277-8 + * code[+] = $SCT#278977008 +* insert Question(pretermBirth, The infant was preterm; the mother gave birth to the infant when gestational age was less than 37 weeks, boolean, false, false) +* item[=] + * code[+] = IMMZ.D1#DE15 + * code[+] = $ICD11#KA21.4 + * code[+] = $LNC#76517-2 + * code[+] = $SCT#395507008 +* insert Question(immunocompromised, The client is known to be immunocompromised. This means the client has a weakened immune system and having a reduced ability to fight infections and other diseases, boolean, true, false) +* item[=] + * code[+] = IMMZ.D1#DE16 + * code[+] = $ICD11#4B4Z + * code[+] = $LNC#96381-9 + * code[+] = $SCT#370388006 +* insert Question(onART, The client is currently receiving antiretroviral therapy - ART, boolean, false, false) +* item[=] + * code[+] = IMMZ.D1#DE17 +* insert Question(artStartDate, The date on which the client started or restarted antiretroviral therapy ART, date, false, false) +* item[=] + * code[+] = IMMZ.D1#DE49 +* insert Question(vaccineHistory, Vaccine History, group, false, true) +* item[=] + * insert Question(vaccineType, Vaccine type/category that was administered or was to be administered. Any vaccine code available in the IMMZ.Z Vaccine Library list of codes applies in this data element, choice, true, false) + * item[=] + * answerValueSet = Canonical(IMMZ.Z.DE17) + * code[+] = IMMZ.D#DE11 + * code[+] = $LNC#39236-5 + * code[+] = $SCT#787859002 + * insert Question(vaccineDate, Represents the visit/encounter date\, which is the date and time when the vaccine was administered to the client, date, true, false) + * item[=] + * code[+] = IMMZ.D#DE20 + * code[+] = $LNC#30952-6 \ No newline at end of file diff --git a/input/fsh/valuesets/IMMZ.Z.DE11.fsh b/input/fsh/valuesets/IMMZ.Z.DE11.fsh new file mode 100644 index 0000000000..26bc50cc76 --- /dev/null +++ b/input/fsh/valuesets/IMMZ.Z.DE11.fsh @@ -0,0 +1,19 @@ +ValueSet: IMMZ.Z.DE11 +Title: "IMMZ.Z.DE.11 Mumps containing vaccines" +Description: "Vaccine terminology codes for Mumps containing vaccines." + +* ^status = #active +* ^experimental = false +* ^name = "IMMZ_Z_DE11" + +* $ICD11#XM1131 "Mumps vaccine" +* $ICD11#XM2340 "Mumps, live attenuated" + +* $LNC#30940-1 "Measles virus+Mumps virus+Rubella virus dose count in combination vaccine" + +* $SCT#836498007 "Mumps orthorubulavirus antigen-containing vaccine product" + +// From measles/rubella vaccines +* $ICD11#XM21H2 "Measles, combinations with rubella, live attenuated" +* $ICD11#XM8TF3 "Measles, combinations with mumps and rubella, live attenuated" +* $ICD11#XM4AJ8 "Measles, combinations with mumps, rubella and varicella, live attenuated" \ No newline at end of file diff --git a/input/maps/IMMZD1MumpsQRToResources.fml b/input/maps/IMMZD1MumpsQRToResources.fml new file mode 100644 index 0000000000..39a1a65796 --- /dev/null +++ b/input/maps/IMMZD1MumpsQRToResources.fml @@ -0,0 +1,19 @@ +map "http://smart.who.int/ig/smart-immunizations/StructureMap/IMMZD1MumpsQRToResources" = "IMMZD1MumpsQRToResources" + +uses "http://hl7.org/fhir/StructureDefinition/QuestionnaireResponse" alias QResp as source +uses "http://smart.who.int/ig/smart-immunizations/StructureDefinition/IMMZD1ClientHistoryMumps" alias IMMZD1 as source +uses "http://hl7.org/fhir/StructureDefinition/Bundle" alias Bundle as target + +imports "http://smart.who.int/ig/smart-immunizations/StructureMap/IMMZD1QRToLM" +imports "http://smart.who.int/ig/smart-immunizations/StructureMap/IMMZD1LMToResources" + +group QRespToBundle ( + source qr : QResp, + target bundle: Bundle +) { + qr -> create("http://smart.who.int/ig/smart-immunizations/StructureDefinition/IMMZD1ClientHistoryMumps") as model + then{ + qr -> model then QRespToIMMZD1( qr, model) "QRtoLM"; + qr -> bundle then IMMZD1ToBundle( model, bundle ) "LMtoBundle"; + } "QRtoBundle"; +} diff --git a/input/tests/plandefinition/IMMZD2DTMumps/08.Alt12m/Patient/08.Alt12m.json b/input/tests/plandefinition/IMMZD2DTMumps/08.Alt12m/Patient/08.Alt12m.json new file mode 100644 index 0000000000..a2320363b6 --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/08.Alt12m/Patient/08.Alt12m.json @@ -0,0 +1,12 @@ +{ + "resourceType": "Patient", + "id": "08.Alt12m", + "name": [ + { + "text": "08.Alt12m", + "use": "official" + } + ], + "birthDate": "2024-03-14", + "gender": "female" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD2DTMumps/09.D0Agt12mLVlt4w/Immunization/flu-09.D0Agt12mLVlt4w.json b/input/tests/plandefinition/IMMZD2DTMumps/09.D0Agt12mLVlt4w/Immunization/flu-09.D0Agt12mLVlt4w.json new file mode 100644 index 0000000000..912e0744e7 --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/09.D0Agt12mLVlt4w/Immunization/flu-09.D0Agt12mLVlt4w.json @@ -0,0 +1,23 @@ +{ + "resourceType": "Immunization", + "id": "flu-09.D0Agt12mLVlt4w", + "status": "completed", + "vaccineCode": { + "coding": [ + { + "code": "XM5V64", + "system": "http://hl7.org/fhir/sid/icd-11", + "display": "Influenza vaccines, live attenuated" + } + ] + }, + "expirationDate": "2025-03-15", + "lotNumber": "123", + "patient": { + "reference": "Patient/09.D0Agt12mLVlt4w" + }, + "location": { + "display": "Vaccination Site" + }, + "occurrenceDateTime": "2024-03-01" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD2DTMumps/09.D0Agt12mLVlt4w/Patient/09.D0Agt12mLVlt4w.json b/input/tests/plandefinition/IMMZD2DTMumps/09.D0Agt12mLVlt4w/Patient/09.D0Agt12mLVlt4w.json new file mode 100644 index 0000000000..3d263e4968 --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/09.D0Agt12mLVlt4w/Patient/09.D0Agt12mLVlt4w.json @@ -0,0 +1,12 @@ +{ + "resourceType": "Patient", + "id": "09.D0Agt12mLVlt4w", + "name": [ + { + "text": "09.D0Agt12mLVlt4w", + "use": "official" + } + ], + "birthDate": "2023-03-15", + "gender": "female" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD2DTMumps/10.D0Agt12mLVgt4w/Immunization/flu-10.D0Agt12mLVgt4w.json b/input/tests/plandefinition/IMMZD2DTMumps/10.D0Agt12mLVgt4w/Immunization/flu-10.D0Agt12mLVgt4w.json new file mode 100644 index 0000000000..b8e141e329 --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/10.D0Agt12mLVgt4w/Immunization/flu-10.D0Agt12mLVgt4w.json @@ -0,0 +1,23 @@ +{ + "resourceType": "Immunization", + "id": "flu-10.D0Agt12mLVgt4w", + "status": "completed", + "vaccineCode": { + "coding": [ + { + "code": "XM5V64", + "system": "http://hl7.org/fhir/sid/icd-11", + "display": "Influenza vaccines, live attenuated" + } + ] + }, + "expirationDate": "2025-03-15", + "lotNumber": "123", + "patient": { + "reference": "Patient/10.D0Agt12mLVgt4w" + }, + "location": { + "display": "Vaccination Site" + }, + "occurrenceDateTime": "2024-02-09" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD2DTMumps/10.D0Agt12mLVgt4w/Patient/10.D0Agt12mLVgt4w.json b/input/tests/plandefinition/IMMZD2DTMumps/10.D0Agt12mLVgt4w/Patient/10.D0Agt12mLVgt4w.json new file mode 100644 index 0000000000..4fd85c4710 --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/10.D0Agt12mLVgt4w/Patient/10.D0Agt12mLVgt4w.json @@ -0,0 +1,12 @@ +{ + "resourceType": "Patient", + "id": "10.D0Agt12mLVgt4w", + "name": [ + { + "text": "10.D0Agt12mLVgt4w", + "use": "official" + } + ], + "birthDate": "2023-03-15", + "gender": "female" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD2DTMumps/11.D1Mlt4w/Immunization/mumps-11.D1Mlt4w.json b/input/tests/plandefinition/IMMZD2DTMumps/11.D1Mlt4w/Immunization/mumps-11.D1Mlt4w.json new file mode 100644 index 0000000000..c8f216b9ac --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/11.D1Mlt4w/Immunization/mumps-11.D1Mlt4w.json @@ -0,0 +1,29 @@ +{ + "resourceType": "Immunization", + "id": "mumps-11.D1Mlt4w", + "status": "completed", + "vaccineCode": { + "coding": [ + { + "code": "XM8TF3", + "system": "http://hl7.org/fhir/sid/icd-11", + "display": "Measles, combinations with mumps and rubella, live attenuated" + } + ] + }, + "expirationDate": "2025-03-15", + "lotNumber": "123", + "patient": { + "reference": "Patient/11.D1Mlt4w" + }, + "location": { + "display": "Vaccination Site" + }, + "occurrenceDateTime": "2024-03-01", + "protocolApplied": [ + { + "doseNumberString": 1, + "seriesDoses": 1 + } + ] +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD2DTMumps/11.D1Mlt4w/Patient/11.D1Mlt4w.json b/input/tests/plandefinition/IMMZD2DTMumps/11.D1Mlt4w/Patient/11.D1Mlt4w.json new file mode 100644 index 0000000000..47a77ffdbf --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/11.D1Mlt4w/Patient/11.D1Mlt4w.json @@ -0,0 +1,12 @@ +{ + "resourceType": "Patient", + "id": "11.D1Mlt4w", + "name": [ + { + "text": "11.D1Mlt4w", + "use": "official" + } + ], + "birthDate": "2023-01-15", + "gender": "female" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD2DTMumps/12.D1Mgt4wLVlt4w/Immunization/flu-12.D1Mgt4wLVlt4w.json b/input/tests/plandefinition/IMMZD2DTMumps/12.D1Mgt4wLVlt4w/Immunization/flu-12.D1Mgt4wLVlt4w.json new file mode 100644 index 0000000000..d9c8e12fee --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/12.D1Mgt4wLVlt4w/Immunization/flu-12.D1Mgt4wLVlt4w.json @@ -0,0 +1,23 @@ +{ + "resourceType": "Immunization", + "id": "flu-12.D1Mgt4wLVlt4w", + "status": "completed", + "vaccineCode": { + "coding": [ + { + "code": "XM5V64", + "system": "http://hl7.org/fhir/sid/icd-11", + "display": "Influenza vaccines, live attenuated" + } + ] + }, + "expirationDate": "2025-03-15", + "lotNumber": "123", + "patient": { + "reference": "Patient/12.D1Mgt4wLVlt4w" + }, + "location": { + "display": "Vaccination Site" + }, + "occurrenceDateTime": "2024-03-01" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD2DTMumps/12.D1Mgt4wLVlt4w/Immunization/mumps-12.D1Mgt4wLVlt4w.json b/input/tests/plandefinition/IMMZD2DTMumps/12.D1Mgt4wLVlt4w/Immunization/mumps-12.D1Mgt4wLVlt4w.json new file mode 100644 index 0000000000..ceca7b08c5 --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/12.D1Mgt4wLVlt4w/Immunization/mumps-12.D1Mgt4wLVlt4w.json @@ -0,0 +1,29 @@ +{ + "resourceType": "Immunization", + "id": "mumps-12.D1Mgt4wLVlt4w", + "status": "completed", + "vaccineCode": { + "coding": [ + { + "code": "XM8TF3", + "system": "http://hl7.org/fhir/sid/icd-11", + "display": "Measles, combinations with mumps and rubella, live attenuated" + } + ] + }, + "expirationDate": "2025-03-15", + "lotNumber": "123", + "patient": { + "reference": "Patient/12.D1Mgt4wLVlt4w" + }, + "location": { + "display": "Vaccination Site" + }, + "occurrenceDateTime": "2024-01-19", + "protocolApplied": [ + { + "doseNumberString": 1, + "seriesDoses": 1 + } + ] +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD2DTMumps/12.D1Mgt4wLVlt4w/Patient/12.D1Mgt4wLVlt4w.json b/input/tests/plandefinition/IMMZD2DTMumps/12.D1Mgt4wLVlt4w/Patient/12.D1Mgt4wLVlt4w.json new file mode 100644 index 0000000000..d2a5f586f6 --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/12.D1Mgt4wLVlt4w/Patient/12.D1Mgt4wLVlt4w.json @@ -0,0 +1,12 @@ +{ + "resourceType": "Patient", + "id": "12.D1Mgt4wLVlt4w", + "name": [ + { + "text": "12.D1Mgt4wLVlt4w", + "use": "official" + } + ], + "birthDate": "2023-01-15", + "gender": "female" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD2DTMumps/13.D1Mgt4wLVgt4w/Immunization/flu-13.D1Mgt4wLVgt4w.json b/input/tests/plandefinition/IMMZD2DTMumps/13.D1Mgt4wLVgt4w/Immunization/flu-13.D1Mgt4wLVgt4w.json new file mode 100644 index 0000000000..8235fadb9c --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/13.D1Mgt4wLVgt4w/Immunization/flu-13.D1Mgt4wLVgt4w.json @@ -0,0 +1,23 @@ +{ + "resourceType": "Immunization", + "id": "flu-13.D1Mgt4wLVgt4w", + "status": "completed", + "vaccineCode": { + "coding": [ + { + "code": "XM5V64", + "system": "http://hl7.org/fhir/sid/icd-11", + "display": "Influenza vaccines, live attenuated" + } + ] + }, + "expirationDate": "2025-03-15", + "lotNumber": "123", + "patient": { + "reference": "Patient/13.D1Mgt4wLVgt4w" + }, + "location": { + "display": "Vaccination Site" + }, + "occurrenceDateTime": "2024-02-16" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD2DTMumps/13.D1Mgt4wLVgt4w/Immunization/mumps-13.D1Mgt4wLVgt4w.json b/input/tests/plandefinition/IMMZD2DTMumps/13.D1Mgt4wLVgt4w/Immunization/mumps-13.D1Mgt4wLVgt4w.json new file mode 100644 index 0000000000..c7a3b56e0b --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/13.D1Mgt4wLVgt4w/Immunization/mumps-13.D1Mgt4wLVgt4w.json @@ -0,0 +1,29 @@ +{ + "resourceType": "Immunization", + "id": "mumps-13.D1Mgt4wLVgt4w", + "status": "completed", + "vaccineCode": { + "coding": [ + { + "code": "XM8TF3", + "system": "http://hl7.org/fhir/sid/icd-11", + "display": "Measles, combinations with mumps and rubella, live attenuated" + } + ] + }, + "expirationDate": "2025-03-15", + "lotNumber": "123", + "patient": { + "reference": "Patient/13.D1Mgt4wLVgt4w" + }, + "location": { + "display": "Vaccination Site" + }, + "occurrenceDateTime": "2024-01-19", + "protocolApplied": [ + { + "doseNumberString": 1, + "seriesDoses": 1 + } + ] +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD2DTMumps/13.D1Mgt4wLVgt4w/Patient/13.D1Mgt4wLVgt4w.json b/input/tests/plandefinition/IMMZD2DTMumps/13.D1Mgt4wLVgt4w/Patient/13.D1Mgt4wLVgt4w.json new file mode 100644 index 0000000000..9b83dbd70a --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/13.D1Mgt4wLVgt4w/Patient/13.D1Mgt4wLVgt4w.json @@ -0,0 +1,12 @@ +{ + "resourceType": "Patient", + "id": "13.D1Mgt4wLVgt4w", + "name": [ + { + "text": "13.D1Mgt4wLVgt4w", + "use": "official" + } + ], + "birthDate": "2023-01-15", + "gender": "female" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD2DTMumps/14.D2/Immunization/mumps1-14.D2.json b/input/tests/plandefinition/IMMZD2DTMumps/14.D2/Immunization/mumps1-14.D2.json new file mode 100644 index 0000000000..a04f6e160d --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/14.D2/Immunization/mumps1-14.D2.json @@ -0,0 +1,29 @@ +{ + "resourceType": "Immunization", + "id": "mumps1-14.D2", + "status": "completed", + "vaccineCode": { + "coding": [ + { + "code": "XM8TF3", + "system": "http://hl7.org/fhir/sid/icd-11", + "display": "Measles, combinations with mumps and rubella, live attenuated" + } + ] + }, + "expirationDate": "2025-03-15", + "lotNumber": "123", + "patient": { + "reference": "Patient/14.D2" + }, + "location": { + "display": "Vaccination Site" + }, + "occurrenceDateTime": "2024-01-15", + "protocolApplied": [ + { + "doseNumberString": 1, + "seriesDoses": 1 + } + ] +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD2DTMumps/14.D2/Immunization/mumps2-14.D2.json b/input/tests/plandefinition/IMMZD2DTMumps/14.D2/Immunization/mumps2-14.D2.json new file mode 100644 index 0000000000..39b0faf245 --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/14.D2/Immunization/mumps2-14.D2.json @@ -0,0 +1,29 @@ +{ + "resourceType": "Immunization", + "id": "mumps2-14.D2", + "status": "completed", + "vaccineCode": { + "coding": [ + { + "code": "XM2340", + "system": "http://hl7.org/fhir/sid/icd-11", + "display": "Mumps, live attenuated" + } + ] + }, + "expirationDate": "2025-03-15", + "lotNumber": "123", + "patient": { + "reference": "Patient/14.D2" + }, + "location": { + "display": "Vaccination Site" + }, + "occurrenceDateTime": "2024-03-08", + "protocolApplied": [ + { + "doseNumberString": 1, + "seriesDoses": 1 + } + ] +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD2DTMumps/14.D2/Patient/14.D2.json b/input/tests/plandefinition/IMMZD2DTMumps/14.D2/Patient/14.D2.json new file mode 100644 index 0000000000..45efe1fe8a --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/14.D2/Patient/14.D2.json @@ -0,0 +1,12 @@ +{ + "resourceType": "Patient", + "id": "14.D2", + "name": [ + { + "text": "14.D2", + "use": "official" + } + ], + "birthDate": "2023-01-15", + "gender": "female" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD2DTMumps/examples.yaml b/input/tests/plandefinition/IMMZD2DTMumps/examples.yaml new file mode 100644 index 0000000000..114d0ce155 --- /dev/null +++ b/input/tests/plandefinition/IMMZD2DTMumps/examples.yaml @@ -0,0 +1,135 @@ +--- +id: 08.Alt12m +birth: -1d +patient: + fhir: + gender: female +--- +id: 09.D0Agt12mLVlt4w +birth: -12m +patient: + fhir: + gender: female +immunization: + flu: + vaccine: + code: XM5V64 + system: "http://hl7.org/fhir/sid/icd-11" + display: "Influenza vaccines, live attenuated" + fhir: + expirationDate: 1y + occurrenceDateTime: -2w +--- +id: 10.D0Agt12mLVgt4w +birth: -12m +patient: + fhir: + gender: female +immunization: + flu: + vaccine: + code: XM5V64 + system: "http://hl7.org/fhir/sid/icd-11" + display: "Influenza vaccines, live attenuated" + fhir: + expirationDate: 1y + occurrenceDateTime: -5w +--- +id: 11.D1Mlt4w +birth: -14m +patient: + fhir: + gender: female +immunization: + mumps: + vaccine: + code: XM8TF3 + system: "http://hl7.org/fhir/sid/icd-11" + display: "Measles, combinations with mumps and rubella, live attenuated" + fhir: + expirationDate: 1y + occurrenceDateTime: -2w + protocolApplied: + - doseNumberString: 1 + seriesDoses: 1 +--- +id: 12.D1Mgt4wLVlt4w +birth: -14m +patient: + fhir: + gender: female +immunization: + flu: + vaccine: + code: XM5V64 + system: "http://hl7.org/fhir/sid/icd-11" + display: "Influenza vaccines, live attenuated" + fhir: + expirationDate: 1y + occurrenceDateTime: -2w + mumps: + vaccine: + code: XM8TF3 + system: "http://hl7.org/fhir/sid/icd-11" + display: "Measles, combinations with mumps and rubella, live attenuated" + fhir: + expirationDate: 1y + occurrenceDateTime: -8w + protocolApplied: + - doseNumberString: 1 + seriesDoses: 1 +--- +id: 13.D1Mgt4wLVgt4w +birth: -14m +patient: + fhir: + gender: female +immunization: + flu: + vaccine: + code: XM5V64 + system: "http://hl7.org/fhir/sid/icd-11" + display: "Influenza vaccines, live attenuated" + fhir: + expirationDate: 1y + occurrenceDateTime: -4w + mumps: + vaccine: + code: XM8TF3 + system: "http://hl7.org/fhir/sid/icd-11" + display: "Measles, combinations with mumps and rubella, live attenuated" + fhir: + expirationDate: 1y + occurrenceDateTime: -8w + protocolApplied: + - doseNumberString: 1 + seriesDoses: 1 +--- +id: 14.D2 +birth: -14m +patient: + fhir: + gender: female +immunization: + mumps1: + vaccine: + code: XM8TF3 + system: "http://hl7.org/fhir/sid/icd-11" + display: "Measles, combinations with mumps and rubella, live attenuated" + fhir: + expirationDate: 1y + occurrenceDateTime: b+12m + protocolApplied: + - doseNumberString: 1 + seriesDoses: 1 + mumps2: + vaccine: + code: XM2340 + system: "http://hl7.org/fhir/sid/icd-11" + display: "Mumps, live attenuated" + fhir: + expirationDate: 1y + occurrenceDateTime: -1w + protocolApplied: + - doseNumberString: 1 + seriesDoses: 1 diff --git a/input/tests/plandefinition/IMMZD2DTRubellaHigh/examples.yaml b/input/tests/plandefinition/IMMZD2DTRubellaHigh/examples.yaml index 7d2a9679b1..5baf15c382 100644 --- a/input/tests/plandefinition/IMMZD2DTRubellaHigh/examples.yaml +++ b/input/tests/plandefinition/IMMZD2DTRubellaHigh/examples.yaml @@ -42,7 +42,7 @@ patient: fhir: gender: female immunization: - polio: + rubella: vaccine: code: XM8TF3 system: "http://hl7.org/fhir/sid/icd-11" diff --git a/input/tests/plandefinition/IMMZD2DTRubellaLow/examples.yaml b/input/tests/plandefinition/IMMZD2DTRubellaLow/examples.yaml index 2afc0e347c..b00d1fccce 100644 --- a/input/tests/plandefinition/IMMZD2DTRubellaLow/examples.yaml +++ b/input/tests/plandefinition/IMMZD2DTRubellaLow/examples.yaml @@ -42,7 +42,7 @@ patient: fhir: gender: female immunization: - polio: + rubella: vaccine: code: XM8TF3 system: "http://hl7.org/fhir/sid/icd-11" diff --git a/input/tests/plandefinition/IMMZD5DTMumps/20.pregnant/Condition/allergy-20.pregnant.json b/input/tests/plandefinition/IMMZD5DTMumps/20.pregnant/Condition/allergy-20.pregnant.json new file mode 100644 index 0000000000..9aa1b33e41 --- /dev/null +++ b/input/tests/plandefinition/IMMZD5DTMumps/20.pregnant/Condition/allergy-20.pregnant.json @@ -0,0 +1,24 @@ +{ + "resourceType": "Condition", + "id": "allergy-20.pregnant", + "clinicalStatus": { + "coding": [ + { + "code": "active" + } + ] + }, + "code": { + "coding": [ + { + "code": "DE162", + "system": "http://smart.who.int/ig/smart-immunizations/CodeSystem/IMMZ.D", + "display": "Currently Pregnant" + } + ] + }, + "subject": { + "reference": "Patient/20.pregnant" + }, + "recordedDate": "2024-03-15" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD5DTMumps/20.pregnant/MedicationRequest/mumps-20.pregnant.json b/input/tests/plandefinition/IMMZD5DTMumps/20.pregnant/MedicationRequest/mumps-20.pregnant.json new file mode 100644 index 0000000000..a44c6eabdb --- /dev/null +++ b/input/tests/plandefinition/IMMZD5DTMumps/20.pregnant/MedicationRequest/mumps-20.pregnant.json @@ -0,0 +1,19 @@ +{ + "resourceType": "MedicationRequest", + "id": "mumps-20.pregnant", + "status": "draft", + "intent": "proposal", + "medicationCodeableConcept": { + "coding": [ + { + "code": "XM8TF3", + "system": "http://hl7.org/fhir/sid/icd-11", + "display": "Measles, combinations with mumps and rubella, live attenuated" + } + ] + }, + "subject": { + "reference": "Patient/20.pregnant" + }, + "authoredOn": "2024-03-15" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD5DTMumps/20.pregnant/Patient/20.pregnant.json b/input/tests/plandefinition/IMMZD5DTMumps/20.pregnant/Patient/20.pregnant.json new file mode 100644 index 0000000000..e4cbfbb88e --- /dev/null +++ b/input/tests/plandefinition/IMMZD5DTMumps/20.pregnant/Patient/20.pregnant.json @@ -0,0 +1,12 @@ +{ + "resourceType": "Patient", + "id": "20.pregnant", + "name": [ + { + "text": "20.pregnant", + "use": "official" + } + ], + "birthDate": "2006-03-15", + "gender": "female" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD5DTMumps/21.severe/Condition/allergy-21.severe.json b/input/tests/plandefinition/IMMZD5DTMumps/21.severe/Condition/allergy-21.severe.json new file mode 100644 index 0000000000..8c09b1667f --- /dev/null +++ b/input/tests/plandefinition/IMMZD5DTMumps/21.severe/Condition/allergy-21.severe.json @@ -0,0 +1,24 @@ +{ + "resourceType": "Condition", + "id": "allergy-21.severe", + "clinicalStatus": { + "coding": [ + { + "code": "active" + } + ] + }, + "code": { + "coding": [ + { + "code": "DE167", + "system": "http://smart.who.int/ig/smart-immunizations/CodeSystem/IMMZ.D", + "display": "Severe allergic reactions" + } + ] + }, + "subject": { + "reference": "Patient/21.severe" + }, + "recordedDate": "2024-03-15" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD5DTMumps/21.severe/MedicationRequest/mumps-21.severe.json b/input/tests/plandefinition/IMMZD5DTMumps/21.severe/MedicationRequest/mumps-21.severe.json new file mode 100644 index 0000000000..2339073a81 --- /dev/null +++ b/input/tests/plandefinition/IMMZD5DTMumps/21.severe/MedicationRequest/mumps-21.severe.json @@ -0,0 +1,19 @@ +{ + "resourceType": "MedicationRequest", + "id": "mumps-21.severe", + "status": "draft", + "intent": "proposal", + "medicationCodeableConcept": { + "coding": [ + { + "code": "XM8TF3", + "system": "http://hl7.org/fhir/sid/icd-11", + "display": "Measles, combinations with mumps and rubella, live attenuated" + } + ] + }, + "subject": { + "reference": "Patient/21.severe" + }, + "authoredOn": "2024-03-15" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD5DTMumps/21.severe/Patient/21.severe.json b/input/tests/plandefinition/IMMZD5DTMumps/21.severe/Patient/21.severe.json new file mode 100644 index 0000000000..b60dea2334 --- /dev/null +++ b/input/tests/plandefinition/IMMZD5DTMumps/21.severe/Patient/21.severe.json @@ -0,0 +1,12 @@ +{ + "resourceType": "Patient", + "id": "21.severe", + "name": [ + { + "text": "21.severe", + "use": "official" + } + ], + "birthDate": "2023-03-15", + "gender": "female" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD5DTMumps/22.immunodeficiency/Condition/allergy-22.immunodeficiency.json b/input/tests/plandefinition/IMMZD5DTMumps/22.immunodeficiency/Condition/allergy-22.immunodeficiency.json new file mode 100644 index 0000000000..ffb04fa59c --- /dev/null +++ b/input/tests/plandefinition/IMMZD5DTMumps/22.immunodeficiency/Condition/allergy-22.immunodeficiency.json @@ -0,0 +1,24 @@ +{ + "resourceType": "Condition", + "id": "allergy-22.immunodeficiency", + "clinicalStatus": { + "coding": [ + { + "code": "active" + } + ] + }, + "code": { + "coding": [ + { + "code": "DE187", + "system": "http://smart.who.int/ig/smart-immunizations/CodeSystem/IMMZ.D", + "display": "Immunodeficiency syndromes" + } + ] + }, + "subject": { + "reference": "Patient/22.immunodeficiency" + }, + "recordedDate": "2024-03-15" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD5DTMumps/22.immunodeficiency/MedicationRequest/mumps-22.immunodeficiency.json b/input/tests/plandefinition/IMMZD5DTMumps/22.immunodeficiency/MedicationRequest/mumps-22.immunodeficiency.json new file mode 100644 index 0000000000..1738f9895c --- /dev/null +++ b/input/tests/plandefinition/IMMZD5DTMumps/22.immunodeficiency/MedicationRequest/mumps-22.immunodeficiency.json @@ -0,0 +1,19 @@ +{ + "resourceType": "MedicationRequest", + "id": "mumps-22.immunodeficiency", + "status": "draft", + "intent": "proposal", + "medicationCodeableConcept": { + "coding": [ + { + "code": "XM8TF3", + "system": "http://hl7.org/fhir/sid/icd-11", + "display": "Measles, combinations with mumps and rubella, live attenuated" + } + ] + }, + "subject": { + "reference": "Patient/22.immunodeficiency" + }, + "authoredOn": "2024-03-15" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD5DTMumps/22.immunodeficiency/Patient/22.immunodeficiency.json b/input/tests/plandefinition/IMMZD5DTMumps/22.immunodeficiency/Patient/22.immunodeficiency.json new file mode 100644 index 0000000000..a717a1fc69 --- /dev/null +++ b/input/tests/plandefinition/IMMZD5DTMumps/22.immunodeficiency/Patient/22.immunodeficiency.json @@ -0,0 +1,12 @@ +{ + "resourceType": "Patient", + "id": "22.immunodeficiency", + "name": [ + { + "text": "22.immunodeficiency", + "use": "official" + } + ], + "birthDate": "2023-03-15", + "gender": "female" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD5DTMumps/23.immunosuppressed/Condition/allergy-23.immunosuppressed.json b/input/tests/plandefinition/IMMZD5DTMumps/23.immunosuppressed/Condition/allergy-23.immunosuppressed.json new file mode 100644 index 0000000000..17730ff58b --- /dev/null +++ b/input/tests/plandefinition/IMMZD5DTMumps/23.immunosuppressed/Condition/allergy-23.immunosuppressed.json @@ -0,0 +1,24 @@ +{ + "resourceType": "Condition", + "id": "allergy-23.immunosuppressed", + "clinicalStatus": { + "coding": [ + { + "code": "active" + } + ] + }, + "code": { + "coding": [ + { + "code": "DE165", + "system": "http://smart.who.int/ig/smart-immunizations/CodeSystem/IMMZ.D", + "display": "Severely immunosuppressed" + } + ] + }, + "subject": { + "reference": "Patient/23.immunosuppressed" + }, + "recordedDate": "2024-03-15" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD5DTMumps/23.immunosuppressed/MedicationRequest/mumps-23.immunosuppressed.json b/input/tests/plandefinition/IMMZD5DTMumps/23.immunosuppressed/MedicationRequest/mumps-23.immunosuppressed.json new file mode 100644 index 0000000000..c097220aa4 --- /dev/null +++ b/input/tests/plandefinition/IMMZD5DTMumps/23.immunosuppressed/MedicationRequest/mumps-23.immunosuppressed.json @@ -0,0 +1,19 @@ +{ + "resourceType": "MedicationRequest", + "id": "mumps-23.immunosuppressed", + "status": "draft", + "intent": "proposal", + "medicationCodeableConcept": { + "coding": [ + { + "code": "XM8TF3", + "system": "http://hl7.org/fhir/sid/icd-11", + "display": "Measles, combinations with mumps and rubella, live attenuated" + } + ] + }, + "subject": { + "reference": "Patient/23.immunosuppressed" + }, + "authoredOn": "2024-03-15" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD5DTMumps/23.immunosuppressed/Patient/23.immunosuppressed.json b/input/tests/plandefinition/IMMZD5DTMumps/23.immunosuppressed/Patient/23.immunosuppressed.json new file mode 100644 index 0000000000..cada618dad --- /dev/null +++ b/input/tests/plandefinition/IMMZD5DTMumps/23.immunosuppressed/Patient/23.immunosuppressed.json @@ -0,0 +1,12 @@ +{ + "resourceType": "Patient", + "id": "23.immunosuppressed", + "name": [ + { + "text": "23.immunosuppressed", + "use": "official" + } + ], + "birthDate": "2023-03-15", + "gender": "female" +} \ No newline at end of file diff --git a/input/tests/plandefinition/IMMZD5DTMumps/examples.yaml b/input/tests/plandefinition/IMMZD5DTMumps/examples.yaml new file mode 100644 index 0000000000..e329d960d9 --- /dev/null +++ b/input/tests/plandefinition/IMMZD5DTMumps/examples.yaml @@ -0,0 +1,87 @@ +id: 20.pregnant +birth: -18y +patient: + fhir: + gender: female +condition: + allergy: + code: + code: DE162 + system: "http://smart.who.int/ig/smart-immunizations/CodeSystem/IMMZ.D" + display: "Currently Pregnant" + fhir: + recordedDate: 0d +medicationrequest: + mumps: + medication: + code: XM8TF3 + system: "http://hl7.org/fhir/sid/icd-11" + display: "Measles, combinations with mumps and rubella, live attenuated" + fhir: + authoredOn: 0d +--- +id: 21.severe +birth: -12m +patient: + fhir: + gender: female +condition: + allergy: + code: + code: DE167 + system: "http://smart.who.int/ig/smart-immunizations/CodeSystem/IMMZ.D" + display: "Severe allergic reactions" + fhir: + recordedDate: 0d +medicationrequest: + mumps: + medication: + code: XM8TF3 + system: "http://hl7.org/fhir/sid/icd-11" + display: "Measles, combinations with mumps and rubella, live attenuated" + fhir: + authoredOn: 0d +--- +id: 22.immunodeficiency +birth: -12m +patient: + fhir: + gender: female +condition: + allergy: + code: + code: DE187 + system: "http://smart.who.int/ig/smart-immunizations/CodeSystem/IMMZ.D" + display: "Immunodeficiency syndromes" + fhir: + recordedDate: 0d +medicationrequest: + mumps: + medication: + code: XM8TF3 + system: "http://hl7.org/fhir/sid/icd-11" + display: "Measles, combinations with mumps and rubella, live attenuated" + fhir: + authoredOn: 0d +--- +id: 23.immunosuppressed +birth: -12m +patient: + fhir: + gender: female +condition: + allergy: + code: + code: DE165 + system: "http://smart.who.int/ig/smart-immunizations/CodeSystem/IMMZ.D" + display: "Severely immunosuppressed" + fhir: + recordedDate: 0d +medicationrequest: + mumps: + medication: + code: XM8TF3 + system: "http://hl7.org/fhir/sid/icd-11" + display: "Measles, combinations with mumps and rubella, live attenuated" + fhir: + authoredOn: 0d \ No newline at end of file