Skip to content

Internals

These pages describe how pgRDF works inside. They are for contributors and for anyone who wants to know what happens beneath the SQL functions. To use pgRDF, start with the tour and the install guide.

PageScope
ArchitectureThe modules, how a call flows through them, and the invariants they share.
StorageTerm dictionary, partitioned quad table and indexes, the shared term cache, loaders, graph lifecycle, custody and digests.
QuerySPARQL → algebra → SQL translation, property paths, UPDATE, CONSTRUCT and DESCRIBE, the plan cache.
InferenceOWL 2 RL and RDFS materialisation.
ValidationThe SHACL engines, strict mode and the conformance gates.
PackagingInstalled files, control-file settings, upgrades and deployment notes.
DevelopmentToolchain, the local build loops and adding a SQL function.
TestingTest layers, conformance harnesses and CI gates.
ReleaseThe tag-driven release pipeline and the channels that carry a release.
Recipespg_prewarm and pg_stat_statements alongside pgRDF.

The code is the reference

Where one of these pages and the running code disagree, the code wins. The supported SQL surface can be read from the engine itself:

sql
SELECT name, identity_args, note
  FROM pgrdf.surface()
 WHERE class = 'stable'
 ORDER BY name;

Only functions in the stable class are supported API; internal, spike and deprecated entries are listed so nothing exported goes unaccounted for. The user-facing list is the function reference.

The source lives at github.com/styk-tv/pgRDF; changes between releases are recorded in CHANGELOG.md, and the current release is named in LATEST.md.

pgRDF is released under the MIT license. Documentation built with VitePress, served via GitHub Pages.