Re: AtomList infinite or cyclic in all models

On Feb 16, 2007, at 12:01 AM, Ian MacLarty wrote:

[snip
> Now, back to the issue at hand.  For me, having rdf:nil a member of
> AtomList as it stands is problematic, since it means that in all  
> models
> rdf:nil must have values for the rdf:first and rdf:rest properties,
> because of the cardinality restrictions imposed by AtomList.
>
> If AtomList were renamed to "NonEmptyAtomList" and AtomList was  
> instead
> defined as the union of NonEmptyAtomList and the singleton set
> containing rdf:nil, then I believe the problem would go away.

First, let me reiterate that I don't think there's a problem worth  
probleming over since I am, in general, not a fan of these partial  
encodings of syntax into RDF and OWL. I think they are harmful and  
best ignored.

Second, list modeling is especially fraught, as I said.

However, another way to deal with your specific issue is to make #nil  
related by first and rest to itself. Indeed, nothing prevents cyclic  
models, as you said. In some Lisps, for example, the car and the cdr  
of '() is '() (or 'nil as the case may be). See:
	<http://www.lisp.org/HyperSpec/Body/acc_carcm_cdr_darcm_cddddr.html>

(search for Descriptrion: or nil).

So, one can think of the current SWRL OWL as not "incorrect" on this  
point, but merely underspecified.

Cheers,
Bijan.

Received on Friday, 16 February 2007 11:45:00 UTC