Research Article

Construction of a Drug Safety Assurance Information System Based on Clinical Genotyping

Algorithm 1

GeneDrugMatch algorithm.
Input: patient record (P) and drug record (D) for user-selected drug
Output: user messages, calculated dose-response curves
(1) DI new DrugInteraction record (Figure 1)
(2) Mult, Dec, Inc 0
(3) if no row exists in DrugEnzyme (DE) table where DE.Enzyme = D.Enzyme & DE.Drug = D.Drug then
(4)  output “No Interaction Detected”
(5) else
(6)  DI row from DrugInteraction table (DIT) where DIT.GenericName = D.GenericName & DIT.Form =
  D.Form & DIT.Delivery = D.Delivery
(7)  if DI.DrugMetabolite is not null then
(8)     output “ProDrug Interaction Detected”
(9)    else
(10)   output “Interaction Detected”
(11)   Mult Multiplier from DrugMultiplier (DM) where DM.Allele1 = P.Allele1 & DM.Allele2 = P.Allele2 &
   DM.Drug = D.Drug {null if no match}
(12)   if Mult is not null then
(13)    Graph(DI, P.Weight, D.Dose, Mult)
(14)   else if DI.PoorMetabolizerMultiplier is not null then
(15)    Mult DI.PoorMetabolizerMultiplier
(16)    Graph(DI, P.Weight, D.Dose, Mult)
(17)   else
(18)    for all alleles in Allele (A) that match patient’s alleles (P.Allele or P.Allele2) do
(19)     if A.AlleleEffectInvivo = then
(20)      Inc Inc + 1
(21)     else if A.AlleleEffectInvivo = then
(22)      Dec Dec + 1
(23)     end if
(24)    end for
(25)    if Inc ≥ 1 or Dec ≥ 1 then
(26)     Mult 1 + (Inc * 0.33) − (Dec * 0.33)
(27)     Graph(DI, P.Weight, D.Dose, Mult)
(28)    else
(29)     output “Not Enough Information to Graph”
(30)    end if
(31)   end if
(32)  end if
(33) end if