GoRules Version 2 is here - redesigned, now with managed cloud.GoRules Version 2 is here!
Watch the launch videoWatchHazardous Materials Management System
Automated rules engine that classifies hazardous materials and provides handling, storage, and transportation guidelines based on regulatory requirements.
Solution
This hazardous materials management solution automates the classification of dangerous substances and provides precise handling instructions based on material properties. The system evaluates chemical substances by analyzing their intrinsic properties, physical state, and quantity to assign appropriate hazard classifications and risk levels. It then determines the correct storage zone, handling protocols, and equipment requirements needed for safe management.
The solution enforces regulatory compliance by applying transportation rules specific to different modes (road, rail, air, sea), evaluating quantity thresholds, and determining when special permits or reporting are required. For materials like corrosives, flammables, toxins, and oxidizers, the system specifies storage limits, required safety equipment, and detailed handling procedures. This ensures organizations maintain safety standards while properly documenting hazardous material movements in accordance with regulations.
How it works
The decision system follows a sequential evaluation process:
Material Classification: Analyzes the substance properties (flammable, corrosive, toxic, etc.), physical state, and quantity to assign a hazard class (A-F), hazard level, and appropriate storage zone.
Handling Requirements: Based on the classification and hazard level, the system defines the required personal protective equipment, specific handling procedures, and maximum storage quantity limitations.
Regulatory Compliance: Evaluates the material classification against the intended transportation mode and quantity to determine compliance requirements, whether permits are needed, and if regulatory reporting is mandatory.
Documentation: Throughout the process, the system maintains critical information needed for proper labeling, documentation, and record-keeping.
Where teams use it
- Chemical laboratories and manufacturing facilities
- Pharmaceutical production and research
- Industrial warehousing and distribution
- Emergency response planning
- Transportation and logistics providers
- Environmental compliance departments
- Academic and research institutions
- Healthcare and hospital material management
Inside the decision model
Hazardous Materials Management System ships as a JDM decision graph with 4 nodes, 3 decision tables and 23 rules. Download it, load it into GoRules, and run it as-is on Zen Engine.
Request
inputFive fields describe the substance: material (a free-text name), quantity in kilograms, its physical state, a location code, and the intended transportMode. The schema constrains state to solid, liquid, or gas and transportMode to road, rail, air, sea, or internal, so the tables can match on those values safely.
Sample requestJSON
{
"material": "Sulfuric Acid",
"quantity": 75,
"state": "liquid",
"location": "Lab-B42",
"transportMode": "road"
}Material Classification
tableClassification matches keywords against lower(material) using some(...) with contains, first hit wins, so a substance named 'Sulfuric Acid' hits the corrosive row via the 'acid' keyword. Flammable or combustible liquids and gases become 'Class A - Flammable' in the 'red-zone'; corrosives map to 'Class B - Corrosive' and the 'yellow-zone'; toxic materials split on quantity, 'high' hazard above 25kg and 'medium' at or below; radioactive and explosive names rate 'extreme' in the 'black-zone'; oxidizers get the 'blue-zone', and unmatched names fall to 'Unclassified' in the 'grey-zone'.
Keyword-driven classing with a low-severity fallback is a pragmatic first pass for a facility system; the A-F letters and color-coded zones are an internal convention rather than the UN dangerous-goods classes, which is worth knowing before mapping this to shipping paperwork. The quantity split for toxics reflects a real principle, that hazard management scales with the amount on hand, while the 25kg line itself is a site-level choice.
| Material Typelower(material) | Statestate | Quantity (kg)quantity | ClassificationhazardClassification | Hazard LevelhazardLevel | Storage ZonerecommendedStorageZone |
|---|---|---|---|---|---|
| some(['flammable', 'combustible'], contains($, #)) | 'liquid', 'gas' | - | 'Class A - Flammable' | 'high' | 'red-zone' |
| some(['corrosive', 'acid', 'base'], contains($, #)) | - | - | 'Class B - Corrosive' | 'high' | 'yellow-zone' |
| some(['toxic', 'poison'], contains($, #)) | - | > 25 | 'Class C - Toxic' | 'high' | 'green-zone' |
| some(['toxic', 'poison'], contains($, #)) | - | <= 25 | 'Class C - Toxic' | 'medium' | 'green-zone' |
| some(['radioactive'], contains($, #)) | - | - | 'Class D - Radioactive' | 'extreme' | 'black-zone' |
| some(['explosive'], contains($, #)) | - | - | 'Class E - Explosive' | 'extreme' | 'black-zone' |
+2 more rows in the downloadable template
Handling Requirements
tableEquipment, procedure, and a storage cap follow from the hazardClassification and hazardLevel pair, one row per class. Flammables call for fire-resistant gloves and non-sparking tools with a 500kg limit; corrosives allow 1000kg but require neutralizing agents on hand; high-hazard toxics get the tightest chemical cap at 250kg with a full protective suit, easing to 500kg and lab-coat-level PPE at 'medium'; radioactive and explosive stock are squeezed to 50kg and 100kg with remote handling tools or blast shields, and 'Unclassified' material runs standard PPE up to 2000kg.
The inverse relationship between hazard and permitted quantity is the realistic backbone here: the storage limit is the lever that bounds worst-case incident size, so the most energetic materials get the smallest allowances. Pairing every limit with named PPE and a written procedure mirrors how safety data sheets translate into site rules, though the specific kilogram caps are policy values a facility would set to match its own containment and ventilation.
| Hazard ClassificationhazardClassification | Hazard LevelhazardLevel | Required EquipmentrequiredEquipment | Handling ProcedurehandlingProcedure | Storage Limit (kg)storageLimit |
|---|---|---|---|---|
| 'Class A - Flammable' | 'high' | 'Fire-resistant gloves, face shield, flame-retardant clothing' | 'Keep away from ignition sources, ensure proper ventilation, use non-sparking tools' | 500 |
| 'Class B - Corrosive' | 'high' | 'Chemical-resistant gloves, face shield, apron, boots' | 'Avoid contact with skin and eyes, neutralizing agents must be readily available' | 1000 |
| 'Class C - Toxic' | 'high' | 'Chemical-resistant gloves, respirator, full protective suit' | 'Use only in designated areas with proper ventilation, decontamination station required' | 250 |
| 'Class C - Toxic' | 'medium' | 'Chemical-resistant gloves, safety goggles, lab coat' | 'Use in well-ventilated area, wash hands thoroughly after handling' | 500 |
| 'Class D - Radioactive' | 'extreme' | 'Radiation suit, dosimeter, remote handling tools' | 'Special authorization required, time and distance protocols, radiation monitoring mandatory' | 50 |
| 'Class E - Explosive' | 'extreme' | 'Anti-static clothing, specialized tools, blast shield' | 'Expert personnel only, evacuation plan required, no electronic devices' | 100 |
+2 more rows in the downloadable template
Regulatory Compliance
tableTransport checks combine hazardClassification, transportMode, and quantity, first hit ordering the strictest cases on top. Flammables and explosives over 5kg are refused air transport outright; 'Class D - Radioactive' on any mode demands a special permit and mandatory routing; the four chemical classes on road, rail, or sea then tier by quantity, above 1000kg requiring placards, a certified handler, and reporting, 100 to 1000kg requiring placards and safety data sheets without reporting, and up to 100kg needing only the data sheets. Movements marked 'internal' just need a movement log, and 'Unclassified' goods follow standard shipping procedures.
The structure tracks how dangerous-goods transport genuinely works: air freight has far stricter quantity limits than surface modes, placarding and driver certification kick in by quantity bands, and paperwork like safety data sheets travels with even small shipments. The specific 5, 100, and 1000kg breakpoints and the permit strings are simplified stand-ins, so an implementer would swap in the thresholds from the applicable modal regulations rather than treat these as citations.
| Hazard ClassificationhazardClassification | Transport ModetransportMode | Quantity (kg)quantity | Compliance RequirementscomplianceRequirements | Permit RequiredpermitRequired | Reporting RequiredreportingRequired |
|---|---|---|---|---|---|
| 'Class A - Flammable', 'Class E - Explosive' | 'air' | > 5 | 'Prohibited for air transport in this quantity' | 'true' | 'true' |
| 'Class D - Radioactive' | 'road', 'rail', 'air', 'sea' | - | 'Special NRC permit required, scheduled route mandatory' | 'true' | 'true' |
| 'Class A - Flammable', 'Class B - Corrosive', 'Class C - Toxic', 'Class F - Oxidizer' | 'road', 'rail', 'sea' | > 1000 | 'HAZMAT placards required, certified driver/handler only' | 'true' | 'true' |
| 'Class A - Flammable', 'Class B - Corrosive', 'Class C - Toxic', 'Class F - Oxidizer' | 'road', 'rail', 'sea' | > 100 and <= 1000 | 'HAZMAT placards required, safety data sheets must accompany shipment' | 'true' | 'false' |
| 'Class A - Flammable', 'Class B - Corrosive', 'Class C - Toxic', 'Class F - Oxidizer' | 'road', 'rail', 'sea' | <= 100 | 'Safety data sheets must accompany shipment' | 'false' | 'false' |
| 'Class A - Flammable', 'Class B - Corrosive', 'Class C - Toxic', 'Class F - Oxidizer' | 'internal' | - | 'Internal movement log required' | 'false' | 'false' |
+1 more row in the downloadable template
Other Logistics templates
View all templatesShipping Carrier Selector
Rule-based system that selects optimal carriers by analyzing package details, service level needs, and cost factors to streamline shipping decisions.
LogisticsDelivery Route Optimizer
Smart logistics system that evaluates capacity, traffic, time windows, and distance to determine the most efficient delivery routes for maximum efficiency.
LogisticsWarehouse Storage Location
Maximizes warehouse efficiency by strategically placing products based on turnover rates, picking frequency, and product characteristics.
Make this template
your own.
Load Hazardous Materials Management System into GoRules, adjust the rules to your policy, and ship it behind your own API.