RE: What is it that's wrong with rdf:List

On Fri, 2010-06-18 at 10:38 +0200, Michael Schneider wrote:
> Paul Gearon wrote: 
> 
> >I haven't looked at your references yet, but both OWL Lite and OWL DL
> >have constructs in them that are expressed in RDF using a list. So
> >using a list does not force a model to become OWL Full.
> 
> OWL DL (and OWL Lite) does /not/ allow the use of RDF lists as /semantic
> entities/, that is, you cannot use lists in statements like
> 
>     ex:journey ex:visitedCities ( ex:Berlin ex:London ex:Paris ) .
> 
> OWL DL uses RDF lists as part of the RDF encoding of its syntactic
> constructs. For example, an intersection of classes is encoded by something
> like
> 
>     _:x rdf:type owl:Class .
>     _:x owl:intersectionOf ( :c1 :c2 ) .
> 
> So lists may only occur in these well-defined contexts. Every other use of
> RDF lists is disallowed in OWL DL.

This is such a bug in OWL DL.   :-(    I think I keep blotting it from
my memory, it's so painful.
  
As part of that, I don't remember any discussion of this in the OWL
Working Group.  Michael, do you have any idea how hard this would be to
fix?  Naively, it seems to me like the OWL Functional Syntax could be
extracted using the RDF list vocabulary when it's appropriate (eg as the
object of owl:intersectionOf), and the other RDF List triples could be
treated as normal data.

To rephrase: OWL could use/restrict owl:first/owl:rest/owl:nil and for
backward compatibility it could convert between these and the rdf:
versions for its own syntactic structures.

Maybe there's a concern about someone making a subproperty of rdf:first
or something, but some counter-intuitive behavior if someone does that
seems like a paltry concern compared to what we have now.

   -- Sandro

Received on Friday, 18 June 2010 17:22:24 UTC