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][Verified]
Alignment to PROV-O, ORG, OWL-Time, RDFS; @es / @en labels inside the ontology[V][Verified]
Closed vocabulary: a type the system emits that the ontology does not declare fails validation[V][Verified]
SHACL shapes (domain, range, cardinality) executed by an engine, with a canary (zero foci = red)[V][Verified]
Ontology catalog: catalog explorer, SPARQL, SHACL validation, distinct from the live graph[V][Verified] 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][Partial]

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][Partial]

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