Blood Bank Management Master Data & Configuration

Blood Bank Management Master Data & Configuration

Master Data Inventory

ID Data Set Source Approx. Records Owner Update Frequency
MD-BB-001 ABO/Rh Blood Group Codes ISBT 128 standard 8 System Admin (with Blood Bank Medical Director) Fixed (review on ISBT change)
MD-BB-002 Blood Component Types ISBT 128 product codes ~30 Blood Bank Medical Director On ISBT revision / annual review
MD-BB-003 Antibody Specificity Codes ISBT red cell antigen nomenclature ~300 Blood Bank Supervisor Rare; on ISBT update
MD-BB-004 Transfusion Reaction Types ISBT hemovigilance + facility-defined ~15 Blood Bank Medical Director Annual review or as needed
MD-BB-005 Donor Deferral Reasons UAE MOH blood safety guidelines ~50 Blood Bank Medical Director On MOH guideline change / annual review
MD-BB-006 Infectious Disease Testing Panel UAE MOH mandatory screening ~8 Blood Bank Medical Director On MOH requirement change
MD-BB-007 Component Storage Requirements ISBT standards ~10 Blood Bank Supervisor Rare; on standard change
MD-BB-008 Crossmatch Eligibility Rules AABB/facility guidelines ~5 Blood Bank Medical Director Annual review
MD-BB-009 Transfusion Indication Codes Facility clinical guidelines ~20 Transfusion Committee Chair Annual review
MD-BB-010 Donation Types Facility policy 5–10 Blood Bank Supervisor Rare; on policy change
MD-BB-011 Donation Complication Codes Facility policy / ISBT 15–30 Blood Bank Supervisor Annual review
MD-BB-012 Donation Status Codes System-defined 8–12 System Admin Fixed (rare change)
MD-BB-013 Component Status Codes System-defined 10–15 System Admin Fixed (rare change)
MD-BB-014 Quarantine Reasons Facility policy / MOH 10–20 Blood Bank Supervisor As needed
MD-BB-015 Discard Reasons Facility policy / MOH 10–20 Blood Bank Supervisor As needed
MD-BB-016 Disposal Methods Facility infection control policy 5–10 Infection Control Lead Rare; on policy change
MD-BB-017 Transfusion Priority Codes Facility policy 5–8 Transfusion Committee Rare
MD-BB-018 Special Requirement Codes Facility policy 10–20 Blood Bank Medical Director As needed
MD-BB-019 Transfusion Order Status Codes System-defined 8–12 System Admin Fixed
MD-BB-020 Crossmatch Result Codes Facility / ISBT 5–10 Blood Bank Supervisor Rare
MD-BB-021 Antibody Screen Result Codes Facility / ISBT 3–6 Blood Bank Supervisor Rare
MD-BB-022 Infectious Disease Result Codes LIS / MOH 5–10 Lab Director + Blood Bank Supervisor Rare
MD-BB-023 Reaction Severity Codes ISBT hemovigilance 3–5 Blood Bank Medical Director Rare
MD-BB-024 Hemovigilance Report Types UAE MOH hemovigilance 3–6 Blood Bank Medical Director On MOH change
MD-BB-025 Storage Location Types Facility logistics 10–20 Blood Bank Supervisor As needed
MD-BB-026 Temperature Zone Codes ISBT / facility 5–10 Blood Bank Supervisor Rare
MD-BB-027 Massive Transfusion Protocol (MTP) Packs Facility protocol 5–10 Transfusion Committee As needed
MD-BB-028 Donor Status Codes Facility policy 5–8 Blood Bank Supervisor Rare
MD-BB-029 Donor Questionnaire Question Bank Facility policy / MOH 80–150 Donor Physician On guideline change
MD-BB-030 MOH / DOH / DHA Facility Blood Bank IDs MOH/DOH/DHA registration 1–10 per organisation IT / Integration On registration/change

Note: Shared entities (patients, providers, facilities, encounters, users, payers) are referenced from their owning modules and are not redefined here. See ../ehr-patient-mgmt/06-master-data.md and ../policy-contract-mgmt/06-master-data.md.


Setup Sequence

Dependency Graph

