Notation3: Graph Terms for RDF
Notation3 (N3) Logic extends RDF with graph terms—entire graphs used as terms in triples—to support statements about statements and rule-based reasoning. This paper fills a long-standing gap by providing the first comprehensive formal semantics for these graph terms, introducing an abstract syntax and a two-layer semantics (basic entailment followed by N3-entailment for built-in predicates). The work matters because N3 has lacked a standardized model-theoretic account, leaving implementations like EYE and Cwm without a common semantic foundation.
The paper delivers a rigorous, much-needed formal foundation for N3 graph terms. Its two-layer semantics—basic entailment plus an extension for log:implies and log:includes—is principled and aligns cleanly with RDF simple entailment. However, several important limitations remain unresolved: the interpolation lemma is restricted to finite graphs, log:includes deliberately omits universal quantification for pragmatic reasons, and the treatment of variables as ground-term assignments rather than domain elements introduces known limitations for future extensions with negation. These trade-offs are acknowledged but weaken the result's generality.
The abstract syntax is elegant: representing each graph as a tuple $(U,E,F)$ with explicit universal and existential variable sets cleanly separates scoping from triple structure. The proof that N3 basic entailment coincides with RDF simple entailment on pure RDF graphs (Lemma 5.10) is a strong compatibility result that anchors the semantics in the existing standards. The requirements analysis—motivating referential opacity, closed graph terms, and flexible quantification scopes—is well argued and drives the formal definitions.
First, the generalized interpolation lemma (Lemma 5.25) applies only to finite graphs, breaking parity with RDF semantics where the lemma holds for infinite graphs; the authors concede this is unresolved future work. Second, the semantics of log:includes is deliberately weakened: it checks only existential consequence, excluding universal quantification, because "no reasoner supporting it and most practical use cases only require a simpler form of entailment." This is a pragmatic retreat from full basic entailment. Third, mapping quantified variables to ground terms instead of domain elements means unnamed resources are unreachable by variables—a shift the authors admit is "not neutral" and likely problematic for extensions involving negation.
Finally, the paper is entirely theoretical and offers no implementation, empirical evaluation, or even pseudo-code for reasoning algorithms, leaving practical feasibility unvalidated.
The mathematical evidence supports the core entailment claims: lemmas on isomorphism, subgraphs, and instances are proved in detail, and the RDF compatibility result (Lemma 5.10) is carefully established. Comparisons to related work (RDF-star, named graphs, singleton properties) are accurate but brief, mainly appearing in Sections 1 and 7. The more serious gap is the lack of empirical or implementation evidence for the pragmatic claim that the simplified log:includes suffices in practice—this is asserted rather than demonstrated. The paper also does not compare against alternative model-theoretic choices for graph terms (e.g., transparent vs. opaque) in depth; it simply adopts opacity as a requirement.
No code, data, or supplementary materials are provided; the authors explicitly state that "this article involves no relevant supplementary resources." Reproduction is therefore purely theoretical: a reader could in principle verify the proofs, but independent implementation of a reasoner from the abstract syntax would require bridging a significant gap to the concrete Turtle-based syntax and handling implicit quantification. No hyperparameters, benchmarks, or experimental protocols are applicable. The abstract definitions are unambiguous, yet the absence of any reference implementation or test suite makes it difficult to validate that the semantics matches existing reasoners like EYE or Cwm.
Notation3 Logic was introduced as an extension of RDF allowing the user to express rules on top of triples and to make statements about graphs. The original proposal of the logic only came with an informal specification of its semantics which has been refined later on. While this refinement clarified the meaning of rules and implicitly quantified variables, it left the meaning of graphs used as terms - so-called graph terms - open. In this paper we aim to close this gap. We discuss in detail, how graph terms are used in Notation3, which formal requirements they need to meet, and provide examples to illustrate the difficulties when defining their semantics. We then introduce an abstract syntax for the logic and define its semantics in two steps: similarly to RDF's simple interpretations, we define interpretations and basic entailment for Notation3 which covers plain RDF triples but also triples containing graph terms. N3-entailment is then an extension of basic entailment which assigns meaning to the different special predicates of the logic like for example the implication symbol. N3-entailment is defined in a way that it can be extended whenever a new predicate is added to the logic. As Notation3 Logic is currently under development, we expect many predicates to be added. Our research provides and important step towards the full standardisation of the logic.
Pick a starting point or write your own. Challenges run in the background, so you can keep reading while the AI investigates.
No challenges yet. Disagree with the review? Ask the AI to revisit a specific claim.