A machine-actionable YAML contract that ArcaQ compiles into OWL T-Box axioms (classes, property characteristics, logical restrictions) and SHACL A-Box shapes (runtime constraint enforcement). The enforcement arm of Ontology Lifecycle Management — governing meaning, not just structure.
An OOC goes beyond schema validation. It encodes formal semantics that an AI reasoner can act on.
Every concept carries definitions as first-class RDF language literals — not translations from English.
rdfs:label and skos:definition in Arabic, French, English, and any required language.
AI agents query the same OWL class through any language's skos:altLabel.
Property characteristics are formal axioms, not labels. Declaring isPartOf as Transitive
instructs the reasoner to materialize the full transitivity chain. Functional, Asymmetric, Inverse —
each characteristic enables a class of inferences your AI can make without guesswork.
SHACL NodeShapes compiled from the OOC enforce constraints at ingestion time. Every entity written
to the Jena graph is validated against sh:minCount, sh:pattern,
sh:datatype, and sh:in (allowed values). Violations are rejected
with structured, multilingual error messages — not silently accepted.
Both serve quality. Only one serves meaning.
YAML is the source of truth. OWL and SHACL are derived artifacts generated on demand.
Breaking changes require four-eyes approval before the new compiled artifacts replace the current version in the graph.
Every OOC YAML follows a canonical five-section structure that maps directly to compiled OWL and SHACL constructs.
id, title, domain, version,
status, multilingual labels, authors, changelog.
Drives the OLM registry entry.
owl:oneOf).
Compiled into OWL Turtle.
sh:NodeShape with property constraints —
sh:minCount, sh:maxCount, sh:pattern,
sh:datatype, sh:in, severity, multilingual sh:message.
Compiled into SHACL Turtle.
A turbine component contract with Transitive + Asymmetric isPartOf, functional serial number, and SHACL constraint.
metadata: id: ooc-turbine-2026-v1 title: Industrial Turbine Component domain: industrial-equipment version: "1.0.0" status: approved labels: en: Industrial Turbine Component fr: Composant Turbine Industrielle ar: مكوّن التوربين الصناعي semantics: namespace: https://arcaq.com/ontology/turbine# classes: - id: TurbineComponent labels: { en: Turbine Component, fr: Composant de Turbine, ar: مكوّن التوربين } object_properties: - id: isPartOf domain: TurbineComponent range: TurbineComponent characteristics: [Transitive, Asymmetric] datatype_properties: - id: operationalStatus range: xsd:string allowedValues: [OPERATIONAL, STANDBY, UNDER_MAINTENANCE, DECOMMISSIONED] data_integrity: shapes: - target: TurbineComponent constraints: - property: serial_number minCount: 1 maxCount: 1 pattern: "^[A-Z]{2}-[0-9]{6}$" severity: Violation message: en: Serial number must match format XX-NNNNNN fr: Le numéro de série doit correspondre au format XX-NNNNNN versioning_control: policy: STRICT breaking_change_requires: [four_eyes_approval, graph_migration_plan] interoperability: standard_alignments: - standard: ISO-10303-239 mapped_class: TurbineComponent relationship: skos:exactMatch
This YAML compiles into an OWL Turtle declaring owl:TransitiveProperty,
owl:AsymmetricProperty, owl:oneOf for operationalStatus,
and a SHACL NodeShape enforcing the serial number pattern — all loaded into Jena on approval.
All OOC operations are exposed through ArcaQ's REST API. No CLI, no manual TTL authoring.
Learn how ArcaQ's OOC Registry compiles multilingual YAML into OWL + SHACL — and enforces meaning, not just structure, across your industrial data.