flowchart TD A["MD-BB-001: ABO/Rh Blood Group Codes"] --> C["MD-BB-002: Blood Component Types"] B["MD-BB-030: MOH/DOH/DHA Facility Blood Bank IDs"] --> H["System Go-Live"] C --> D["MD-BB-007: Component Storage Requirements"] C --> E["MD-BB-013: Component Status Codes"] C --> F["MD-BB-025: Storage Location Types"] D --> H E --> H F --> H G["MD-BB-003: Antibody Specificity Codes"] --> I["MD-BB-008: Crossmatch Eligibility Rules"] A --> I I --> H J["MD-BB-021: Antibody Screen Result Codes"] --> H K["MD-BB-020: Crossmatch Result Codes"] --> H L["MD-BB-005: Donor Deferral Reasons"] --> N["MD-BB-028: Donor Status Codes"] M["MD-BB-010: Donation Types"] --> O["MD-BB-012: Donation Status Codes"] N --> H O --> H P["MD-BB-006: Infectious Disease Testing Panel"] --> Q["MD-BB-022: Infectious Disease Result Codes"] Q --> H R["MD-BB-004: Transfusion Reaction Types"] --> S["MD-BB-023: Reaction Severity Codes"] S --> T["MD-BB-024: Hemovigilance Report Types"] T --> H U["MD-BB-009: Transfusion Indication Codes"] --> V["MD-BB-017: Transfusion Priority Codes"] V --> W["MD-BB-019: Transfusion Order Status Codes"] W --> H X["MD-BB-011: Donation Complication Codes"] --> H Y["MD-BB-014: Quarantine Reasons"] --> H Z["MD-BB-015: Discard Reasons"] --> AA["MD-BB-016: Disposal Methods"] AA --> H AB["MD-BB-018: Special Requirement Codes"] --> H AC["MD-BB-027: MTP Packs"] --> H AD["MD-BB-029: Donor Questionnaire Question Bank"] --> H
  1. Foundational coding & facility identifiers - MD-BB-001 ABO/Rh Blood Group Codes
    - MD-BB-003 Antibody Specificity Codes
    - MD-BB-021 Antibody Screen Result Codes
    - MD-BB-020 Crossmatch Result Codes
    - MD-BB-030 MOH/DOH/DHA Facility Blood Bank IDs

  2. Component catalogue & storage - MD-BB-002 Blood Component Types
    - MD-BB-007 Component Storage Requirements
    - MD-BB-013 Component Status Codes
    - MD-BB-025 Storage Location Types
    - MD-BB-026 Temperature Zone Codes

  3. Donor management - MD-BB-005 Donor Deferral Reasons
    - MD-BB-028 Donor Status Codes
    - MD-BB-010 Donation Types
    - MD-BB-011 Donation Complication Codes
    - MD-BB-012 Donation Status Codes
    - MD-BB-029 Donor Questionnaire Question Bank

  4. Infectious disease testing - MD-BB-006 Infectious Disease Testing Panel
    - MD-BB-022 Infectious Disease Result Codes

  5. Transfusion ordering & compatibility - MD-BB-008 Crossmatch Eligibility Rules
    - MD-BB-009 Transfusion Indication Codes
    - MD-BB-017 Transfusion Priority Codes
    - MD-BB-018 Special Requirement Codes
    - MD-BB-019 Transfusion Order Status Codes
    - MD-BB-027 Massive Transfusion Protocol Packs

  6. Hemovigilance & disposal - MD-BB-004 Transfusion Reaction Types
    - MD-BB-023 Reaction Severity Codes
    - MD-BB-024 Hemovigilance Report Types
    - MD-BB-014 Quarantine Reasons
    - MD-BB-015 Discard Reasons
    - MD-BB-016 Disposal Methods

  7. Validation & Go-Live - Cross-check mappings with LIS, CPOE, MOH hemovigilance portal
    - Lock system-owned code sets; enable governed change workflows


Master Data Specifications

Below are detailed specifications for the core blood-bank–specific master data sets explicitly mentioned in the brief. Additional sets (MD-BB-010+ etc.) follow the same pattern and can be extended in implementation.


MD-BB-001: ABO/Rh Blood Group Codes

Purpose

Standardised coding of patient and donor ABO/Rh blood groups used across:

  • blood_donors, blood_components, blood_type_screen, crossmatch_records
  • Compatibility logic, inventory filtering, transfusion decision support
  • Reporting to UAE MOH, DOH, DHA, NABIDH/Malaffi

Schema

Table: ref_blood_group

Field Type Required Description
blood_group_code VARCHAR(5) YES Unique code (e.g., A+, O-)
abo_group VARCHAR(2) YES ABO group: O,A,B,AB
rh_factor VARCHAR(3) YES Rh factor: POS, NEG
display_name_en VARCHAR(50) YES English display name
display_name_ar VARCHAR(50) YES Arabic display name
is_universal_donor BOOLEAN YES True for O- (RBC context)
is_universal_recipient BOOLEAN YES True for AB+ (RBC context)
is_active BOOLEAN YES Active flag (always true for standard 8)
sort_order SMALLINT YES For UI ordering
created_at TIMESTAMP YES Audit
created_by INTEGER YES FK → users.user_id
updated_at TIMESTAMP YES Audit
updated_by INTEGER YES FK → users.user_id

Sample Data

blood_group_code abo_group rh_factor display_name_en display_name_ar is_universal_donor is_universal_recipient sort_order
O- O NEG O negative فصيلة O سالب TRUE FALSE 1
O+ O POS O positive فصيلة O موجب FALSE FALSE 2
A- A NEG A negative فصيلة A سالب FALSE FALSE 3
A+ A POS A positive فصيلة A موجب FALSE FALSE 4
B- B NEG B negative فصيلة B سالب FALSE FALSE 5
B+ B POS B positive فصيلة B موجب FALSE FALSE 6
AB- AB NEG AB negative فصيلة AB سالب FALSE FALSE 7
AB+ AB POS AB positive فصيلة AB موجب FALSE TRUE 8

Data Governance

  • Owner: System Admin; clinical authority: Blood Bank Medical Director
  • Approval process: Any change requires: 1. Written request from Blood Bank Medical Director 2. Review by Clinical Informatics + Integration team (impact on LIS/CPOE) 3. Change implemented in test, validated with sample orders/results 4. Scheduled production deployment
  • Update frequency: Fixed; only on international standard change
  • Change notification:
  • Release note to blood bank staff, LIS, CPOE teams
  • Update to interface mapping tables (HL7, FHIR) if codes change

