Re: RDF lists/arrays and n-ary relations [was Re: OWL and RDF lists]

On 30/09/2022 08:27, Patrick J. Hayes wrote:
    :
> On Sep 27, 2022, at 1:32 PM, David Booth <david@dbooth.org> wrote:
    :
>> That's okay!  There would be nothing wrong with writing that,
>> *provided* that you define the :fatherOf property to mean that
>> :PatHayes is the father of every person in that list.  It may then
>> be nonsensical to assert the following:
>>
>>  :PatHayes :fatherOf :SimonHayes .
>>
>> But even that could be perfectly fine to write if you instead
>> define the :fatherOf property to have *conditional* meaning: if
>> the object of the assertion is a person, then it asserts fathership
>> about that person.  But if the object of the assertion is an array,
>> then it asserts fathership about every person listed in that array.
> 
> That last is a cute idea. We could have a name for such properties, call them 
> distributive, giving inference patterns like
> 
> :P rdf:type :DistributiveProperty .
> :A :P (… :Bn …) .
> =>
> :A :P :Bn .
> 
> And there are of course many other possibilities, eg
> 
> :P rdf:type :InitialProperty .
> :A :P (:B0 …)
> =>
> :A :P :B0
> 
> ie just the first item.  And things like ordering, where
> 
> (:B0 … :Bn) rdf:orderedBy :P .
> =>
> :B0 :P :B1 .
> :B1 :P :B2 .
> …
> :Bn-1 :P :Bn .
> 
> eg (2 13 47 128 763 1246) rdf:orderedBy :lessThan .
> 

This seems to me like a way of re-introducing the original RDF @aboutEach 
functionality [1] without being dependent on XML syntax.  They were even called 
"Distributive Referents". Just sayin'.

#g
--


[1] https://www.w3.org/TR/1999/REC-rdf-syntax-19990222/ (sect 3.3)




-- 
Graham Klyne
mailto:gk@ninebynine.org
http://www.ninebynine.org
Skype/Twitter: @gklyne

Received on Friday, 30 September 2022 11:20:01 UTC