Reference
evo-test-evidence.shapes
SHACL Shapes (3)
| Shape | Label | Target class | Properties |
|---|---|---|---|
| evo:CoverageReportShape | Coverage-report shape | evo:CoverageReport | 3 |
| evo:DatasetFixtureShape | Dataset-fixture shape | evo:DatasetFixture | 3 |
| evo:TestRunShape | Test-run shape | evo:TestRun | 5 |
Coverage-report shape
Validates evo:CoverageReport instances. Aggregated line/branch coverage per test-run; feeds evoQ:TraceabilityCompletenessResultShape.
Target class: evo:CoverageReport
| Property path | Constraint | Cardinality | Validation message |
|---|---|---|---|
| dcterms:identifier | xsd:string · 1 | 1..evo:CoverageReport MUST carry dcterms:identifier (report ID). | |
| prov:value | xsd:decimal · 1 | 1..evo:CoverageReport MUST carry prov:value in [0.0, 1.0] (coverage ratio). | |
| prov:wasGeneratedBy | 1 · 1 | evo:TestRun..evo:CoverageReport MUST carry prov:wasGeneratedBy pointing at an evo:TestRun (PROV-O generation edge). |
Dataset-fixture shape
Validates evo:DatasetFixture instances. Pins deterministic test data for replay-ability; referenced by evo:TestRun via evo:onDataset.
Target class: evo:DatasetFixture
| Property path | Constraint | Cardinality | Validation message |
|---|---|---|---|
| dcterms:hasVersion | xsd:string · 1 | 1..evo:DatasetFixture MUST carry dcterms:hasVersion (content-addressable SHA or semver) — replay determinism gate. | |
| dcterms:identifier | xsd:string · 1 | 1..evo:DatasetFixture MUST carry dcterms:identifier (fixture ID). | |
| rdfs:label | xsd:string · 1 | 1..evo:DatasetFixture MUST carry rdfs:label (human-readable fixture name). |
Test-run shape
Validates evo:TestRun instances ingested from JUnit XML per D19 third MUST connector. Binds the run to its commit (evo:onCommit) and fixture (evo:onDataset) per arch-delta §3.2.1 cross-cutting predicates.
Target class: evo:TestRun
| Property path | Constraint | Cardinality | Validation message |
|---|---|---|---|
| dcterms:identifier | xsd:string · 1 | 1..evo:TestRun MUST carry dcterms:identifier (CI run ID). | |
| rdfs:label | xsd:string · 1 | 1..evo:TestRun MUST carry rdfs:label (test-suite name). | |
| prov:generatedAtTime | xsd:dateTime · 1 | 1..evo:TestRun MUST carry prov:generatedAtTime (run timestamp). | |
| evo:onCommit | 1 · 1 | evo:Commit..evo:TestRun MUST bind evo:onCommit to the evo:Commit tested (provenance edge, arch-delta §3.2.1). | |
| evo:onDataset | 1 · evo:DatasetFixture | evo:TestRun MUST bind evo:onDataset to ≥1 evo:DatasetFixture (fixture used, arch-delta §3.2.1)...* |
SPARQL example
# List all shapes and their target classes PREFIX sh: <http://www.w3.org/ns/shacl#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?shape ?label ?target WHERE { ?shape a sh:NodeShape ; rdfs:label ?label . OPTIONAL { ?shape sh:targetClass ?target } } ORDER BY ?label