Validation Rules

  • blood_group_code must be unique and in set {O-,O+,A-,A+,B-,B+,AB-,AB+}
  • abo_group must be in {O,A,B,AB}
  • rh_factor must be in {POS,NEG}
  • is_universal_donor TRUE only for O-
  • is_universal_recipient TRUE only for AB+
  • is_active cannot be set to FALSE for standard 8 without explicit super-admin override

MD-BB-002: Blood Component Types

Purpose

Defines all blood components that can be produced, stored, issued, and billed:

  • Used in blood_components, blood_component_inventory, transfusion_orders, transfusion_administration
  • Mapped to ISBT 128 product codes and billing (CPT/RCM) where applicable
  • Drives storage requirements, shelf life, and compatibility rules

Schema

Table: ref_blood_component_type

Field Type Required Description
component_type_code VARCHAR(20) YES Internal code (e.g., RBC_LEUKORED)
isbt_product_code VARCHAR(20) NO ISBT 128 product code pattern
display_name_en VARCHAR(100) YES English name
display_name_ar VARCHAR(100) YES Arabic name
component_category VARCHAR(30) YES e.g., RBC, PLATELET, PLASMA, CRYO, WHOLE
default_volume_ml INTEGER NO Typical volume (for reference)
requires_irradiation_flag BOOLEAN YES If typically irradiated for certain indications
is_apheresis BOOLEAN YES TRUE if apheresis-derived
shelf_life_hours INTEGER YES Default shelf life in hours
storage_temp_min_c DECIMAL(4,1) YES Min storage temp (°C)
storage_temp_max_c DECIMAL(4,1) YES Max storage temp (°C)
billable_cpt_code VARCHAR(20) NO CPT/procedure code for billing
is_active BOOLEAN YES Active flag
sort_order SMALLINT YES UI ordering
created_at TIMESTAMP YES Audit
created_by INTEGER YES FK → users.user_id
updated_at TIMESTAMP YES Audit
updated_by INTEGER YES FK → users.user_id

Sample Data

component_type_code isbt_product_code display_name_en display_name_ar component_category default_volume_ml requires_irradiation_flag is_apheresis shelf_life_hours storage_temp_min_c storage_temp_max_c
RBC_CPDA1 E0201 Red Blood Cells (CPDA-1) كريات دم حمراء (CPDA-1) RBC 450 FALSE FALSE 1152 (48d) 2.0 6.0
RBC_LEUKORED E4532 Leukoreduced Red Blood Cells كريات دم حمراء منزوعة الكريات البيضاء RBC 300 FALSE FALSE 1152 2.0 6.0
PLT_APH E3087 Apheresis Platelets صفائح دموية مفصولة آلياً PLATELET 250 FALSE TRUE 120 (5d) 20.0 24.0
FFP E2701 Fresh Frozen Plasma بلازما مجمدة طازجة PLASMA 250 FALSE FALSE 365*24 -30.0 -18.0
CRYO E2801 Cryoprecipitate كرايوبرسبيتات CRYO 15 FALSE FALSE 365*24 -30.0 -18.0
WB_CPDA1 E0101 Whole Blood (CPDA-1) دم كامل (CPDA-1) WHOLE 450 FALSE FALSE 1152 2.0 6.0
RBC_IRR E5177 Irradiated Red Blood Cells كريات دم حمراء مشععة RBC 300 TRUE FALSE 672 (28d) 2.0 6.0

(Long plasma/cryoprecipitate shelf life expressed in hours; implementation may use days.)

Data Governance

  • Owner: Blood Bank Medical Director
  • Approval process: 1. Proposal for new/changed component from Blood Bank Supervisor 2. Review by Transfusion Committee (clinical indication, billing impact) 3. Mapping to ISBT 128 and billing codes validated by RCM team 4. Build/update in test → validation with LIS/CPOE → production deployment
  • Update frequency: On ISBT updates, new component introduction, or policy change
  • Change notification:
  • Email to blood bank staff, nursing, ordering physicians
  • Update to training materials and transfusion guidelines
  • Interface mapping updates for LIS, billing, MOH reporting

Validation Rules

  • component_type_code unique, uppercase, alphanumeric + underscore only
  • component_category in {RBC,PLATELET,PLASMA,CRYO,WHOLE,OTHER}
  • shelf_life_hours > 0
  • storage_temp_min_c < storage_temp_max_c
  • If requires_irradiation_flag = TRUE then component_category must be RBC or PLATELET
  • is_active cannot be set FALSE if referenced by active inventory records (enforce via application-level checks)

MD-BB-003: Antibody Specificity Codes

Purpose

Standardised coding of red cell antibodies for:

  • Recording antibody screen/identification results in blood_type_screen
  • Driving antigen-negative unit selection and crossmatch rules
  • Hemovigilance and clinical decision support (e.g., anti-D, anti-K)

Schema

Table: ref_antibody_specificity

Field Type Required Description
antibody_code VARCHAR(20) YES Unique code (e.g., ANTI_D)
isbt_antigen_code VARCHAR(20) NO ISBT antigen system code (e.g., RH1)
display_name_en VARCHAR(100) YES English name (e.g., Anti-D)
display_name_ar VARCHAR(100) YES Arabic name
blood_group_system VARCHAR(50) YES e.g., Rh, Kell, Duffy, Kidd, MNS
clinical_significance VARCHAR(20) YES HIGH, MODERATE, LOW, UNKNOWN
requires_antigen_negative_units BOOLEAN YES If positive, system must enforce antigen-negative selection
notes VARCHAR(255) NO Additional comments
is_active BOOLEAN YES Active flag
sort_order SMALLINT YES UI ordering
created_at TIMESTAMP YES Audit
created_by INTEGER YES FK → users.user_id
updated_at TIMESTAMP YES Audit
updated_by INTEGER YES FK → users.user_id

