Re: voting against use of rdf:ReificationProperty

On Sep 5, 2024, at 7:48 AM, Thomas Lörtsch <tl@rat.io> wrote:
> 
>> And I don’t think this is restricted to RDF 1.1 reification – if you ignored that entirely and tried to use our new approach to model a reifier for statements (say for a data provenance use-case where each reifier explicitly reifies one and only one “statement” – leaving aside for now that it might entail more than that), then I think you might end up with something very similar to the above, just not in the rdf: namespace. And also perhaps having a second rdf:reifies statement:
>> 
>>   :r rdf:reifies <<( :s :p :o )>> .
>>   :t a ex:Statement ;
>>      rdf:reifies <<( :r rdf:reifies <<( :s :p :o )>> )>>
>>      ex:subject :r ;
>>      ex:predicate rdf:reifies ;
>>      ex:object <<( :s :p :o )>> .
> 
> :t describes the statement twice. You could just annotate the individual parts via ex:subject/predicate/object, e. g. :
> 
>    :r rdf:reifies <<( :s :p :o )>> .
>    :t a ex:Statement ;
>       rdf:reifies <<( :r rdf:reifies <<( :s :p :o )>> )>>
>       ex:subject [a ex:OccurrenceIdentifier] ;
>       ex:object  [a ex:TripleTerm] .
> 
> You don't have to describe them _again_, or do you? I admit that that's essentially the same question as on the top of this mail.

Agreed, you don’t *have* to describe them again. But I think you might *want* to, either for query performance reasons (which would admittedly be implementation-specific) or for the ergonomics of certain sorts of queries (e.g. find all reifiers which reify a statement with a specific object).

thanks,
.greg

Received on Sunday, 8 September 2024 18:08:13 UTC