Skip to content

OO-LD Playgrounds

Four browser playgrounds for the oold and awl packages. All run entirely in your browser: no server, no install, no account.

They answer different questions, so pick by what you want to see.

Which one

Start with the schema playground if you want to understand OO-LD itself: which term maps to which IRI, what graph an instance exports as, and what a second schema makes of that same graph. Two readings sit side by side, so a change of vocabulary is something you watch happen rather than take on trust. No Python needed.

The other two are about writing Python against oold, and they are complementary rather than competing.

A static type checker reads source. It cannot see a class built by exec() or create_model(), because that class has no source to read. The Jupyter kernel introspects live objects and resolves exactly those cases.

The trade runs the other way too. JupyterLite reports no diagnostics at all, and cannot gain them in a serverless deployment, because the language server support needs a subprocess and a websocket route that a static site has no way to serve.

So: ty playground to see what the types say, JupyterLite to see what the objects actually are.

The AWL-LD playground is highly experimental and is about a different artefact: not a schema and not a model, but a procedure. It reads one Python file as a flow of steps and lets you edit it from either side, blocks or source, with each edit showing up in the other. Pressing run traces a real execution and draws what it went through.

Browser support

Chromium and Firefox both work. Firefox shipped JSPI, which the Pyodide kernel depends on, so the notebooks no longer fail there with WebAssembly stack switching not supported.

First load takes a few seconds in each: the Python runtime and the packages are downloaded and started in the page. The schema playground is the heaviest, since panel convert inlines its assets into a single large page.