Sample Data

antibody_code isbt_antigen_code display_name_en display_name_ar blood_group_system clinical_significance requires_antigen_negative_units
ANTI_D RH1 Anti-D مضاد D Rh HIGH TRUE
ANTI_C RH2 Anti-C مضاد C Rh HIGH TRUE
ANTI_E RH3 Anti-E مضاد E Rh HIGH TRUE
ANTI_K KEL1 Anti-K مضاد K Kell HIGH TRUE
ANTI_FYA FY1 Anti-Fyᵃ مضاد فيا Duffy HIGH TRUE
ANTI_JKA JK1 Anti-Jkᵃ مضاد جكا Kidd HIGH TRUE
ANTI_LEA LE1 Anti-Leᵃ مضاد ليا Lewis LOW FALSE
ANTI_M MNS1 Anti-M مضاد M MNS LOW FALSE

Data Governance

  • Owner: Blood Bank Supervisor
  • Approval process:
  • New antibody codes only added based on ISBT updates or Medical Director request
  • Changes reviewed by Medical Director and LIS lead (for result mapping)
  • Update frequency: Rare; on ISBT nomenclature updates
  • Change notification:
  • Update LIS result dictionaries and mapping tables
  • Communicate to technologists via SOP updates

Validation Rules

  • antibody_code unique, pattern ANTI_ + uppercase letters/numbers
  • clinical_significance in {HIGH,MODERATE,LOW,UNKNOWN}
  • If requires_antigen_negative_units = TRUE then clinical_significance must be HIGH or MODERATE
  • blood_group_system must be from controlled list (Rh, Kell, Duffy, Kidd, MNS, Lewis, P, etc.)

MD-BB-004: Transfusion Reaction Types

Purpose

Standardised classification of transfusion reactions for:

  • Documentation in transfusion_reactions
  • MOH hemovigilance reporting
  • Analytics (reaction rates, severity, component association)

Schema

Table: ref_transfusion_reaction_type

Field Type Required Description
reaction_type_code VARCHAR(20) YES Unique code (e.g., FNHTR)
display_name_en VARCHAR(100) YES English name
display_name_ar VARCHAR(100) YES Arabic name
isbt_category_code VARCHAR(20) NO ISBT hemovigilance category code
description VARCHAR(255) NO Short description
typical_onset_minutes_min INTEGER NO Lower bound of typical onset time
typical_onset_minutes_max INTEGER NO Upper bound of typical onset time
requires_moh_reporting BOOLEAN YES TRUE if serious reaction per MOH
default_severity VARCHAR(20) YES MILD, MODERATE, SEVERE, FATAL (default)
is_active BOOLEAN YES Active flag
sort_order SMALLINT YES UI ordering
created_at TIMESTAMP YES Audit
created_by INTEGER YES FK → users.user_id
updated_at TIMESTAMP YES Audit
updated_by INTEGER YES FK → users.user_id

Sample Data

reaction_type_code display_name_en display_name_ar isbt_category_code requires_moh_reporting default_severity
FNHTR Febrile non-haemolytic transfusion reaction تفاعل نقل دم حموي غير انحلالي FNHTR FALSE MILD
ALLERGIC_MILD Mild allergic reaction (urticaria) تفاعل تحسسي بسيط (شرى) ALL FALSE MILD
ALLERGIC_SEV Severe allergic / anaphylactic reaction تفاعل تحسسي شديد / صدمة تأقية ANAPH TRUE SEVERE
AHTR Acute haemolytic transfusion reaction تفاعل انحلالي حاد بعد نقل الدم AHTR TRUE SEVERE
DHTR Delayed haemolytic transfusion reaction تفاعل انحلالي متأخر بعد نقل الدم DHTR TRUE MODERATE
TRALI Transfusion-related acute lung injury إصابة رئوية حادة مرتبطة بنقل الدم TRALI TRUE SEVERE
TACO Transfusion-associated circulatory overload فرط حجم الدم المرتبط بنقل الدم TACO TRUE MODERATE
BACT_CONTAM Bacterial contamination تلوث جرثومي لوحدة الدم BACT TRUE SEVERE

Data Governance

  • Owner: Blood Bank Medical Director
  • Approval process:
  • Changes proposed by Hemovigilance Officer or Medical Director
  • Reviewed against UAE MOH hemovigilance definitions
  • Tested in reporting templates before activation
  • Update frequency: Annual review or when MOH updates hemovigilance categories
  • Change notification:
  • Updated hemovigilance SOPs
  • Training sessions for nursing and medical staff
  • Update mapping to MOH online reporting portal

Validation Rules

  • reaction_type_code unique, uppercase, alphanumeric + underscore
  • default_severity in {MILD,MODERATE,SEVERE,FATAL}
  • If requires_moh_reporting = TRUE then must be mapped in MOH reporting templates
  • Cannot delete codes referenced in transfusion_reactions; only inactivate (is_active = FALSE)

MD-BB-005: Donor Deferral Reasons

Purpose

