Re: OWL and RDF lists

I think it might help to first break the problem into parts, and then the
semantics question can be asked about each part separately.

A holistic approach to adding a collection syntax might consist of:

   1. Adding syntax for composite value types in the subject or object
   positions, which I've previously argued is missing from RDF.
   2. Adding syntax for extensionally defined collections—which can be
   thought of as simply special cases of composite value types—in the subject
   or object positions.
   3. Adding syntax for associating an IRI with a composite value type.

Composite value types are useful for things like:

   - Addresses
   - Coordinates
   - Polygons
   - Fractions

The components of the value are enough to uniquely identify the value, so
an IRI is optional, and whether two values are equal or not depends upon a
comparison operation that can be defined canonically for each type (for
example, if we're talking about Fractions then 1/2 == 2/4 should be true).

An example of (1) might be something like:

:JoeBiden :hasAddress {@type: :Address, streetNumber: 1600, street:
"Pennsylvania Avenue NW"}


Once you have that, collections are a special case, so an example of
(2) might be something like:

:MichaelJordan :jerseyNumbers @set[23, 45]


With a full composite value type, if there wasn't a special collection
syntax, it might look something like:

:MichaelJordan :jerseyNumbers {@type: :Set, 1: 23, 2: 45}


In my opinion, composite value types are closed atomic concepts, they only
make sense as a whole, therefore for collections described in the manner of
(2), no entailment should occur across the boundary of the collection and
there shouldn't be any semantics, and therefore the collection is also
fully defined and closed.

Examples of (3) might be something like:

:s: @set[:b, :c, :d]
:l: @list[:b, :c, :d]
:cs: @closedSet[:b, :c, :d]
:cl: @closedList[:b, :c, :d]


In my opinion, for collections described in this way no such boundary
exists, entailments can be made across the boundary of the collection to
the members, but they can depend upon other things like the class that the
collection itself belongs to etc. It's still definitely not the case that
all things said about a collection should automatically be said about each
member though.

Anthony

On Thu, Sep 1, 2022 at 11:52 PM Patrick J. Hayes <phayes@ihmc.org> wrote:

>
>
> > 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 Friday, 2 September 2022 08:52:13 UTC