Expand description
SHACL-AF rule inference (Layer 6) — least-fixpoint forward chaining.
A rule fires on its focus nodes for which all sh:conditions hold, producing
triples from its head’s node expressions. Per the decided semantics
(docs/03-recursion-semantics.md),
inference is the least fixpoint. Rules run in ascending sh:order
groups, and output from a later group may reactivate an earlier group in the
next pass. Predicate-level delta scheduling avoids rerunning rules whose
graph reads cannot observe the newly added triples. Triple rules only
combine existing terms, and SPARQL CONSTRUCT results containing fresh
blank nodes are rejected, preserving termination for the supported subset.
Function node expressions are not executed yet; they are reported as diagnostics rather than silently skipped.
Structs§
- Inference
Outcome - The result of running inference over a data graph.
Functions§
- infer
- Run rule inference to a least fixpoint, ordered by
sh:order. - infer_
graphs - Run inference over split data and shapes graphs.
- infer_
with_ context - Run inference with data-scoped focus discovery and a broader execution
context.
contextshould containdata; newly inferred triples are added to both the returned data graph and the mutable execution context.