Standardised reasons for temporary or permanent donor deferral, aligned with UAE MOH blood safety guidelines:

  • Used in blood_donors (deferral history) and donor screening workflow
  • Supports reporting of deferral rates and regulatory compliance

Schema

Table: ref_donor_deferral_reason

Field Type Required Description
deferral_reason_code VARCHAR(30) YES Unique code (e.g., LOW_HB_TEMP)
display_name_en VARCHAR(150) YES English description
display_name_ar VARCHAR(150) YES Arabic description
deferral_type VARCHAR(20) YES TEMPORARY or PERMANENT
deferral_duration_days INTEGER NO For temporary deferrals; NULL for permanent or variable
moh_reference VARCHAR(100) NO MOH guideline reference / article
is_infectious_risk BOOLEAN YES TRUE if related to infectious disease risk
is_pregnancy_related BOOLEAN YES TRUE if pregnancy/breastfeeding related
is_travel_related BOOLEAN YES TRUE if travel-related
is_active BOOLEAN YES Active flag
sort_order SMALLINT YES UI ordering
created_at TIMESTAMP YES Audit
created_by INTEGER YES FK → users.user_id
updated_at TIMESTAMP YES Audit
updated_by INTEGER YES FK → users.user_id

Sample Data

deferral_reason_code display_name_en display_name_ar deferral_type deferral_duration_days is_infectious_risk is_pregnancy_related is_travel_related
LOW_HB_TEMP Low haemoglobin (temporary) هيموغلوبين منخفض (مؤقت) TEMPORARY 56 FALSE FALSE FALSE
RECENT_TATTOO Tattoo or body piercing within last 6 months وشم أو ثقب حديث خلال ٦ أشهر TEMPORARY 180 TRUE FALSE FALSE
HIGH_RISK_BEHAV High-risk behaviour for blood-borne infection سلوك عالي الخطورة للعدوى المنقولة بالدم PERMANENT NULL TRUE FALSE FALSE
PREGNANCY Current pregnancy حمل حالي TEMPORARY 365 FALSE TRUE FALSE
BREASTFEEDING Breastfeeding < 6 months postpartum رضاعة طبيعية أقل من ٦ أشهر بعد الولادة TEMPORARY 180 FALSE TRUE FALSE
TRAVEL_MALARIA Travel to malaria-endemic area (last 3 months) سفر إلى منطقة موبوءة بالملاريا (آخر ٣ أشهر) TEMPORARY 90 TRUE FALSE TRUE
CHRONIC_DISEASE Chronic serious disease (e.g., malignancy) مرض مزمن خطير (مثل السرطان) PERMANENT NULL FALSE FALSE FALSE

Data Governance

  • Owner: Blood Bank Medical Director
  • Approval process:
  • Changes initiated by Donor Physician or Medical Director
  • Must be cross-checked with latest UAE MOH blood donation guidelines
  • Clinical governance committee sign-off for permanent deferral categories
  • Update frequency: On MOH guideline updates; otherwise annual review
  • Change notification:
  • Update donor screening questionnaire and SOPs
  • Communicate to donor clinic staff
  • Update any public-facing donor eligibility materials

Validation Rules

  • deferral_type in {TEMPORARY,PERMANENT}
  • If deferral_type = TEMPORARY then deferral_duration_days must be > 0
  • If deferral_type = PERMANENT then deferral_duration_days must be NULL
  • At least one of is_infectious_risk, is_pregnancy_related, is_travel_related should be TRUE for MOH risk-related deferrals

MD-BB-006: Infectious Disease Testing Panel

Purpose

Defines mandatory infectious disease tests performed on donor samples, aligned with UAE MOH requirements:

  • Used to configure LIS orders and interpret results for blood_donations and blood_quarantine_log
  • Drives automatic quarantine release/discard logic

Schema

Table: ref_infectious_test_panel

Field Type Required Description
test_code VARCHAR(30) YES Unique code (e.g., HBsAg)
display_name_en VARCHAR(100) YES English name
display_name_ar VARCHAR(100) YES Arabic name
loinc_code VARCHAR(20) NO LOINC code for test
pathogen VARCHAR(50) YES e.g., HBV, HCV, HIV, Syphilis, Malaria
test_method VARCHAR(50) NO e.g., ELISA, NAT
is_mandatory BOOLEAN YES TRUE if required by MOH
reactive_result_code VARCHAR(20) YES Code from ref_infectious_result indicating reactive/positive
nonreactive_result_code VARCHAR(20) YES Code indicating non-reactive/negative
moh_reference VARCHAR(100) NO MOH circular/guideline reference
is_active BOOLEAN YES Active flag
sort_order SMALLINT YES UI ordering
created_at TIMESTAMP YES Audit
created_by INTEGER YES FK → users.user_id
updated_at TIMESTAMP YES Audit
updated_by INTEGER YES FK → users.user_id

(Assumes ref_infectious_result is part of MD-BB-022.)

Sample Data

