- From: Doerthe Arndt <doerthe.arndt@tu-dresden.de>
- Date: Wed, 13 Mar 2024 10:37:01 +0000
- To: Franconi Enrico <franconi@inf.unibz.it>
- CC: "Peter F. Patel-Schneider" <pfpschneider@gmail.com>, "public-rdf-star-wg@w3.org" <public-rdf-star-wg@w3.org>
- Message-ID: <8C2A6F17-9A08-4A15-BA55-9D13ADBBF4C4@tu-dresden.de>
Dear Enrico, Even though, I would personally prefer to use RDF-star without the macro (which I am free to do, I know :) ), I think it looks good. I have two comments: 1. Strictly speaking, in your grammar each triple of the form identifier_i rdf:reifies tripleTerm needs to be *directly* followed by a triple (subject predicate identifier_i) or (identifier_i predicate object)) Is that on purpose? (I think that is a minor remark, I was just curious :) ) 2. If we have the syntactic macro and no semantic conditions added, then RDF-reasoning will produce graphs which do not follow the macro, namely you’d derive rdf:reifies a rdf:Predicate. Do you see that as a problem? Now, that I think about it, even simple entailment does: :id rdf:reifies <(:a :b :c)>. :id :p :o. simply entails :id rdf:reifies _:x. :id rdf:reifies <(:a :b :c)>. :id :p :o. What is your opinion on that? (I am not sure myself, the question is meant to be open) Kind regards, Dörthe Am 13.03.2024 um 08:20 schrieb Franconi Enrico <franconi@inf.unibz.it>: On 12 Mar 2024, at 23:09, Peter F. Patel-Schneider <pfpschneider@gmail.com> wrote: This is ambiguous as the nor can be given a wide scope. "An RDF graph which does not contain any triple term nor any rdf:reifies triple but for the ones coming from the expansion of the macro for triple reification is called reification well-formed." Better would be "An RDF graph where the only triple terms are objects of triples with predicate rdf:reifies." This is unambiguous, but more liberal as it allows objects of rdf:reifies triples to be anything. I don't think that the liberalization causes any problems. Nope, you would allow, e.g., isolated “edge” triple. If you want to define well-formedness by a syntactic restriction and not via the macro expansion, then my document gives the exact grammar at the end; there is no need of other definitions. graph ::= (triple | (identifier_i rdf:reifies tripleTerm (subject predicate identifier_i) | (identifier_i predicate object)))* triple ::= subject predicate object subject ::= iri | BlankNode predicate ::= iri object ::= iri | BlankNode | literal tripleTerm ::= triple identifier ::= iri | BlankNode iri ::= any_iri_but_rdf:reifies (Note: syntactic categories adorned with equal subscripts in the grammar above enforce a non-context-free equality condition on the respective tokens.) I don’t see any purpose to have a well-formedness which is not capturing exactly the macro expansion, which is the only way we give meaning to reification. —e.
Received on Wednesday, 13 March 2024 10:37:16 UTC