Exemplars
The 17 round-trip diagnostic exemplars — the data contract no OWL documentation tool
renders. Each is a worked instance graph (an ABox) that pressure-tests one named hard case,
paired with the sh:ValidationReport it must produce against the ratified shapes
graph (17 of 17 carry their expected-report companion). The pairing turns each
exemplar into a CI regression test, not just documentation (ODR-0004 §8a). The set is read at
build time from source/03-standards/ontology/exemplars/.
1 · The round-trip data contract
An exemplar is IC-only: the smallest TTL that exposes the identity-bearing surfaces of one hard case — no decorative metadata. The TBox/ABox boundary is the deliverable boundary; the exemplars are the thinking boundary, the place each identity criterion and rigidity claim is exercised before it is committed. The round-trip is: JSON → profile → rendered form + validated transaction → expected report. Both arms of the contract are committed:
- Conformant exemplars must validate clean against the base shapes + the loaded overlay profile + the class TBox (with the frozen RDFS-plus closure).
- Non-conformant exemplars must report the specific violation expected, and no other — the failure is localised to the one hard case under test (e.g. the BASPI5 capacity case below), so a passing report would itself be a regression.
Comparison is semantic-equivalence on focusNode / resultPath /
severity / constraint / message (not byte-identity),
so the report companion is a stable contract across processor formatting.
2 · The non-conformant case — BASPI5 B1.3.2
The canonical non-conformant exemplar, baspi5-transaction-nonconformant, is
identical to its conformant twin except that the opda:Seller asserts capacity
"Under Power of Attorney" (branch (b) of the sellersCapacity sh:xone) with no opda:hasEvidencedAuthority. A
Seller acting as Attorney or Personal Representative without evidenced authority MUST trip
opda:Baspi5_SellersCapacityShape (an sh:xone,
sh:Violation), and the violation traces via sh:sourceShape →
dct:source back to the BASPI form-question
basp.uk/forms/baspi5#B1.3.2. Everything else in the transaction is conformant, so
the capacity xone is the only failure.
Validator-capability caveat (known-issue ii)
The sellersCapacity sh:xone is a SHACL Advanced Feature: under a
SHACL-Core-only processor the xone-of-property-shapes passes
vacuously — the committed expected-report for this exemplar in fact reads
sh:conforms true at SHACL-Core. The B1.3.2 violation is only produced under a
SHACL-AF-capable validator (pyshacl advanced=True), which is what the
ci-baspi5-roundtrip gate runs. The conformant exemplar guards the vacuous-pass
direction. See the SHACL-AF note and
known-issue ii on the section reference.
3 · The 17 exemplars
Grouped by the Council session that consumed them as its identity-criterion gate. Each row names the hard case the exemplar isolates and whether its expected SHACL report is committed.
S005 — Property identity
| Exemplar | Hard case it isolates | Expected report |
|---|---|---|
flat-with-split-uprn | UPRN succession via re-numbering: physical identity persists across administrative re-issue (Rule 6 — UPRN contingent, not the IC). | paired |
registered-freehold-house | Baseline easy case: UPRN present, title registered, single proprietor — the differentiator for the harder cases. | paired |
unregistered-pre-first-registration-house | Legal layer + UPRN both absent: the identity criterion must still work with no legal anchor (Guarino) and degrade gracefully (Cagle). | paired |
S015 — Address & geography
| Exemplar | Hard case it isolates | Expected report |
|---|---|---|
flat-no-uprn-newly-converted | Address exists without a UPRN; a subdivision created two new Properties whose UPRN issuance lags AddressBase. | paired |
listed-building-divergent-addresses | Three divergent address surfaces (title / marketing / INSPIRE) on one Property — the co-reference SHACL shape across presentations. | paired |
rural-plot-inspire-no-uprn | Undeveloped land with an INSPIRE Identifier but no UPRN and no postal address — GeoSPARQL-deferral and a different PII regime. | paired |
S006 — Agents & roles
| Exemplar | Hard case it isolates | Expected report |
|---|---|---|
organisation-with-merger | Organisation identity over a merger: two predecessors dissolve; the successor is a new individual with prov:wasDerivedFrom chains. | paired |
person-with-name-change | Person identity over a deed-poll name change: same individual (PROV-O captured), not two. | paired |
proprietorship-relator-multi-proprietor | Proprietorship as a UFO Relator with multiple Proprietor Role instances — the joint-tenancy multi-proprietor case (RoleMixin vs Role). | paired |
S009 — Claims & evidence
| Exemplar | Hard case it isolates | Expected report |
|---|---|---|
claim-with-document-evidence | PR claim supported by a grant of probate: 80%-PROV-O coverage + qualified attribution; eIDAS Substantial for a court-issued instrument. | paired |
claim-with-electronic-record-evidence | Identity claim supported by an HMRC API tax-record: electronic-record evidence at eIDAS Substantial; sh:xone evidence-type discrimination. | paired |
claim-with-vouch-evidence | Residency claim supported by an SRA-solicitor vouch: vouch evidence caps at eIDAS Low (corroborative, not authoritative) regardless of voucher quality. | paired |
S007 — Transactions
| Exemplar | Hard case it isolates | Expected report |
|---|---|---|
chain-of-transactions | Three-link chain via buyer-also-seller participants — recursive Relator predicate and a first-class TransactionChain resource side-by-side. | paired |
lease-extension-transaction | Statutory lease extension (LRHUDA 1993, 99→189 years): LegalEstate persists; RegisteredTitle records the lifecycle event; lease term as a time:ProperInterval. | paired |
simple-transaction-with-milestones | Single freehold sale with five canonical milestones (instruction / offer / exchange / completion / registration) — Transaction-as-Relator + expected-vs-actual times. | paired |
BASPI5 round-trip
| Exemplar | Hard case it isolates | Expected report |
|---|---|---|
baspi5-transaction-conformant | A fully conformant BASPI5 transaction — the positive arm of the ci-baspi5-roundtrip gate; also guards the SHACL-Core vacuous-xone-pass direction. | paired |
baspi5-transaction-nonconformant | A Seller acting "Under Power of Attorney" with NO opda:hasEvidencedAuthority — MUST trip Baspi5_SellersCapacityShape, tracing via dct:source to BASPI form-question B1.3.2. | paired |
17 exemplars · 17 paired with an expected sh:ValidationReport. The
two BASPI5 transactions are instance-data round-trip fixtures (they change no emitted TBox)
rather than IC diagnostics; their report companion reflects the SHACL-Core vacuous-pass caveat
above (the committed non-conformant report reads sh:conforms true at SHACL-Core,
with the B1.3.2 violation produced only under advanced=True). The exemplar and
report TTLs live in-repo at source/03-standards/ontology/exemplars/; the shapes they
validate against are resolved in the
SHACL Play! rendering ↗
and the merged TTL bundles are linked from the
artefacts index ↗.
The custom reference rendering ↗ lists the full set.
Related
The shapes the exemplars validate against are on SHACL shapes; the overlay profiles they load are on Overlay profiles & gaps; the claims/evidence exemplars exercise the model on Claims, evidence & provenance. Governing record: ODR-0004 §8a (diagnostic exemplar policy + expected-report pairing); the BASPI5 round-trip is ODR-0010 §Q7 + ADR-0014.
Comments
Loading comments…
Sign in to post a comment