test_code display_name_en display_name_ar pathogen test_method is_mandatory reactive_result_code nonreactive_result_code
HBsAg Hepatitis B surface antigen مستضد سطح التهاب الكبد B HBV ELISA TRUE REACTIVE NON_REACTIVE
ANTI_HCV Anti-HCV antibody أجسام مضادة لالتهاب الكبد C HCV ELISA TRUE REACTIVE NON_REACTIVE
HIV_AB_AG HIV 1/2 Ab/Ag combo اختبار أجسام مضادة ومستضد لفيروس HIV HIV ELISA TRUE REACTIVE NON_REACTIVE
VDRL Syphilis (VDRL/RPR) الزهري (VDRL/RPR) Syphilis RPR TRUE REACTIVE NON_REACTIVE
MALARIA_SMEAR Malaria thick/thin smear لطاخة الملاريا Malaria Microscopy TRUE POSITIVE NEGATIVE
ANTI_HTLV Anti-HTLV I/II أجسام مضادة لـ HTLV I/II HTLV ELISA OPTIONAL REACTIVE NON_REACTIVE
NAT_HBV HBV NAT اختبار الحمض النووي لالتهاب الكبد B HBV NAT OPTIONAL REACTIVE NON_REACTIVE

Data Governance

  • Owner: Blood Bank Medical Director (with Lab Director)
  • Approval process:
  • MOH circular or guideline triggers review
  • Joint decision by Lab Director and Medical Director
  • LIS and HIS configuration updated in coordination
  • Update frequency: On MOH requirement change; at least annual review
  • Change notification:
  • Notify MOH if required
  • Update donor consent forms and information leaflets
  • Communicate to LIS team and donor clinic

Validation Rules

  • test_code unique, uppercase, no spaces
  • is_mandatory TRUE for all tests required by current MOH regulation
  • reactive_result_code and nonreactive_result_code must exist in ref_infectious_result
  • At least one active mandatory test per major pathogen category (HBV, HCV, HIV, Syphilis, Malaria)

MD-BB-007: Component Storage Requirements

Purpose

Defines storage temperature and shelf life per component category/type:

  • Used to validate blood_component_inventory storage conditions
  • Drives expiry calculation and FEFO (First Expiry First Out) logic
  • Supports regulatory compliance with ISBT and UAE MOH standards

Schema

Table: ref_component_storage_requirement

Field Type Required Description
storage_req_id SERIAL / INTEGER YES PK
component_type_code VARCHAR(20) YES FK → ref_blood_component_type.component_type_code or NULL for category-level rule
component_category VARCHAR(30) YES e.g., RBC, PLATELET, PLASMA, CRYO, WHOLE
display_name_en VARCHAR(100) YES English description
display_name_ar VARCHAR(100) YES Arabic description
storage_temp_min_c DECIMAL(4,1) YES Minimum storage temperature (°C)
storage_temp_max_c DECIMAL(4,1) YES Maximum storage temperature (°C)
default_shelf_life_hours INTEGER YES Shelf life in hours
monitoring_frequency_minutes INTEGER YES Recommended temperature monitoring interval
moh_reference VARCHAR(100) NO MOH/ISBT reference
is_active BOOLEAN YES Active flag
created_at TIMESTAMP YES Audit
created_by INTEGER YES FK → users.user_id
updated_at TIMESTAMP YES Audit
updated_by INTEGER YES FK → users.user_id

Sample Data

component_type_code component_category display_name_en display_name_ar storage_temp_min_c storage_temp_max_c default_shelf_life_hours monitoring_frequency_minutes
NULL RBC RBCs (general) كريات دم حمراء 2.0 6.0 1152 60
NULL PLATELET Platelets (general) صفائح دموية 20.0 24.0 120 60
NULL PLASMA Frozen plasma بلازما مجمدة -30.0 -18.0 365*24 240
NULL CRYO Cryoprecipitate كرايوبرسبيتات -30.0 -18.0 365*24 240
RBC_IRR RBC Irradiated RBCs كريات دم حمراء مشععة 2.0 6.0 672 60
WB_CPDA1 WHOLE Whole blood (CPDA-1) دم كامل (CPDA-1) 2.0 6.0 1152 60

Data Governance

  • Owner: Blood Bank Supervisor
  • Approval process:
  • Proposed changes reviewed by Medical Director
  • Cross-checked with ISBT and MOH regulations
  • Validated with Biomedical Engineering (storage equipment capabilities)
  • Update frequency: Rare; on standard changes
  • Change notification:
  • Update SOPs and temperature monitoring protocols
  • Reconfigure temperature alarm thresholds where needed

Validation Rules

  • Either component_type_code OR component_category must be populated; not both NULL
  • storage_temp_min_c < storage_temp_max_c
  • default_shelf_life_hours > 0
  • For a given component_type_code, only one active rule allowed

MD-BB-008: Crossmatch Eligibility Rules

Purpose

Defines when electronic crossmatch is allowed vs. when serological crossmatch is required:

  • Used in crossmatch_records workflow and decision support
  • Ensures compliance with AABB/facility guidelines and UAE safety expectations

Schema

Table: ref_crossmatch_rule

Field Type Required Description
rule_id SERIAL / INTEGER YES PK
rule_code VARCHAR(30) YES Unique code (e.g., ELEC_XM_STANDARD)
display_name_en VARCHAR(100) YES English description
display_name_ar VARCHAR(100) YES Arabic description
crossmatch_type VARCHAR(20) YES ELECTRONIC or SEROLOGICAL
requires_two_concordant_types BOOLEAN YES For electronic crossmatch
max_hours_since_last_sample INTEGER YES e.g., 72
allow_if_antibodies_present BOOLEAN YES Usually FALSE for electronic
allow_if_history_of_reaction BOOLEAN YES Usually FALSE for electronic
is_default_rule BOOLEAN YES Only one default per crossmatch_type
is_active BOOLEAN YES Active flag
created_at TIMESTAMP YES Audit
created_by INTEGER YES FK → users.user_id
updated_at TIMESTAMP YES Audit
updated_by INTEGER YES FK → users.user_id

