- From: Andy Seaborne <andy@apache.org>
- Date: Wed, 3 Apr 2024 22:13:12 +0100
- To: Kurt Cagle <kurt.cagle@gmail.com>
- Cc: RDF-star Working Group <public-rdf-star-wg@w3.org>
"Agreed Syntax" comes from https://lists.w3.org/Archives/Public/public-rdf-star-wg/2024Jan/0095.html <<:s :p :o >> :foo :bar . is a syntax form in Turtle. In N-triples, which is like writing the RDF data model, it would be _:b rdf:reifies <<( :s :p :o )>> . _:b :foo :bar . Sometimes, you want to choose the name: <<:e | :s :p :o >> :foo :bar . is a syntax form for :e rdf:reifies <<( :s :p :o )>> . :e :foo :bar . <<:s :p :o >> is an occurrence (usage) of the abstract triple, and the "triple" is written as an RDF term <<( :s :p :o )>>. When we say "triple T in graph G", we really mean "an occurrence of triple T in graph G". <<()>> is only addition to the RDF data model. Summary of triple-reification proposals https://lists.w3.org/Archives/Public/public-rdf-star-wg/2024Jan/0164.html ==> Table: https://lists.w3.org/Archives/Public/public-rdf-star-wg/2024Jan/0164.html HTH Andy On 03/04/2024 21:01, Kurt Cagle wrote: > Thanks for the explanation. > *Kurt Cagle* > Editor in Chief > The Cagle Report > kurt.cagle@gmail.com <mailto:kurt.cagle@gmail.com> > 443-837-8725<http://voice.google.com/calls?a=nc,%2B14438378725> > > > On Wed, Apr 3, 2024 at 10:50 AM Gregg Kellogg <gregg@greggkellogg.net > <mailto:gregg@greggkellogg.net>> wrote: > >> On Apr 3, 2024, at 10:43 AM, Kurt Cagle <kurt.cagle@gmail.com >> <mailto:kurt.cagle@gmail.com>> wrote: >> >> I have a question for clarification. I've noticed a shift to the >> notation: >> >> <<(:s :p :o)>> >> >> from >> >> << :s :p :o >> >> >> Is there a distinction between the two, or simply a new syntax? > > In the CG report, the << :s :p :o >> syntax was used for a quoted > triple. Because of various issues with this, RDF 1.2 now uses <<( :s > :p :o )>> for a Triple Term, which is intended to mostly be used as > an implicit part of a “reifier”. A “reifier” has the same syntax is > the CG version << :s :p :o >> and can have an optional identifier, > << :id | :s :p :o >> which is effectively syntactic sugar for :id > rdf:reifies <<( :s :p :o )>> . > > The state of RDF Concepts is in the middle of this transition, we > haven’t even agreed on the name of a “reifier”, much less the > semantics. N-Triples does not include the reifier syntactic sugar > and only supports the use of Triple Terms directly. > >> *Kurt Cagle* >> Editor in Chief >> The Cagle Report >> kurt.cagle@gmail.com <mailto:kurt.cagle@gmail.com> >> 443-837-8725<http://voice.google.com/calls?a=nc,%2B14438378725> >> >> >> On Wed, Apr 3, 2024 at 10:01 AM Franconi Enrico >> <franconi@inf.unibz.it <mailto:franconi@inf.unibz.it>> wrote: >> >> On 3 Apr 2024, at 18:56, Gregory Williams >> <greg@evilfunhouse.com <mailto:greg@evilfunhouse.com>> wrote: >>> >>>> On Apr 3, 2024, at 8:19 AM, Franconi Enrico >>>> <franconi@inf.unibz.it <mailto:franconi@inf.unibz.it>> wrote: >>>> >>>> Ora wrote: "While the primary use-case for reifications may >>>> be 1-1, …”. >>>> In these specific 1-1 cases, I believe that instead of: >>>> >>>> :e rdf:reifies <<( :s :p :o )>> . >>>> :e :p1 :o1 . >>>> >>>> you should write directly: >>>> >>>> <<( :s :p :o )>> :p1 :o1 . >>>> >>>> since this implicitly implements a 1-1 relationship. >>> >>> For LPG interop use-cases, we want to be able to uniquely >>> identify occurrences of triples (edges). Your proposed >>> alternative wouldn’t capture the same semantics, as it would >>> be asserting properties of the triple term itself, not on a >>> specific occurrence of that triple. >> >> My proposed alternative would surely capture the one-to-one >> cases, as I specified. LPG use cases are many-to-one, and my >> example above would not work for them, as you correctly point out. >> —e. >> >
Received on Wednesday, 3 April 2024 21:13:20 UTC