Unit: applied-ontology-readiness
Plan section: AOR-2
Decision: ADR-A87, Proposed
Every Eligibility example validates against the layer’s shapes with no
violation and no warning. elg:ConceptConditionDeclarationShape warns on a
concept-matching condition that declares no concept, and does not warn on an
admission profile, whose concepts belong to its conditions (ADR-A87 item 4).
| ID | Given / When / Then | Level | Invariant | +/- |
|---|---|---|---|---|
| AOR2-01 | hierarchical-match.ttl / validated / no results |
L1 | examples conform | + |
| AOR2-02 | condition-taxonomy.ttl / validated / no results |
L1 | examples conform | + |
| AOR2-03 | interval-containment.ttl / validated / no results |
L1 | examples conform, profile exempt | + |
| AOR2-04 | hierarchical-match.ttl without the condition’s required concept / validated / one declaration warning on ex:hierarchical-condition |
L1 | warning fires | - |
| AOR2-05 | as AOR2-04 for ex:exact-condition |
L1 | warning fires | - |
| AOR2-06 | as AOR2-04 for ex:set-condition |
L1 | warning fires | - |
| AOR2-07 | profile with a member condition and a concept strategy, no concepts / validated / no declaration warning | L1 | profile exempt | + |
| AOR2-08 | condition with SetMembership, no concepts, no members / validated / one declaration warning |
L1 | exemption is narrow | - |
| AOR2-09 | one exclusion inside the inclusion, one outside every inclusion / validated / one elg:ReachableExclusionShape warning on the condition |
L1 | L13 | - |
| AOR2-10 | both concept shapes in constraints.ttl and the README turtle-shapes block / compared / isomorphic (two cases) |
L3 | README mirror | + |
mise run check:ontology-catalog
Pass: every tool test passes, tools/test_eligibility_examples.py among them
(the examples task was folded into check:ontology-catalog on 2026-09-25). Also run mise run check:ontology-versioning (no unbumped
changes) and mise run check:python-root (unchanged 77 tests and the Phase 8
gate, which reads interval-containment.ttl).
hierarchical-match.ttl is now bound to a scheme contract (sketch open
question 2) and conforms to the Vocabulary shapes as well.FILTER NOT EXISTS { $this elg:hasCondition ?member } in both
shape copies.6e36586. AOR-5 then takes the cascade to 0.4.0
(MINOR).Deleting the new FILTER line from constraints.ttl failed five tests:
AOR2-01, AOR2-03, AOR2-04 (hierarchical case), AOR2-07 and AOR2-10. Restoring
it returned 11 passes.
elg:candidateValue still carries a concept in hierarchical-match.ttl,
until AOR-5 introduces elg:candidateConcept.