Sample Data

rule_code display_name_en crossmatch_type requires_two_concordant_types max_hours_since_last_sample allow_if_antibodies_present allow_if_history_of_reaction is_default_rule
ELEC_XM_STANDARD Standard electronic crossmatch ELECTRONIC TRUE 72 FALSE FALSE TRUE
SERO_XM_ANTIBODY Serological XM – antibodies present SEROLOGICAL FALSE 72 TRUE TRUE TRUE
SERO_XM_EMERG Emergency uncrossmatched issue SEROLOGICAL FALSE 0 TRUE TRUE FALSE

Data Governance

  • Owner: Blood Bank Medical Director
  • Approval process:
  • Proposed by Senior Technologist or Medical Director
  • Reviewed by Transfusion Committee
  • Tested in simulation (test patients) before activation
  • Update frequency: Annual review or when guidelines change
  • Change notification:
  • Training for technologists and ordering clinicians
  • Update to policy documents and audit criteria

Validation Rules

  • crossmatch_type in {ELECTRONIC,SEROLOGICAL}
  • Only one active is_default_rule = TRUE per crossmatch_type
  • If crossmatch_type = ELECTRONIC then requires_two_concordant_types must be TRUE and allow_if_antibodies_present must be FALSE

MD-BB-009: Transfusion Indication Codes

Purpose

Standardised clinical indications for transfusion orders:

  • Used in transfusion_orders.indication
  • Supports audit, utilisation review, and guideline adherence monitoring

Schema

Table: ref_transfusion_indication

Field Type Required Description
indication_code VARCHAR(30) YES Unique code (e.g., ANEMIA_SYMPTOMATIC)
display_name_en VARCHAR(150) YES English description
display_name_ar VARCHAR(150) YES Arabic description
component_category VARCHAR(30) YES RBC, PLATELET, PLASMA, CRYO, WHOLE, MULTI
guideline_reference VARCHAR(100) NO Facility guideline / international reference
threshold_value DECIMAL(5,2) NO e.g., Hb threshold, platelet count
threshold_unit VARCHAR(20) NO e.g., g/dL, x10^9/L
requires_documented_lab BOOLEAN YES TRUE if lab value must be present
is_active BOOLEAN YES Active flag
sort_order SMALLINT YES UI ordering
created_at TIMESTAMP YES Audit
created_by INTEGER YES FK → users.user_id
updated_at TIMESTAMP YES Audit
updated_by INTEGER YES FK → users.user_id

Sample Data

indication_code display_name_en display_name_ar component_category threshold_value threshold_unit requires_documented_lab
ANEMIA_SYMPTOMATIC Symptomatic anaemia فقر دم مصحوب بأعراض RBC 8.00 g/dL TRUE
ANEMIA_MASSIVE_BLEED Acute massive blood loss نزيف حاد غزير RBC NULL NULL FALSE
THROMBO_CHEMO Thrombocytopenia due to chemotherapy نقص صفائح بسبب العلاج الكيميائي PLATELET 10.00 x10^9/L TRUE
THROMBO_SURGERY Platelet support for invasive procedure دعم صفائح لعملية جراحية PLATELET 50.00 x10^9/L TRUE
COAG_DEF_FFP Coagulopathy with active bleeding اضطراب تخثر مع نزيف فعال PLASMA INR>1.5 TEXT TRUE
FIBRINOGEN_LOW Hypofibrinogenaemia نقص الفيبرينوجين CRYO 1.00 g/L TRUE
EXCHANGE_TRANSFUSION Exchange transfusion (neonate) تبديل دم (حديثي الولادة) MULTI NULL NULL TRUE

(For INR>1.5 threshold, implementation may store numeric threshold and operator separately.)

Data Governance

  • Owner: Transfusion Committee Chair
  • Approval process:
  • Proposed by clinical departments or Medical Director
  • Reviewed and approved by Transfusion Committee
  • Mapped to internal guidelines and audit rules
  • Update frequency: Annual or on guideline change
  • Change notification:
  • Communicated to ordering clinicians
  • Incorporated into order set templates and CDS alerts

Validation Rules

  • component_category in {RBC,PLATELET,PLASMA,CRYO,WHOLE,MULTI}
  • If requires_documented_lab = TRUE then system must enforce presence of relevant lab result within configurable time window (e.g., 24h)
  • indication_code unique and stable (no reuse)

Configuration Parameters

Module Configuration Matrix

