- From: Kurt Cagle <kurt.cagle@gmail.com>
- Date: Thu, 28 Mar 2024 09:12:34 -0700
- To: Thomas Lörtsch <tl@rat.io>
- Cc: Souripriya Das <SOURIPRIYA.DAS@oracle.com>, RDF-star WG <public-rdf-star-wg@w3.org>
- Message-ID: <CALm0LSHazHz0NginrJfDCGPT77YL6wMSnPhMR+6NAk8rHJ52=w@mail.gmail.com>
> How do the following RDF datasets appear to a reader? > DS-1 (requires many-to-many)=> > :e rdf:reifies <<( :s rdf:type :Married )>>, <<( :s rdf:type :Single )>> . > :e :accTo :marriageRegistrar . > DS-2=> > :e1 rdf:reifies <<( :s rdf:type :Married )>> . > :e2 rdf:reifies <<( :s rdf:type :Single )>> . > :e1 :accTo :marriageRegistrar . > :e2 :accTo :marriageRegistrar . > > Would the following be a reasonable assessment, keeping the (naive) reader in mind? > - DS-1 is more concise, but could be confusing. > - DS-2 is simpler and less confusing. This implies that DS-1 is a hypergraph. I'm for that personally. This has been an objection I've had with RDF for some time, but it potentially necessitates a bigger change in RDF. *Kurt Cagle* Editor in Chief The Cagle Report kurt.cagle@gmail.com 443-837-8725 <http://voice.google.com/calls?a=nc,%2B14438378725> On Thu, Mar 28, 2024 at 7:02 AM Thomas Lörtsch <tl@rat.io> wrote: > > > > On 28. Mar 2024, at 13:00, Souripriya Das <SOURIPRIYA.DAS@oracle.com> > wrote: > > > > Wondering if staying with many-to-one for rdf:reifies will keep things > simpler for the reader. Consider the following example. > > > > Assuming that the following should hold in a domain: > > :Single owl:disjointWith :Married . > > > > How do the following RDF datasets appear to a reader? > > DS-1 (requires many-to-many)=> > > :e rdf:reifies <<( :s rdf:type :Married )>>, <<( :s rdf:type :Single > )>> . > > :e :accTo :marriageRegistrar . > > DS-2=> > > :e1 rdf:reifies <<( :s rdf:type :Married )>> . > > :e2 rdf:reifies <<( :s rdf:type :Single )>> . > > :e1 :accTo :marriageRegistrar . > > :e2 :accTo :marriageRegistrar . > > > > Would the following be a reasonable assessment, keeping the (naive) > reader in mind? > > - DS-1 is more concise, but could be confusing. > > - DS-2 is simpler and less confusing. > > To me DS-1 feels immediatly familiar whereas DS-2 feels verbose. To me the > verbosity of DS-2 is confusing, not the simple list of triple terms in DS-1. > > > Some thoughts: > > Grouping reifications by their attribute can probably be considered a very > basic use case, a need that will inevitably arise. > > Up to now grouping is realized with named graphs, but there is strong > opposition towards basing the annotation mechanism on named graphs. Ergo we > should make sure that what we design doesn’t work only on single triple > terms but also on sets of them. > > That should be done in a way that users don’t need to know upfront if an > annotation targets a reification refering to only a single or triple term > or a multiple thereof. (That should be easy with SPARQL-star, but is > impossible when single triple annotations are encoded as triple term > reifications but multiples thereof are encoded as named graphs). > > The annotation syntax, e.g. '<< :e1 | :s :p :o >>', should be extended to > allow multiple triples as well, e.g. '<< :e2 | :s :p :o. :x :y :z . >>'. > Otherwise annotating multiple triple terms always has to resort to the more > verbose N-triples syntax with explicit rdf:reifies statements. > > Such a solution would make sematically sound grouping available to RDF > proper. The guidance w.r.t. named graphs would be to only use them for > application specific purposes, outside the realm of data sharing and > integration. This would mean that we bite the bullet that named graphs can > not be saved for anything else than out-of-band activities. Note that this > is not my position, but it is a position that would allow us to move > forward. > > Keeping named graphs as a (semantically unsound) grouping device and > designing triple term annotations as a one-trick pony to enable LPG-style > modelling in RDF is not a very elegant and coherent design, and that lack > of elegance and coherence will lead to a lot of questions, frustrations, > need for explanations - exactly the thing that Ora fears. > > Note also that another need will inevitably appear as well: the desire to > state AND annotate a set of statements in one go, leading to the need for > another syntactic device. > > > Please note as well that the Nested Named Graphs proposal [0] has all > those issues and needs covered. However, it stumbled into a roadblock that > so far we weren’t able to overcome: SPARQL is not really made for querying > quads and annotations too easily can get lost in the course of a query. > That requires a lot more effort than we can currently master. > > > Best, > Thomas > > > [0] https://github.com/rat10/nng > > > > Thanks, > > Souri. > > > >
Received on Thursday, 28 March 2024 16:13:06 UTC