From 907831159a6cfbf4f06c2d6658c6727ab9f1de26 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9C4wardthinker=E2=80=9D?= <4wardthinker001@gmail.com> Date: Wed, 2 Apr 2025 23:09:50 -0400 Subject: [PATCH] Add Blood and Body Fluid Exposure Policy --- .../Blood and Body Fluid Exposure/berlitz.hdf | 26 +++++++++ .../metadata.metadata | 53 +++++++++++++++++++ .../Blood and Body Fluid Exposure/rules.hrf | 41 ++++++++++++++ .../Blood and Body Fluid Exposure/world.hdf | 12 +++++ 4 files changed, 132 insertions(+) create mode 100644 Encoding/Benefits/Blood and Body Fluid Exposure/berlitz.hdf create mode 100644 Encoding/Benefits/Blood and Body Fluid Exposure/metadata.metadata create mode 100644 Encoding/Benefits/Blood and Body Fluid Exposure/rules.hrf create mode 100644 Encoding/Benefits/Blood and Body Fluid Exposure/world.hdf diff --git a/Encoding/Benefits/Blood and Body Fluid Exposure/berlitz.hdf b/Encoding/Benefits/Blood and Body Fluid Exposure/berlitz.hdf new file mode 100644 index 0000000..ca33f60 --- /dev/null +++ b/Encoding/Benefits/Blood and Body Fluid Exposure/berlitz.hdf @@ -0,0 +1,26 @@ +berlitz(clinical_injury_coverage(C), + "The clinical injury coverage applies to $C$") + +berlitz(claim_has_injury_coverage(C), + "The claim $C$ has injury coverage") + +berlitz(claim_requires_treatment(C), + "The claim $C$ requires treatment") + +berlitz(claim_is_exempt_from_coverage(C), + "The claim $C$ is exempt from coverage") + +berlitz(clinical_injury_service_type(S), + "$S$ is a type of clinical injury service") + +berlitz(clinical_injury_location_type(L), + "$L$ is a type of clinical injury location") + +berlitz(clinical_injury_diagnostic_service(D), + "$D$ is a diagnostic service for a clinical injury") + +berlitz(patient_is_eligible_for_treatment(P), + "The patient $P$ is eligible for treatment under clinical injury coverage") + +berlitz(patient_has_exclusion(P), + "The patient $P$ has an exclusion from treatment") diff --git a/Encoding/Benefits/Blood and Body Fluid Exposure/metadata.metadata b/Encoding/Benefits/Blood and Body Fluid Exposure/metadata.metadata new file mode 100644 index 0000000..ff8a010 --- /dev/null +++ b/Encoding/Benefits/Blood and Body Fluid Exposure/metadata.metadata @@ -0,0 +1,53 @@ +type(claim, class). + +type(claim.patient_dob, attributerelation). +domain(claim.patient_dob, clinical_related_injury_coverage). +codomain(claim.patient_dob, date). +unique(claim.patient_dob, yes). +total(claim.patient_dob, yes). +changestyle(claim.patient_dob, datestyle). + +type(claim.date_of_injury, attributerelation). +domain(claim.date_of_injury, clinical_related_injury_coverage). +codomain(claim.date_of_injury, date). +unique(claim.date_of_injury, yes). +total(claim.date_of_injury, yes). +changestyle(claim.date_of_injury, datestyle). + +type(claim.service_type, attributerelation). +domain(claim.service_type, clinical_related_injury_coverage). +codomain(claim.service_type, clinical_related_injury_service). +unique(claim.service_type, yes). +total(claim.service_type, yes). +changestyle(claim.service_type, selector). + +type(claim.location_of_service, attributerelation). +domain(claim.location_of_service, clinical_related_injury_coverage). +codomain(claim.location_of_service, clinical_related_injury_location). +unique(claim.location_of_service, yes). +total(claim.location_of_service, yes). +changestyle(claim.location_of_service, selector). + +type(claim.treatment_required, attributerelation). +domain(claim.treatment_required, clinical_related_injury_coverage). +codomain(claim.treatment_required, boolean). +unique(claim.treatment_required, yes). +total(claim.treatment_required, yes). +changestyle(claim.treatment_required, checkboxfield). + +type(claim.source_patient_diagnostic_services, attributerelation). +domain(claim.source_patient_diagnostic_services, clinical_related_injury_coverage). +codomain(claim.source_patient_diagnostic_services, clinical_related_diagnostic_services). +unique(claim.source_patient_diagnostic_services, yes). +total(claim.source_patient_diagnostic_services, yes). +changestyle(claim.source_patient_diagnostic_services, selector). + +% General exclusions +attribute(claim, exclusions). + +type(claim.exclusions, attributerelation). +domain(claim.exclusions, clinical_related_injury_coverage). +codomain(claim.exclusions, general_exclusion). +unique(claim.exclusions, yes). +total(claim.exclusions, yes). +changestyle(claim.exclusions, checkboxfield). diff --git a/Encoding/Benefits/Blood and Body Fluid Exposure/rules.hrf b/Encoding/Benefits/Blood and Body Fluid Exposure/rules.hrf new file mode 100644 index 0000000..0307152 --- /dev/null +++ b/Encoding/Benefits/Blood and Body Fluid Exposure/rules.hrf @@ -0,0 +1,41 @@ +eligible_health_services_for_clinical_injury(Claim) :- + patient_in_clinical_capacity(Claim) & + claim.has_clinical_injury(Claim) & + claim.is_treatment_for_wound(Claim). + +eligible_health_services_for_wound_treatment(Claim) :- + eligible_health_services_for_clinical_injury(Claim) & + claim.is_immediate_treatment(Claim) & + claim.includes_medications(Claim, prophylactic_medications) & + claim.includes_physician_visit(Claim) & + claim.includes_specialist_visit(Claim) & + claim.includes_outpatient_visit(Claim) & + claim.includes_walk_in_clinic_visit(Claim) & + claim.includes_urgent_care(Claim) & + claim.includes_emergency_services(Claim) & + claim.includes_diagnostic_lab_work(Claim) & + claim.includes_radiological_services(Claim). + +eligible_health_services_for_source_diagnosis(Claim) :- + patient_in_clinical_capacity(Claim) & + claim.has_clinical_injury(Claim) & + claim.is_source_of_injury(Claim) & + claim.includes_diagnostic_lab_work(Claim) & + claim.includes_radiological_services(Claim). + +eligible_health_services_for_illness_treatment(Claim) :- + claim.has_illness_due_to_wound(Claim) & + eligible_health_services_for_clinical_injury(Claim) & + claim.is_treatment_for_illness(Claim) & + claim.includes_physician_visit(Claim) & + claim.includes_specialist_visit(Claim) & + claim.includes_emergency_services(Claim) & + claim.includes_outpatient_visit(Claim) & + claim.includes_walk_in_clinic_visit(Claim) & + claim.includes_urgent_care(Claim) & + claim.includes_diagnostic_lab_work(Claim) & + claim.includes_radiological_services(Claim). + +non_covered_services_for_clinical_injury_illness(Claim) :- + claim.has_illness_due_to_wound(Claim) & + claim.includes_services_for_illness_not_related_to_wound(Claim). diff --git a/Encoding/Benefits/Blood and Body Fluid Exposure/world.hdf b/Encoding/Benefits/Blood and Body Fluid Exposure/world.hdf new file mode 100644 index 0000000..1e2da1a --- /dev/null +++ b/Encoding/Benefits/Blood and Body Fluid Exposure/world.hdf @@ -0,0 +1,12 @@ +type(clinical_related_injury, clinical_related_injury_coverage) +type(treatment_required, clinical_related_injury_coverage) +type(exclusion_type, general_exclusion) +type(clinical_injury_service, clinical_related_injury_service) +type(clinical_injury_location, clinical_related_injury_location) +type(clinical_related_diagnostic_services, clinical_related_diagnostic_services) +type(patient_dob, date) +type(date_of_injury, date) + +type(patient_eligibility_for_treatment, boolean) +type(exclusion_for_treatment, boolean) +type(patient_has_required_treatment, boolean)