Skip to main content

Ontology catalog

Estonia splits two halves the rest usually merge: X-Road moves the data; RIHA — the national catalog of semantic assets — gives it meaning, and it is mandatory by law.

SiS's starting diagnosis was: the transport half was built and the catalog half was skipped. That is no longer true in the weak sense: the catalog exists, it is publishable, and the operational graph vocabulary is closed.

flowchart LR
  vivo["Live operational graph<br/>recomputed snapshot"]
  banco["Ontology catalog<br/>RDF · SHACL · SPARQL"]
  codigo["Compiled code graph<br/>not runtime truth"]
  vivo -.->|no automatic sync| banco

What is there

PieceStatus
JSON-LD ontology (sis-core), namespace https://w3id.org/sis/ns# — not a customer domain[V]
Alignment to PROV-O, ORG, OWL-Time, RDFS; @es / @en labels inside the ontology[V]
Closed vocabulary: a type the system emits that the ontology does not declare fails validation[V]
SHACL shapes (domain, range, cardinality) executed by an engine, with a canary (zero foci = red)[V]
Ontology catalog: catalog explorer, SPARQL, SHACL validation, distinct from the live graph[V] deployed
Closed world on purpose: SHACL, not open-world OWL reasoningexplicit decision

The namespace is not a customer domain: a contract that ends would leave dead URIs in the other one.

What it is not

It is not the Console's operational graph. That is recomputed from the live store. The ontology catalog explores a catalog and a graph already materialized.

There is no automatic sync from the live graph into the catalog. [P]

There is no tenant isolation inside the catalog: one store, one graph. Mixing two installs collides identifiers. Real isolation today is one install per customer. [P]

Publishing the catalog across installs in ADMS: [D].