The open-world hole, live

SHACL is the default RDF validator, and it is open-world: it validates the terms a shape targets and stays silent about everything else. So when a model emits a plausible-but-nonexistent ontology term, SHACL reports conforms=true and the fabricated data flows on. A closed-world vocabulary gate catches it. Pick a vocabulary, keep the preloaded example or paste your own RDF, and press Run. Real pyshacl runs in your browser via Pyodide.

Booting Pyodide and installing rdflib + pyshacl (first load ~20–40s)…

SHACL (open-world)

Closed-world vocabulary gate

Measured across three real vocabularies, open-world SHACL passed 300/300 graphs carrying a fabricated term; the closed-world gate caught 300/300 with 0 false positives. Read the write-up · Reproduce on GitHub. Built by Tesseract Academy.