System map
OpenRiC is a set of independently-deployed, interoperable surfaces around one open contract. Scroll/drag to pan, use the controls to zoom, and click any node to open it.
flowchart TB
classDef spec fill:#eff4fb,stroke:#1f5fa8,color:#0f3e75;
classDef impl fill:#eafaf1,stroke:#10b981,color:#065f46;
classDef client fill:#fff7ed,stroke:#f59e0b,color:#92400e;
classDef consumer fill:#f3effd,stroke:#8b5cf6,color:#5b21b6;
subgraph S [Specification - openric.org]
SPEC["📖 Spec documents
mapping · viewing API · graph primitives"]:::spec
PROF["🧩 Profiles
12 conformance targets"]:::spec
SHAPES["✅ JSON Schemas + SHACL"]:::spec
end
subgraph I [Reference implementation - ric.theahg.co.za]
API["🔌 Reference API
/api/ric/v1 · 8-entity CRUD · OAI-PMH"]:::impl
SPARQL["🔎 SPARQL endpoint"]:::impl
NAV["🧭 RiC-CM navigator
/reference/ric-cm"]:::impl
end
subgraph C [Browser clients]
VIEW["🗺 Viewer
2D/3D graph"]:::client
CAP["✍ Capture
data entry"]:::client
WIZ["🧙 Modelling wizard
guided + AI-assisted"]:::client
end
HER["🏛 Heratio
related platform, reads"]:::consumer
AGG["📡 Aggregators / RAG agents"]:::consumer
SPEC --> API
PROF --> API
SHAPES --> API
API --> VIEW
API --> CAP
API --> NAV
WIZ --> API
API --> HER
SPARQL --> AGG
API --> AGG
click SPEC "/spec/" "Read the specification"
click PROF "/spec/profiles/" "Conformance profiles"
click NAV "https://ric.theahg.co.za/reference/ric-cm/" "RiC-CM navigator"
click VIEW "https://viewer.openric.org/" "Graph viewer"
click CAP "https://capture.openric.org/" "Capture client"
click WIZ "/wizard/" "Modelling wizard"
click API "/help/using-the-api/" "Using the API"
click HER "https://heratio.theahg.co.za/" "Heratio"
Diagram renders with Mermaid. If it doesn't load, the same structure is described in For developers → how the pieces fit together.
In words
- The Specification (openric.org) defines the contract: the mapping documents, the profiles, and the JSON Schemas + SHACL shapes that make conformance testable.
- The Reference API (ric.theahg.co.za) implements that contract over a demonstration archival dataset - read/write CRUD for all eight RiC entity types, SPARQL, OAI-PMH, and the SPARQL-backed RiC-CM navigator.
- The clients - viewer, capture, and the modelling wizard - are pure-browser apps that talk to any conformant server, not just the reference.
- Consumers - aggregators, RAG agents and the viewer read the same public contract. Heratio, a GLAM platform from the same maintainers, reads graph data from it but writes through its own routes on a shared database.
The point of the diagram: every box can be replaced by a third-party implementation of the same contract without touching the others.