Phosphorus32OrthophosphateChecker
Phosphorus-32 Orthophosphate
Utility description: Phosphorus-32 Orthophosphate
Phosphorus-32 Orthophosphate Quality Checker — P-32 Orthophosphate Solution for Systemic Therapy
ℹ️ Utility checks critical parameters of Phosphorus-32 solution:
• Radionuclidic purity (≥99.9%)
• Phosphorus-33 impurity (≤0.1%)
• Radiochemical purity (≥95%, orthophosphate form)
• Osmolality (250–350 mOsm/kg)
• pH, endotoxins, sterility
⚠️ CRITICAL: Product MUST BE in ORTHOPHOSPHATE form for bone uptake!
P-33 impurity is undesirable due to long half-life.
Sterility is mandatory even for oral forms (due to systemic action).
Usage:
Phosphorus32OrthophosphateChecker.exe → demo mode (console output)
Phosphorus32OrthophosphateChecker.exe input.csv output.json → evaluate your data
Input format:
BatchNumber,TotalActivityMBq,RadionuclidicPurityPercent,Phosphorus33ImpurityPercent,RadiochemicalPurityPercent,pH,EndotoxinsEU,SterilityTest,OsmolalityMOsmKg,ProductType
Example (sterility: 0=sterile, 1=contaminated):
P32-ORTHO-2026-010,185.0,99.95,0.05,99.0,6.5,40.0,0,300,IVInjection
Supported product types:
• OralSolution — oral solution (polycythemia, bone pain)
• IVInjection — intravenous injection (polycythemia, bone pain)
— WHY IS THIS NEEDED?
Phosphorus-32 as soluble orthophosphate (Na3PO4) is used for systemic radiation therapy:
• 14.29-day half-life
• Pure beta-emitter (E_max = 1.71 MeV)
• Biologically incorporates into rapidly dividing cells (bone marrow, bone tumor tissue) due to similarity with stable phosphorus
• Used in polycythemia vera (suppression of erythropoiesis) and palliative treatment of multiple bone metastases
⚠️ CRITICAL:
• Radiochemical purity ≥95% (orthophosphate form) — IF phosphorus is in another chemical form (e.g., polyphosphate or colloid), it will NOT be properly absorbed by bone tissue and will not have therapeutic effect, or may accumulate in liver/spleen.
• Phosphorus-33 impurity ≤0.1% — P-33 (T½=25.3 days) creates additional burden on bone marrow without therapeutic benefit.
• Sterility — MANDATORY. Even with oral administration, the drug is absorbed into blood and delivered to bone marrow. Contamination is unacceptable.
• Osmolality 250–350 mOsm/kg — critical for IV administration to avoid hemolysis or phlebitis.
• pH 4.0–8.0 — physiological range.
• Endotoxins ≤175 EU/vial.
Key features:
• Control of chemical form (orthophosphate vs other forms)
• Assessment of suitability for systemic administration (osmolality, sterility)
• Check for absence of colloidal particles (implied by high radiochemical purity of soluble form)
Critical parameters:
• Radionuclidic purity: ≥99.9%
• P-33 impurity: ≤0.1%
• Radiochemical purity (orthophosphate): ≥95.0%
• Osmolality: 250–350 mOsm/kg
• pH: 4.0–8.0
• Endotoxins: ≤175 EU/vial
• Sterility: no microbial growth
💡 Usage tips:
1. Radiochemical purity determined by TLC (thin-layer chromatography). Orthophosphate has high Rf in appropriate solvent systems.
2. Product must be a clear, colorless solution. Turbidity indicates colloid formation or precipitate — such product is rejected.
3. When handling P-32 orthophosphate, protect staff from beta radiation (plexiglass shielding).
4. Dosage is calculated individually based on body weight and bone marrow status.
⚠️ Note: Unlike colloidal P-32, which acts locally, P-32 orthophosphate is a SYSTEMIC agent. It circulates in blood and selectively accumulates in areas with high phosphorus metabolism (bones, tumors). Error in chemical form leads to complete loss of efficacy or unpredictable distribution.input.csv
BatchNumber,TotalActivityMBq,RadionuclidicPurityPercent,Phosphorus33ImpurityPercent,RadiochemicalPurityPercent,pH,EndotoxinsEU,SterilityTest,OsmolalityMOsmKg,ProductType P32-ORTHO-2026-010,185.0,99.95,0.05,99.0,6.5,40.0,0,300,IVInjection P32-ORAL-2026-002,370.0,99.9,0.1,98.5,7.0,100.0,0,290,OralSolution P32-ORTHO-2026-011,180.0,99.5,0.5,90.0,6.0,50.0,0,310,IVInjection
URS & FS — User Requirements and Functional Specification
This document describes the controlled interface and behaviour of Phosphorus32OrthophosphateChecker for Phosphorus-32 Orthophosphate.
Domain limits and critical parameters
- ℹ️ Utility checks critical parameters of Phosphorus-32 solution:
- • Radionuclidic purity (≥99.9%)
- • Phosphorus-33 impurity (≤0.1%)
- • Radiochemical purity (≥95%, orthophosphate form)
- • pH, endotoxins, sterility
- ⚠️ CRITICAL: Product MUST BE in ORTHOPHOSPHATE form for bone uptake!
- P-33 impurity is undesirable due to long half-life.
- Sterility is mandatory even for oral forms (due to systemic action).
- BatchNumber,TotalActivityMBq,RadionuclidicPurityPercent,Phosphorus33ImpurityPercent,RadiochemicalPurityPercent,pH,EndotoxinsEU,SterilityTest,OsmolalityMOsmKg,ProductType
- Example (sterility: 0=sterile, 1=contaminated):
- ⚠️ CRITICAL:
- • Radiochemical purity ≥95% (orthophosphate form) — IF phosphorus is in another chemical form (e.g., polyphosphate or colloid), it will NOT be properly absorbed by bone tissue and will not have therapeutic effect, or may accumulate in liver/spleen.
- • Phosphorus-33 impurity ≤0.1% — P-33 (T½=25.3 days) creates additional burden on bone marrow without therapeutic benefit.
- • Sterility — MANDATORY. Even with oral administration, the drug is absorbed into blood and delivered to bone marrow. Contamination is unacceptable.
URS — User Requirements Specification
| ID | Requirement | Criticality | Acceptance criterion |
|---|---|---|---|
| URS-001 | The utility shall accept an input.csv file with the exact headers defined in the data contract. | High | The file is processed without manual header editing. |
| URS-002 | The utility shall perform deterministic QC evaluation for Phosphorus-32 Orthophosphate using input values, approved limits and domain rules. | High | Each input row receives a PASS / WARNING / FAIL status. |
| URS-003 | The utility shall validate mandatory fields, data types, numeric ranges, units and pharmaceutical/radiochemical plausibility. | High | Schema and conversion errors are explicitly reported. |
| URS-004 | The utility shall identify critical deviations related to radionuclidic purity, radiochemical purity, free radionuclide, impurities, pH, endotoxins and sterility when such fields are present. | High | A critical deviation causes FAIL or a separate critical finding. |
| URS-005 | The utility shall generate output.json with machine-readable results, source values, warnings and failures. | High | JSON is suitable for LIMS/ELN/MES integration and QA/QC review. |
| URS-006 | The utility shall not use machine learning to decide conformance. | Medium | The result is based on explicit rules, thresholds and input values. |
| URS-007 | The utility shall preserve traceability between batch number, input values, applied rules and final status. | High | The output contains the batch identifier and the list of checked parameters. |
| URS-008 | The documentation shall support IQ/OQ preparation and inspection discussion with FDA/EMA/Roszdravnadzor or local regulators. | Medium | URS & FS, input.csv/output.json contract and test scenarios are supplied with the utility. |
input.csv contract
| # | Field | Type | Sample | Purpose |
|---|---|---|---|---|
| 1 | BatchNumber | string | P32-ORTHO-2026-010 | Batch or lot identifier used for traceability. |
| 2 | TotalActivityMBq | decimal | 185.0 | Radioactivity value used for release, decay or dose-related assessment. |
| 3 | RadionuclidicPurityPercent | string | 99.95 | Radionuclidic purity; a critical radiation-safety and impurity parameter. |
| 4 | Phosphorus33ImpurityPercent | string | 0.05 | Solution pH; relevant for stability, compatibility and administration. |
| 5 | RadiochemicalPurityPercent | string | 99.0 | Radiochemical purity; confirms the labelled chemical form and binding quality. |
| 6 | pH | decimal | 6.5 | Solution pH; relevant for stability, compatibility and administration. |
| 7 | EndotoxinsEU | decimal | 40.0 | Bacterial endotoxins; critical for parenteral administration. |
| 8 | SterilityTest | flag / boolean | 0 | Sterility result; critical release parameter. |
| 9 | OsmolalityMOsmKg | decimal | 300 | Osmolality; relevant for injectable compatibility. |
| 10 | ProductType | string | IVInjection | Controlled input parameter used by the deterministic QC rules. |
BatchNumber,TotalActivityMBq,RadionuclidicPurityPercent,Phosphorus33ImpurityPercent,RadiochemicalPurityPercent,pH,EndotoxinsEU,SterilityTest,OsmolalityMOsmKg,ProductType P32-ORTHO-2026-010,185.0,99.95,0.05,99.0,6.5,40.0,0,300,IVInjection P32-ORAL-2026-002,370.0,99.9,0.1,98.5,7.0,100.0,0,290,OralSolution P32-ORTHO-2026-011,180.0,99.5,0.5,90.0,6.0,50.0,0,310,IVInjection
FS — Functional Specification
| ID | Function | Implementation |
|---|---|---|
| FS-001 | CSV import | Read input.csv in UTF-8/CSV-compatible format and validate the header and expected columns. |
| FS-002 | Schema validation | Check mandatory fields and column count; report unknown or missing key fields. |
| FS-003 | Type conversion | Convert numeric, flag and text values; invalid formats are recorded as row-level errors. |
| FS-004 | Domain rule engine | Apply domain rules for Phosphorus-32 Orthophosphate, including critical limits from the utility description and approved specification. |
| FS-005 | Status aggregation | Produce final status: FAIL for critical failure, WARNING for non-critical deviation, PASS for conformance. |
| FS-006 | JSON export | Write output.json with detailed checks, source values, warnings, failures and critical findings. |
| FS-007 | Audit support | Keep the result structure suitable for review, deviation investigation, calculation reproduction and IQ/OQ preparation. |
| FS-008 | Integration contract | Support the production scenario: LIMS/ELN/MES creates input.csv, the utility returns output.json, the portal displays description and documentation. |
Example output.json
{
"utilityId": "phosphorus32-orthophosphate-checker",
"api": "Phosphorus-32 Orthophosphate",
"overallStatus": "PASS|WARNING|FAIL",
"sourceFile": "input.csv",
"checks": [
{
"parameter": "BatchNumber",
"value": "P32-ORTHO-2026-010",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "TotalActivityMBq",
"value": "185.0",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "RadionuclidicPurityPercent",
"value": "99.95",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "Phosphorus33ImpurityPercent",
"value": "0.05",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "RadiochemicalPurityPercent",
"value": "99.0",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "pH",
"value": "6.5",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "EndotoxinsEU",
"value": "40.0",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
},
{
"parameter": "SterilityTest",
"value": "0",
"status": "PASS|WARNING|FAIL",
"message": "Rule-based check result"
}
],
"criticalFindings": []
}
OQ/PQ test scenarios
| ID | Scenario | Expected result |
|---|---|---|
| OQ-001 | Valid sample row | PASS or acceptable WARNING according to the rules. |
| OQ-002 | Mandatory column missing | Schema error or FAIL. |
| OQ-003 | Non-numeric value in numeric field | Type-conversion error. |
| OQ-004 | Critical parameter outside limit | FAIL and critical finding. |
| PQ-001 | User real batch/lot | Reviewed result with input.csv and output.json retained. |
QA/QC and change control
- Do not rename columns without updating the validator and test set.
- Retain
input.csv,output.json, executable version and checksum. - Before production use, perform IQ/OQ/PQ or equivalent CSV/CSA verification.
- Critical radiopharmaceutical limits must be verified against the approved specification and local SOPs.
Included in packages
PetRad3: expanded PET/SPECT and radiopharmaceutical QC package
A curated suite for PET/SPECT radiopharmaceuticals, generator and cyclotron radionuclides, labelled compounds, radiochemical purity, breakthrough, sterility and endotoxin control.
OpenRadiology QC Suite
QC package for radiology and diagnostic imaging: radiopharmaceuticals, PET/SPECT, contrast media, iodinated and gadolinium products, plus particle, sterility and endotoxin checks.
OpenRPH isotope family: beta-emitting therapy
Lu-177, Y-90, Ho-166, Re-188, Sm-153, Sr-89, P-32, Cu-67 and Tb-161.
OpenRPH organ/system: bone and musculoskeletal
Bone scintigraphy, MDP/PYP, marrow, bone-pain palliation, skeletal metastases and radiosynovectomy.
OpenRPH organ/system: hepatobiliary and GI
HIDA, mebrofenin, gallbladder, gastric emptying, GI transit, bleeding and liver/spleen imaging.
OpenRPH organ/system: oncology and theranostics
Tumour imaging, PSMA/FAPI/receptor tracers, immuno-PET, targeted radionuclide therapy and radioembolization.
OpenRPH use case: generators, isotope purity and starting radionuclides
Control of generator eluate, breakthrough, radionuclidic purity, isotope mix, carrier/free radionuclides and starting radionuclides before labeling.
OpenRPH workflow: generators and isotope purity
Generator eluate, breakthrough, radionuclidic purity, isotope mix and starting radionuclides.
OpenRPH workflow: imaging QC and quantitative interpretation
Acquisition, uptake, clearance, perfusion, transit, ejection fraction, segmentation and quantitative imaging.
OpenRPH workflow: instruments, devices and radiation safety
PET/gamma-camera state, calibration, detector QC, energy window, TOF, shielding and radiation safety.
OpenRPH workflow: product release QC
Assay, purity, sterility, endotoxins, pH, impurities, appearance and batch-release checks.
OpenRPH: combined radiopharmaceutical QC package
RPH combines PetRad, PetRad2 and PetRad3 into one umbrella package for PET/SPECT, therapeutic radionuclides, generators, labelled compounds, decay calculations, sterility, endotoxins and radiochemical/radionuclidic purity.
Open