Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.wazoo.dev/llms.txt

Use this file to discover all available pages before exploring further.

A world is a stateful knowledge graph engine that functions as an agent’s verifiable context.
A world is made of items made of facts.

Items

Worlds represent everything as an item, including the types themselves. This recursive structure enables granular, multi-hop reasoning. An item is…
  • Assigned a unique IRI.
  • Defined by one or more facts.
  • Any “thing” in your world, including documents, people, physical objects, and abstract concepts.

Properties

Properties connect items. They define actions or attributes, such as worksFor or givenName. The set of valid properties forms the graph’s vocabulary, enabling agents to navigate and mutate state with precision.

Facts

A fact is a unit of data expressed as a structured statement that connects two items using a property. Every fact is inherently bound to the dimension of time. Worlds maintains an append-only, chronological ledger of facts, allowing agents to understand exactly how state and information evolve. Conceptually, a fact functions exactly like a structured assertion. For example, the assertion “Ethan is a person” can be represented as:

Triples

Computers store facts in a data structure called the triple, which is built from three components called terms.

Anatomy

Anatomy of an RDF triple
Subject
Term
The item you are describing e.g., user:person
Predicate
Term
The structural representation of a property e.g., rdf:type
Object
Term
Another item or a raw data value e.g., schema:Person

Topography

The Object of a triple determines how the graph grows. Facts branch into two types:
  • Item-to-item: Connects two distinct items e.g., user:person -> schema:worksFor -> wazoo:organization
  • Item-to-value: Connects an item to a raw data value, adding searchable detail but acting as a terminal point e.g., user:person -> schema:givenName -> "Ethan"

Serialization

To codify knowledge, Worlds standard RDF serialization formats for expressing triples in plain text. To assert “Ethan is a Person”, the syntax goes:
@prefix user: <https://etok.me/#> .
@prefix schema: <https://schema.org/> .

user:person a schema:Person .
Items can consolidate multiple facts into a single structure. Here, we assert that Ethan is a person with the given name “Ethan”:
@prefix user: <https://etok.me/#> .
@prefix schema: <https://schema.org/> .

user:person a schema:Person ;
  schema:givenName "Ethan" .

Verification

To verify a fact, Worlds uses the SPARQL ASK query. This provides a deterministic boolean answer without probabilistic guessing. For example, to verify if “Ethan works at Wazoo”, use:
SPARQL
PREFIX wazoo: <https://wazoo.dev/#>

ASK WHERE {
  <https://etok.me/#person> wazoo:worksFor <https://wazoo.dev/#organization> .
}
In the API, use the sparql method to perform this check:
TypeScript
// worlds.sparql accepts either a world ID or a human-readable slug.
const result = await worlds.sparql(
  "my-world-slug",
  "PREFIX corp: <http://corp.example/> ASK WHERE { corp:acme corp:ownedBy corp:parent . }",
);

if (result.boolean) {
  // Fact is verified
}

Why care?

Worlds is built on standard knowledge representation formats. This provides autonomous agents with an established, interoperable foundation for reasoning.