Re: Revisiting RDF-star semantics (was Re: Why is the RDF-star working group standardising RDF 1.2 and SPARQL 1.2?)

Dear Thomas,

Am 01.02.2023 um 17:27 schrieb Thomas Lörtsch <tl@rat.io<mailto:tl@rat.io>>:


On 1. Feb 2023, at 17:00, Doerthe Arndt <doerthe.arndt@tu-dresden.de<mailto:doerthe.arndt@tu-dresden.de>> wrote:

Dear Thomas,

Of course I remember the discussions and would like to keep this new edition efficient (but of course without ignoring you).

It would be more efficient if my concerns were taken a bit more serious. For example I hear about the benefits of referentially opaque triples, but I get no response to my repeated lament that the proposed semantics is all but ignored in practice. I hear mentions of TEP again and again, but I never get a response to my critique that nobody uses that mechanism. So, yes, I think I have good reason to feel ignored.

So, before we get back to the more contraversial discussion about referential opacity: What is your take on the blank nodes?

It is questionable that this piecemeal approach will lead to a compelling design overall, but I’ll do my best to answer your question.

See it as an exercise to convince me step by step ;)


I guess you would want them to be transparent?  Because here I had the idea that there was a consensus and I would like to start with the few agreements we had.

I think referentially transparent blank nodes in referentially opaque embedded triples are beside the point. They seem to require a lot of effort from the semantics, but they achieve very little, as the other statements containing said blank node are not captured. Thus the meaning of the blank node is not fully captured. Then why spend so much energy on syntactic fidelity of the embedded triple in the first place?

Just a short comment: If the semantics manages to keep the connection between different quoted blank nodes and  plain blank nodes then you will still be able to interpret the graph as you propose. You would still enforce everyone to keep the blank node connections as they were stated.  In my opinion, the scoping of the blank node and referential opacity are two separated issues which both need to be resolved.  Going back to your example:


    << _:x :buys :Car >>
        :source _:x .

Could mean (a) that according to some source x that same x bought a car, or (b) according to some source x  that some (potentially different) y bought a car.
But I do understand that for you the question about referential opacity is far more important and should be resolved first.


I think the design stems from the desire to shoehorn N3 formulas into embedded triples and this is one of the issues showing how that approach fails. See [0] for a more complete take on blank nodes, especially how graph literals capturing the full meaning of a blank node as Concise Bound Description could achieve a much higher degree of fidelity and, IMO, practical usefulness.

For the record: in N3 quoted blank nodes are local. So, that argument does not count here. And: in N3 you have ways to get from your quoted formulas to plain formulas even with referential opacity. But of course that is because N3 already comes with rules, that makes it easier to share the intended semantics. So that is somewhat different…

Kind regards,
Dörthe




[0] https://lists.w3.org/Archives/Public/public-rdf-star-wg/2023Feb/0002.html

Received on Wednesday, 1 February 2023 17:31:16 UTC