W3C home > Mailing lists > Public > public-swd-wg@w3.org > July 2007

Re: [RDFa] ISSUE-8: RDF containers in RDFa

From: Dan Connolly <connolly@w3.org>
Date: Thu, 12 Jul 2007 14:21:57 -0500
To: Ben Adida <ben@adida.net>
Cc: mark.birbeck@x-port.net, RDFa <public-rdf-in-xhtml-tf@w3.org>, SWD WG <public-swd-wg@w3.org>
Message-Id: <1184268117.4187.256.camel@pav>

On Thu, 2007-07-12 at 12:02 -0700, Ben Adida wrote:
[...]
> Two questions, then:

> - how does one declare that the range of an RDF property is a list?

That one is easier, so I'll take it first:

:brothers rdfs:range rdf:List.

(there are ways of saying "list of person", but they're
a little obscure and not terribly relevant to this discussion.)

> - where are lists used in RDF?

Good question. I don't know if they're sufficiently commonly
used to merit special syntax in RDFa. (you can always
spell them out with rdf:first/rdf:rest/rdf:nil).

The main use I can think of is in OWL:

<#Man> owl:intersectionOf ( <#Person> <#Male> <#Adult> ).

This is in contrast with

<#Man> owlx:intersectionOf <#Person>, <#Male>, <#Adult>.
which is short for:
<#Man> owlx:intersectionOf <#Person>.
<#Man> owlx:intersectionOf <#Male>.
<#Man> owlx:intersectionOf <#Adult>.

I hope it's clear why that owlx construct won't work.
Hmm... I thought this was written up in
http://esw.w3.org/topic/ClosedWorldAssumptions or somewhere
near there, but perhaps not, so consider:

<#Dan> :brother <#Bob>, <#Tim>.
<#Bob> owl:differentFrom <#Joe>.
<#Tim> owl:differentFrom <#Joe>.

We still don't know whether { <#Dan> :brother <#Joe> } or not.
If we want the "and that's all!" property, we need to use lists:

<#Dan> :brothers (<#Bob> <#Tim>).
<#Bob> owl:differentFrom <#Joe>.
<#Tim> owl:differentFrom <#Joe>.

Assuming :brothers is functional, we know know that Joe
is not among Dan's brothers.

-- 
Dan Connolly, W3C http://www.w3.org/People/Connolly/
Received on Thursday, 12 July 2007 19:22:09 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Tuesday, 8 January 2008 14:17:29 GMT