-
Notifications
You must be signed in to change notification settings - Fork 0
Layered Ontology
The Flexo-RTM ontology is partitioned into six layers, each with a distinct role, dependency direction, and editorial discipline. The layering is not cosmetic: it is what makes the assembled rtm.ttl stay small (≤ 2000 triples), keeps domain semantics independent of external-vocab churn, and lets different institutional contexts apply different constraints without forking the core. See Design Spec §6.1 for the canonical table.
| Layer | Path | Role |
|---|---|---|
| Core | ontology/core/ |
Domain-general TBox — vertices, edges, faces, attestation, scope, transcript, deferred-judgment, aspect base classes |
| Alignment | ontology/alignment/ |
Interop bindings (owl:equivalentClass, skos:closeMatch) to OSLC-RM, OSLC-QM, SysMLv2, INCOSE, GSN, PROV, EARL, P-PLAN |
| Profiles | ontology/profiles/ |
Composable SHACL contracts selectable per oracle run |
| Shapes | ontology/shapes/ |
Always-active structural enforcement (cannot be disabled) |
| Imports | ontology/imports/ |
Vendored full external vocabs (read-only) for reproducibility |
| Parsimony | ontology/parsimony/ |
MIREOT / SLME extracts; manifest.yaml audit trail |
Layers depend strictly downward: Profiles and Shapes reference Core and Parsimony extracts; Alignment references Core and Imports; Imports and Parsimony are leaf layers. Core depends on nothing but standard W3C vocabularies (RDF, RDFS, OWL, SHACL, PROV, EARL).
Core is the normative TBox. Everything novel about Flexo-RTM lives here:
-
Vertex types —
Requirement,Guidance,Artifact. These are the three V-classes the certification predicate ranges over. See Vertices Edges Faces. -
Edge types —
Verification(R→A),Coupling(R↔G),Validation(G→A). Edges are first-class resources with their own IRIs, not reified predicates. -
Face types —
AssuranceFaceand its specializations. Faces close two-edge paths into 2-cells and are the structural foundation for adequacy/sufficiency reasoning. -
Attestation — the EARL-typed result attached to a
certifiestriple. Carriesapproved_by,earl:result,prov:atTime, optionaltranscript_ref, and (when policy demands) a signature envelope. - DeferredJudgment — explicit "not-yet" record. Distinguished from absence; required when an aspect is in scope but evidence is pending.
-
Scope — first-class resource with
includes_graphs,scope_filter,extends,intersects_with. Scope algebra lives inspec/scope-semantics.md. - Transcript and TranscriptStep — the deterministic replay record. Hash-chained per RDFC-1.0.
-
AuditReport — top-level oracle output binding scope, profile, input hash, transcript, attestation graph, coverage, topology, gaps, and the boolean
certified. - Aspect base classes — extensible vocabulary roots so domain extensions (safety aspects, performance aspects, regulatory aspects) attach without changing Core.
Core is the only layer where novel classes and properties are minted. If a term does not exist in Core, it must not be invented in any other layer.
One file per external vocabulary. Alignment files contain only these predicates:
owl:equivalentClassowl:equivalentPropertyrdfs:subClassOfskos:closeMatchskos:exactMatch
No novel classes. No novel properties. No SHACL. Alignment is purely interop wiring — it lets a Flexo-RTM Requirement round-trip to an oslc_rm:Requirement or anchor to a sysmlv2:RequirementDefinition without redefining either side. Strict matches (equivalentClass, exactMatch) are reserved for vocabularies whose semantics genuinely coincide with Core; lossy bindings use closeMatch and are documented in the per-vocab ADR.
This discipline matters because external vocabularies evolve on their own cadence. By isolating bindings to small Alignment files, an OSLC-RM 3.0 update is a one-file change, not a Core revision. See Alignment Strategy.
Profiles are composable SHACL contracts — sets of constraint shapes that the oracle activates only when invoked. The v0.1 profile catalog:
-
oslc-rm-roundtrip— requirements survive RDF→OSLC-RM→RDF without semantic loss -
oslc-qm-roundtrip— verification activities round-trip to OSLC-QM -
sysmlv2-anchored— every requirement is anchored to a SysMLv2 element -
incose-aligned— INCOSE GfWR conformance for requirement quality -
signed-commits— Git commit signatures required on author paths -
data-integrity-attestations— attestations carrydataIntegrityProofenvelopes -
dsse-activities— PROV activities carry DSSE signatures -
cosign-images— container artifacts must have cosign signatures -
rekor-transparency— signatures must be witnessed in a transparency log -
attested-satisfies—satisfiesedges require attestations -
attested-adequacy— adequacy claims require GSN-pattern attestations -
attested-sufficiency— sufficiency claims require GSN-pattern attestations -
aspect-coverage— every requirement covers all in-scope aspects -
strict-provenance— full PROV chains required on every authored triple
Profiles are orthogonal to Scope. Scope selects data; Profile selects constraints. The oracle CLI accepts --profile=A,B,C and applies all named profiles in conjunction. Different institutional contexts (a defense program vs. a research lab vs. a regulated medical-device project) compose different profile sets without forking the ontology. See Profile Mechanism.
Shapes are always-active structural enforcement. They are separated from Profiles for clarity: a Profile is opt-in, a Shape is non-negotiable.
The v0.1 Shapes layer carries:
-
attestation-shape— every Attestation hasapproved_by,earl:result,prov:atTime, and certifies exactly one triple -
identity-projection-shapes— projected identities carry provider, projection-time, and thedataIntegrityProoffrom the identity adapter
Structural shapes from Design Spec §6.1 also live here as they mature: approver-required, face-closure, aspect-coverage gate, stale-attestation detection, and the V−F topological invariant. These cannot be disabled because they encode the structural promises of the certification predicate itself.
Vendored, read-only copies of full external vocabularies (OSLC-RM, OSLC-QM, SysMLv2 fragments, INCOSE, GSN/OntoGSN, PROV-O, EARL, P-PLAN). These are reference artifacts: they make builds reproducible across upstream changes and let auditors see exactly which version of OSLC-QM was used. Imports are never loaded into the assembled runtime ontology.
Parsimony holds the MIREOT/SLME extracts derived from Imports. Each external vocab has a manifest.yaml listing every kept class and property — the audit trail of "why is this term in our ontology?" Build-time extraction via SPARQL CONSTRUCT or robot extract --method MIREOT produces minimal subsets that carry only the terms Core actually references. See Parsimony Policy.
make ontology assembles the runtime artifact:
- Load Core
- Load Parsimony extracts (each gated by its
manifest.yaml) - Load Alignment files (which bind Core terms to extracted external terms)
- Optionally run ROBOT for EL profile reasoning (precomputes
rdfs:subClassOfclosure) - Emit
rtm.ttl
Profiles and Shapes are not loaded into rtm.ttl — they are SHACL graphs the oracle applies at validation time, selected by --profile. Imports are not loaded at all at runtime; they exist only as the source material for parsimony extraction.
The assembled rtm.ttl target is ≤ 2000 triples. If a build exceeds this ceiling, the build fails and a parsimony review is required (per §9.A.5 X5 in Design Spec; conformance test tests/conformance/test_ontology_parsimony.py). Triple-count ceilings are not an aesthetic preference — they are the mechanism by which the runtime ontology stays auditable, comprehensible to reviewers, and free of accidental dependencies on external vocab churn.
- Core is normative; everything else is selectable. A Flexo-RTM implementation must implement Core. Profiles are opt-in by institutional context. Alignment is opt-in by integration target. Imports are reference-only.
-
Alignment is interop-only. Adding a
closeMatchto a new external vocab does not change what Flexo-RTM means — it only declares that two vocabularies happen to talk about overlapping concepts. -
Profiles let different institutions apply different constraints without forking. A defense program enabling
signed-commits+rekor-transparency+attested-adequacyruns the same Core as a research lab using onlyincose-aligned. - Parsimony bounds blast radius. When OSLC-RM 3.1 releases, only the Imports vendor copy and the Parsimony extract change. Core, Alignment, Profiles, and Shapes are unaffected unless we deliberately choose to bind to new terms.
-
The ≤ 2000-triple ceiling is a Phase-5 acceptance gate (§9.A.5 X5). It is the parsimony invariant that makes the entire layering meaningful — without it, layers would silently bloat and the audit trail in each
manifest.yamlwould lose its force.
- Design Spec §6.1 — canonical layered ontology table
- Parsimony Policy — MIREOT/SLME extraction discipline and the ≤ 2000-triple ceiling
- Alignment Strategy — per-vocab binding rules and ADR practice
-
Profile Mechanism — composable SHACL contracts and the
--profileCLI surface - Vertices Edges Faces — the Core domain primitives the layering protects
- Flexo Git Coexistence
- ADCS Prototype Lessons
- MVC Pattern from RIME TRL ANT
- Human-AI Accountability
- Multi-Agent Discourse Graph Precedent
- OSLC RM and QM Review
- INCOSE V2 Review
- OMG SysMLv2
- PROV EARL GSN P-PLAN
- Dragon Architecture and Mission Enterprise
- Traditional Forward and Backward Analysis
- Attestation Infrastructure in v0.1
- Identity Boundaries and Policy Projections
- External URI References
- Signed Envelopes and Established Standards
- Aspect Coverage with Adequacy and Sufficiency
- Federated Audit and Composition
- Certification Predicate
- Gap Taxonomy
- Quantitative Outcomes
- Engineering Lifecycle Stages (v0.2)
- Topological Framework Future Work (research phase)
- Vertices Edges Faces (research phase)
- Three-Layer Architecture
- Operational Layer UX Discipline
- Storage Layer Flexo Conventions
- Analysis Layer Scope Algebra
- OSLC Roundtrip Acceptance
- Identity Adapter Contract
- Flexo REST Binding
- SysMLv2 Ingestion Contract
- External URI Rules
- Signed Envelope Shapes
- Parsimony Manifest
- Lossless Roundtrip Definition
- Vendor Extension Carry-Through
- OSLC RM Adapter Contract
- OSLC QM Adapter Contract
- ADR Template
- ADR-001 Foundations First Approach
- ADR-002 SysMLv2 Anchoring
- ADR-003 Topological Framework Documented as Future Work
- ADR-003a v0.1 Ships Traditional Analysis Only
- ADR-004 Quantitative Certification Outcome
- ADR-005 Adequacy and Sufficiency as Guidance Subtypes
- ADR-006 Three-Layer Architecture
- ADR-007 Scope as First-Class RDF Resource
- ADR-008 Repo Name and Org Transfer Plan
- ADR-009 Two-Repo Strategy
- ADR-010 OSLC-RM and OSLC-QM in v0.1
- ADR-011 Lossless Criterion A plus C
- ADR-012 Direct RDF Properties over Reified Edges
- ADR-013 Simplicial Complex as Derived View When Built
- ADR-014 Parsimony Layer Build-Time Extraction
- ADR-015 GSN Adoption for Adequacy and Sufficiency
- ADR-016 Composable SHACL Profiles
- ADR-017 knowledgecomplex as Optional Extras
- ADR-018 V minus F Invariant Deferred with Topological Framework
- ADR-019 Derived Binary View from Quantitative Metrics
- ADR-020 Vocabulary Alignment with Zargham 2026
- ADR-021 Three Attestation Subclasses Ship in v0.1
- ADR-022 External URI References as Open-Source Foundation
- ADR-023 Cryptography by Composition of Battle-Tested Standards
- ADR-024 Identity by Thin Projection of External Sources
- ADR-025 Reproducibility is Structural and Local
- ADR-026 Cryptographic Agility via Algorithm Profiles
- ADR-027 Bit-Exactness vs Numerical Tolerances Are Both First-Class
- ADR-028 Scope-Level Adequacy and Sufficiency for Federated Audit
- ADR-029 Engineering Lifecycle Stages as Scope Metadata
- ADR-030 Polycentric ASOT Authority Model
- ADR-031 Attestation Status Pass Fail Deferred Deprecated
- ADR-032 Methodology Agnosticism as Foundational Axiom
- ADR-033 Generalized ASOT Principle for All Identified Things