Plant–Ship Accident Graph

A knowledge graph of 70 accident investigations — chemical plants and ships carrying ammonia, LNG and hydrogen — built so lessons from one industry can be read against the other. Ask in English or Chinese; Claude writes the Cypher query and Neo4j answers.

Incidents
70
Chemical plants (US CSB)
31
Ships (core + supplementary)
31 + 8
Variables
143
Mechanisms seen in both
44
Incidents 🏭 Chemical plant 🚢 Ship
Causal layer (upstream → harm) Organizational factor Safety barrier Initiating event Failure mode Release Consequence
Context Substance Equipment
Mechanism asserted by Plant and ship reports Plant reports only Ship reports only What one incident recorded
How this works, and how to read it

The model

Every incident is linked to variables on six causal layers taken from the bow-tie model of process safety: organizational factors weaken safety barriers; an initiating event leads to a failure mode (loss of containment), which produces a release that causes consequences.

Ship-specific concepts are mapped onto the plant vocabulary so the two domains share nodes — a cargo-hose rupture is stored as pipe_rupture, with the original hose_rupture kept on the edge.

Two kinds of edge

Incident edges record what one investigation report found. Mechanism edges between variables are causal claims merged across reports; their support is the number of reports asserting them. A chain of mechanism edges is a set of claims, not one observed sequence — use the “Chains that really happened” example for sequences recorded in a single incident.

Sources

31 investigations by the U.S. Chemical Safety Board; 39 ship accidents from JTSB, ATSB, BSU, TSB, NOPSEMA, BARPI/ARIA and REMPEC records — 31 in the core scope and 8 supplementary cases (refrigerant ammonia, non-cargo hydrogen, collisions without release) kept for failure-mechanism analogy.

Limits

  • 22 of the 39 ship sources are short database entries. A missing edge means not reported, not did not happen.
  • Evidence quoted from French and Chinese reports is shown in machine translation, with the original one click away.
  • Queries are written by an LLM and can be wrong. The Cypher is always shown so it can be checked.