[rdf12-semantics] Feedback (Part 1) W3C Candidate Recommendation Snapshot (07 April 2026)

Dear RDF & SPARQL Working Group members,

this is my first feedback for the RDF 1.2 Semantics, also including 
feedback for the RDF 1.2 Semantics tests document. These are mostly 
editorial or minor terminological points, and a few trivial errors. I 
will send some more feedback (within the next few days) about a small 
number of additional points that I wanted to check a little deeper.


RDF 1.2 Semantics Tests
https://w3c.github.io/rdf-tests/rdf/rdf12/rdf-semantics/
--------------------------------------------------------

* 01) Abstract, introduction of two kinds of tests: Both bullet points 
start with "Positive Entailment Tests". The second should be "Negative 
Entailment Tests".

* 02) Abstract, "All tests have a name (mf:name) and an input 
(mf:action).": This sentence seems to be redundant, since the item list 
below it provides the same information.

* 03) Test Descriptions: The value for "entailmentRegime" is generally 
missing, whereas in the Abstract it is stated: "an entailment regime, 
which is "simple", "RDF", or "RDFS" (mf:entailmentRegime)", so I would 
expect to see one of these labels in each test description.

* 04) Test "opaque-literal" (and some other tests): The test is called 
"opaque-*", but is a test about showing transparency of terms. Could be 
renamed.


RDF 1.2 Semantics
https://www.w3.org/TR/2026/CR-rdf12-semantics-20260407/
-------------------------------------------------------

* 05) §3, 2nd par: For the term "entailment regime", the paragraph 
refers to the SPARQL specification. I suggest to move the definition and 
explanations for an entailment regime, as currently located in the 
SPARQL specification, to the RDF Semantics and let the SPARQL 
specification refer to the RDF Semantics instead. I argue that the 
current approach was a good pragmatic solution when RDF 1.1 was 
published, because it came out after SPARQL 1.1, in which the notion of 
an entailment regime had already been introduced. But I believe that 
entailment regimes are better defined by the RDF Semantics, and now 
there is a chance to do so, as the same WG updates both RDF and SPARQL. 
In any case, this would simply be a (cross-specification) editorial change.

* 06) §3: I suggest to swap the last two paragraphs of the chapter. The 
current last paragraphs specifies a general and important property that 
must hold for all entailment regimes and semantic extensions in the RDF 
semantics specification (and beyond), whereas the now second to last 
paragraph is about a more special, and perhaps a bit niche property, 
which isn't even directly relevant for the entailment regimes defined in 
the document at hand. To me it would be a better and more natural read 
to come from the definition of semantic extensions and entailment 
regimes directly to the important requirement of monotonicity, before 
reading about optional syntactic restrictions.

* 07) §4, 1st par: "All the definitions in this document apply unchanged 
to generalized RDF...". Perhaps this sentence could also mention 
"symmetric RDF", which is introduced in the RDF 1.2 Concepts spec and is 
used in the RDF 1.2 Semantics as well (e.g. in appendix A).

* 08) §4.1: In the part where unions and merges of RDF graphs are 
discussed, I suggest to print the first occurrence of the term "union" 
in boldface, like for "merge" and "merged" in the same section, since 
the term "union" has a special meaning and relevance for RDF graphs 
(beyond its general mathematical meaning).

* 09) §5, table "Semantic Conditions for Ground Graphs": some rows 
contains a "," before to "then", others don't.

* 10) §8, typo, below list of "RDF axioms": "RDF intrepretations impose 
no particular normative semantics..."; should be "interpretations".

* 11) §8.1.1, Patterns: You could mention at the beginning of the 
section that the formulation of entailment patterns makes use of the 
"substitution mapping" defined in §4, so readers will easier understand 
what the notation in the tables means, e.g. for rdfD1.

* 12) §9: The tables for "axiomatic triples" and "some rdfs-valid 
triples": I suggest to add to the list of axiomatic triples: 
"rdfs:Proposition rdfs:subClassOf rdfs:Resource"; and to the list of 
rdfs-valid triples: "rdfs:Proposition rdf:type rdfs:Class". This is only 
meant for homogeneity of the presentation and to give the new class 
rdfs:Proposition a bit more spotlight, it doesn't change the semantics, 
since both statements can be derived from the other axiomatic triples 
("rdf:reifies rdfs:range rdfs:Proposition" and "rdfs:range rdfs:range 
rdfs:Class") and the semantic conditions (specifically "If x in IC then 
<x, I(rdfs:Resource)> in IEXT(I(rdfs:subClassOf))").

* 13) §10, "Definition of RDF dataset merge": For the first step about 
the treatment of blank nodes, I suggest to mention the term "standardize 
apart", which has been introduced and used earlier in the document.


Best regards
Michael

Received on Tuesday, 26 May 2026 21:00:35 UTC