Re: OWL and RDF lists

> On Aug 16, 2022, at 11:20 AM, David Booth <david@dbooth.org> wrote:
> 
> On 8/16/22 12:56, Holger Knublauch wrote:
>> A next generation of RDF(-star) can hopefully get rid of rdf:Lists through reification with an index property.
> 
> That sounds surprising, given the widespread dislike of reification.  Do you have a pointer to an explanation?
> 
> Incidentally, I personally think RDF should natively support lists, which David Wood and James Leigh proposed at the 2009 W3C RDF Next Steps workshop:
> https://nam02.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.w3.org%2F2009%2F12%2Frdf-ws%2Fpapers%2Fws14&amp;data=05%7C01%7Cphayes%40ihmc.us%7C0a77747beb0a409a1dd808da7fb4dc50%7C2b38115bebad4aba9ea3b3779d8f4f43%7C1%7C0%7C637962712068140669%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&amp;sdata=t61SxH5CMAP%2Bt7jSbWCayCVpP3tAZfnRrPid8bTaZUw%3D&amp;reserved=0

OK, that proposes to make lists part of the RDF /syntax/. So a triple with a list as subject is now a syntactically legal RDF expression:

[:a :b :c] :p :o .

and this is now syntactically legal RDF. 

That was easy, but now this ball lands in my court as semantics editor. If this is legal RDF syntax, it has to mean something, has to have a semantics. What does it mean? How is it to be interpreted? Or, if you don't like the S-word, what does this new RDF 'listriple' entail? What can be inferred from it, and what is it inferrable from? For example, is this valid:

from 
:a :p :o .
:b :p :o .
:c :p :o .
infer
[:a :b :c] :p :o .

? Or the reverse? How about

from 
[:a :b :c] :p :o .
infer 
[:a :c :b] :p :o .

No? Because if you have the first one in both directions you can prove that this one is valid as well. And what if you have a list in both subject and object positions? Etc. 

Note, it is not enough to answer "sometimes" or "it depends". That kind of woolliness destroys the utility of RDF as an information exchange notation. If the answer depends on something else, then that something else has to also be somehow encoded into the RDF syntax, in order to disambiguate the list notation.

The RDF WG could never agree on what the semantics of list syntax might be. And - a private observation of my own - the people who most wanted to put lists into the syntax were usually the same ones who insisted that they could not, or should not, be given a semantics. I suspect that this is because those folk are slipping into thinking of RDF as a kind of programming language rather than a descriptive logical language. 

Now, one can take a completely different view of lists (and other things like lists), which is that rather than having them as part of the syntax of RDF they should be some of the things that RDF describes, just as it is used to describe wine, consumer goods, animal species and everything else in the wonderful world of wikipedia. Then they don't have to be given an RDF semantcs because they are in the RDF semantics universe along with everything else. And that is what the WG decided to do. But given the relatively poverty of RDF as a descriptive language, it's impossible to put very tight constraints on what lists look like, so one gets the oddities described in https://www.w3.org/TR/rdf11-mt/#rdf-collections. 

OK, just a small growl from the dugout. Anyone who advocates having lists in RDF syntax, please don't speak until you have at least a sketch of what they are supposed to mean, that you are willing to commit to.

Pat Hayes

Received on Thursday, 1 September 2022 16:45:27 UTC