An open standard for representing software topology.
Ontop Core gives systems a shared vocabulary for their own structure — nodes, edges, dependency kinds, and technology references — in a canonical, machine-readable format. Tools, platforms, and AI advisors can reason about topology without guessing.
Think of it like OpenAPI for software architecture: the schema is the contract, implementations verify against it, and the ecosystem builds on top.
A topology in Ontop Core is a JSON document:
{
"version": "0.1",
"nodes": [
{ "id": "api", "kind": "backend", "label": "API Service", "technologyId": "nestjs" },
{ "id": "db", "kind": "database", "label": "PostgreSQL", "technologyId": "postgresql" }
],
"edges": [
{ "from": "api", "to": "db", "kind": "depends_on" }
]
}Node kinds: service · frontend · backend · database · infrastructure · integration
Edge kinds: depends_on · implements
technologyId — optional reference to a technology registry entry (e.g. Trood Tree).
| Repo | Role |
|---|---|
trood-ontop-spec |
The schema — source of truth for all node kinds, edge kinds, and rule grammar |
trood-ontop-validator |
Reference CLI validator (Go) — deterministic, CI-friendly, exit-code driven |
trood-ontop-interface |
Archived — AI advisory layer is now handled natively by implementations |
trood-ontop (this repo) |
Standard documentation and governance |
Product Engine by Trood is the flagship commercial implementation of Ontop Core:
- Stores project topologies in Ontop Core format
- Technology nodes grounded in Trood Tree — a curated technology registry
- GPT advisor receives topology as context for planning and analysis
- Architecture sketch flow auto-populates topology from confirmed layers
Spec-driven — topology is defined before enforcement. The schema is the authority.
Deterministic validation — the validator produces the same result on every run. No prompts, no interpretation.
AI is advisory — AI may explain, suggest, and scaffold. Humans approve structural change.
Cross-language — one schema, multiple runtimes. The Go validator and any future TypeScript or Python implementation must produce identical results.
Ontop Core evolves through a structured proposal process. Changes to the schema require a formal proposal, impact analysis, version bump, and human approval.
AI contributors (Lobsters) may draft rule packs, scaffold runtime code, and suggest ontology extensions. Human contributors (Beans) define the ontology, approve schema evolution, and guard invariants.
See GOVERNANCE.md for the full model.
v0.2 — active.
The schema is stable for the PE topology use case. The Go validator is the reference implementation. Contributions welcome via the spec and validator repos.