Parameter Type Default Description Governance
max_results_per_search Integer 50 Max donor/patient/component records returned in search screens System Admin
type_screen_validity_hours Integer 72 Validity period for type & screen results before re-sample required Blood Bank Medical Director
crossmatch_validity_hours Integer 72 Validity period for crossmatch before re-crossmatch required Blood Bank Medical Director
emergency_release_alert_threshold_minutes Integer 30 Time after which unreturned emergency-issued units trigger alert Blood Bank Supervisor
inventory_low_stock_days_on_hand Integer 3 Default minimum days-on-hand threshold for low stock alerts Blood Bank Supervisor
platelet_low_stock_days_on_hand Integer 2 Separate threshold for platelets (short shelf life) Blood Bank Supervisor
expiry_warning_days_rbc Integer 5 Days before RBC expiry to trigger warning Blood Bank Supervisor
expiry_warning_days_platelet Integer 2 Days before platelet expiry to trigger warning Blood Bank Supervisor
expiry_warning_days_plasma Integer 30 Days before plasma/cryoprecipitate expiry to trigger warning Blood Bank Supervisor
max_transport_time_room_temp_minutes Integer 30 Max time unit can be out of controlled storage before return/discard Blood Bank Medical Director
require_double_verification_at_issue Boolean true Enforce two-user verification when issuing units Blood Bank Supervisor
require_double_verification_at_bedside Boolean true Enforce two-nurse verification at bedside Nursing Director + Medical Director
auto_quarantine_on_positive_infectious Boolean true Automatically quarantine and block issue if any infectious test reactive Blood Bank Medical Director
auto_discard_on_expiry Boolean false If true, system auto-moves expired units to discard log nightly Blood Bank Supervisor
moh_hemovigilance_auto_report Boolean true Auto-generate MOH report for serious reactions Blood Bank Medical Director
pdpl_data_retention_years Integer 30 Retention period for donor/transfusion records per facility policy & UAE PDPL Compliance Officer
audit_log_level Enum(MINIMAL,STANDARD,DETAILED) STANDARD Level of audit logging for blood bank actions Compliance Officer + IT Security
allowed_mtp_overrides Integer 2 Number of times MTP pack composition can be overridden per episode before escalation Transfusion Committee
lis_infectious_result_timeout_minutes Integer 240 Time to wait for LIS infectious results before escalation alert Lab Director

Data Load Procedures

1. Initial Load

Sources:

  • ISBT 128 standard tables (ABO/Rh, component types, antigen/antibody nomenclature)
  • UAE MOH blood safety and hemovigilance guidelines
  • Facility transfusion policies and SOPs
  • LIS dictionaries (infectious tests, result codes)

Process:

  1. Design phase - Map required master data sets to source documents (ISBT, MOH, facility policies). - Define code systems and ensure no collision with existing enterprise codes.

  2. Staging - Prepare CSV templates for each master data table:

    • ref_blood_group.csv
    • ref_blood_component_type.csv
    • ref_antibody_specificity.csv
    • ref_transfusion_reaction_type.csv
    • ref_donor_deferral_reason.csv
    • ref_infectious_test_panel.csv
    • ref_component_storage_requirement.csv
    • ref_crossmatch_rule.csv
    • ref_transfusion_indication.csv
    • Additional ref tables (status codes, reasons, etc.)
  3. Import - Use admin UI or ETL scripts to import CSVs into staging tables. - Run validation routines (see below). - On success, promote to production reference tables.

  4. Reconciliation - Cross-check:

    • ABO/Rh codes with LIS blood group dictionary.
    • Component types with existing blood bank labels and billing codes.
    • Infectious test panel with LIS test catalogue.
    • Resolve discrepancies before go-live.

2. Ongoing Synchronisation

  • ISBT updates:
  • Annual review of ISBT bulletins.
  • Import new/updated component and antigen codes into staging.
  • Impact analysis, then controlled promotion.

  • MOH guideline changes:

  • Compliance Officer monitors MOH circulars.
  • When blood safety or hemovigilance guidance changes:

    • Update donor deferral reasons, infectious panel, reaction types as needed.
    • Ensure MOH hemovigilance report mappings remain valid.
  • LIS integration:

  • For infectious tests and results, maintain mapping tables between HIS codes and LIS codes.
  • Use HL7 ORU messages to validate that LIS result codes map to ref_infectious_result.

  • Facility policy changes:

  • Transfusion Committee decisions trigger updates to:
    • Transfusion indications
    • Crossmatch rules
    • MTP pack definitions

3. Import/Export Formats

  • Import:
  • Preferred: CSV with UTF-8 encoding (to support Arabic).
  • Optional: JSON via internal admin API for automated synchronisation.

  • Export:

  • CSV/Excel for governance review and audits.
  • JSON for integration with decision support tools or external registries.

Example CSV header for ref_blood_component_type:

Text
component_type_code,isbt_product_code,display_name_en,display_name_ar,component_category,default_volume_ml,requires_irradiation_flag,is_apheresis,shelf_life_hours,storage_temp_min_c,storage_temp_max_c,billable_cpt_code,is_active,sort_order

4. Validation on Import

For each master data set, the import process must:

  1. Structural validation - Required columns present. - Data types correct (e.g., numeric fields contain only numbers).

  2. Referential validation - Foreign keys (e.g., component_type_code in storage requirements) exist in referenced tables. - Codes referenced in rules (e.g., reactive_result_code) exist in their ref tables.

  3. Business rule validation - ABO/Rh combinations valid. - Shelf life and temperature ranges within clinically acceptable bounds. - Only one default rule per rule category (e.g., crossmatch type).

  4. UAE regulatory validation - Infectious panel includes all MOH-mandated tests. - Hemovigilance reaction types cover all MOH reportable categories. - Donor deferral reasons align with MOH criteria.

  5. Audit & PDPL - All changes logged with user, timestamp, and before/after values. - For deletions, system should prefer soft-delete (is_active = FALSE) to preserve history in line with UAE PDPL and clinical traceability requirements.


This specification provides the master data and configuration foundation for the Blood Bank Management module, ensuring consistent coding, regulatory compliance in the UAE context, and safe, traceable transfusion practice.

content/clinical/blood-bank/06-master-data.md Generated 2026-02-20 22:54