Re: Future-Proofing for Transition to Multi-Edge caused by Data Arrival

Totally agree. "Multi-edges" can be covered in this way.
—e.

On 26 Jan 2023, at 17:48, Timothée Haudebourg <timothee.haudebourg@spruceid.com> wrote:


I'm sorry in advance If I missed the point of this example, but I feel like we are having the same conversation again and again here. There are countless of example where named triples, or multisets of triples, could facilitate a little bit the design of these kind of models. But it is never impossible to do with current RDF. Again with this example, we can use Greg's solution with multiple :index values. If you really want to have a single value per :index, it is my understanding that you can use sub-properties a such (I never used SPARQL so I hope its correct):

:Trump :servedAs45 :President .
:servedAs45 rdfs:subPropertyOf :servedAs .
:servedAs45 :index 45 .

:Trump :servedAs47 :President .
:servedAs47 rdfs:subPropertyOf :servedAs .
:servedAs47 :index 47 .

SELECT ?x {
  ?x ?servedAs :President .
  ?servedAs rdf:subPropertyOf :servedAs .
  ?servedAs :index ?idx
} ORDER BY ?idx

Yes it is always a little bit more verbose than what we would get with named triples, but then it is never impossible to do without. I thing giving more and more variants of the same problem won't get more convincing than that, unless we can show that the impact on the semantics and implementations of RDF and SPARQL will not be so dramatic it is still worth going in this direction. For the current understanding I have of RDF and SPARQL, it seems to me that the changes would be huge, for little benefits.

By the way, using sub properties like that, you can still have

:Bob :knows << :Bush :servedAs :President >>

Where here Bob knows that Bush served as president but don't know how many times and the details that are specified in the graph. I don't know, it's not really relevant but I find it nice.

--
Timothée

Le 26/01/2023 à 16:55, Gregory Williams a écrit :
On Jan 26, 2023, at 6:06 AM, Souripriya Das <souripriya.das@oracle.com<mailto:souripriya.das@oracle.com>> wrote:

Initial Data (no shortcuts, to avoid hiding important details):
------------------------------------------------------------------------------
    :Bush :servedAs :President .
    << :Bush :servedAs :President >> :index 43 .
    :Obama :servedAs :President .
    << :Obama :servedAs :President >> :index 44 .
    :Trump :servedAs :President .
    << :Trump :servedAs :President >> :index 45 .
    :Biden :servedAs :President .
    << :Biden :servedAs :President >> :index 46 .

…

Let's say that in 2024 Trump wins again. How will the data get represented in RDF-star? Since RDF-star, like RDF, has "no duplicate triples" constraint, the data creator has to extend the schema to introduce a new structure that involves a new property, :occurrenceOf. Since the above query was written without expecting the new structure, it has to be modified as well.


Souri –

I’m not sure I understand the issue here. Won’t the original query work just fine if the input data contains an extra index value?

<< :Trump :servedAs :President >> :index 45, 47 .

=>

:Bush
:Obama
:Trump
:Biden
:Trump

Thanks,
Greg

Received on Thursday, 26 January 2023 16:55:30 UTC