OPDA Knowledge base
Physical — deployment

Format matrix

Format matrix

Per-resource format availability against the OPDA namespace https://opda.org.uk/pdtf/*. These IRIs are identifiers; resolution is optional and aspirational (see content negotiation). When served, opda.org.uk is the origin directly — no W3C PICG redirect (ADR-0006 dropped it when the base moved to opda’s own domain). The matrix below shows what that origin would return per Accept header.

Headline matrix

Resource pathtext/turtleapplication/ld+jsonapplication/rdf+xmltext/htmlNotes
https://opda.org.uk/pdtf/yesyesyesredirect to docsFoundation namespace; serves foundation.ttl (15 triples)
https://opda.org.uk/pdtf/harness/release/1.0.0/yesyesyesyesVersion-IRI; immutable per release
https://opda.org.uk/pdtf/scheme/yesyesyesredirect to docsSKOS scheme aggregate (873 triples; 23 schemes)
https://opda.org.uk/pdtf/graph/<module>yesyesyesyesModule class graph where <module> ∈ {property, agent, transaction, claim, governance, descriptive} (the modules contribute to the one …/pdtf/ ontology; no separate per-module ontology IRI)
https://opda.org.uk/pdtf/graph/<module>-shapesyesyesyesredirect to docsPer-module SHACL shapes graph
https://opda.org.uk/pdtf/graph/<module>-annotationsyesyesyesredirect to docsPer-module DPV annotations graph
https://opda.org.uk/pdtf/graph/shapesyesyesyesredirect to docsFoundation meta-shapes
https://opda.org.uk/pdtf/graph/annotationsyesyesyesredirect to docsFoundation meta-annotations
https://opda.org.uk/pdtf/shape/profiles/baspi5yesyesyesdocs pageBASPI5 overlay profile (488 triples)
https://opda.org.uk/pdtf/harness/release/profiles/baspi5/0.1.0/yesyesyesyesBASPI5 profile release snapshot (owl:versionIRI target)
https://opda.org.uk/pdtf/<EntityLocalName>yesyesyesConcept-tier pagePer-entity dereference (e.g. …/Property, …/LegalEstate, …/Buyer)
https://opda.org.uk/pdtf/derived/opda-validation.ttlyesyesyesredirect to docsPending composer activation
https://opda.org.uk/pdtf/derived/opda-ui.ttlyesyesyesredirect to docsPending composer activation
https://opda.org.uk/pdtf/derived/opda-inference.ttlyesyesyesredirect to docsPending composer activation
https://opda.org.uk/pdtf/context.jsonldno (JSON-only)yesnonoCanonical JSON-LD @context (see jsonld-context.md)

Per-entity dereference behaviour

A request like GET https://opda.org.uk/pdtf/Property with Accept: text/turtle returns the fragment of opda-property.ttl containing opda:Property plus the foundation-level context triples needed for the entity to make sense in isolation:

  • The opda:Property owl:Class declaration
  • rdfs:subClassOf chain to the nearest owl:Class in the foundation graph (transitive)
  • rdfs:label, rdfs:comment, skos:scopeNote, dct:source on opda:Property
  • The opda: and xsd: prefix declarations
  • The https://opda.org.uk/pdtf/ owl:Ontology header (so the consumer knows which release the fragment came from)

This is the “concise bounded description” pattern: enough context to validate the fragment in isolation, but not the whole module. Consumers needing the full module fetch https://opda.org.uk/pdtf/graph/property instead.

Conditional requests

Origin server honours If-None-Match (ETag-based) and If-Modified-Since (Last-Modified-based). Version-IRI URIs (/1.0.0/, /0.1.0/) are immutable, so consumers can cache aggressively (Cache-Control: public, max-age=31536000, immutable). Non-version-IRI URIs revalidate per cycle.

Source ADR

Comments

Loading comments…