RE: DTTF: List Ontology test case

From: "Jeremy Carroll" <jjc@hplb.hpl.hp.com>
Subject: RE: DTTF: List Ontology test case
Date: Mon, 29 Apr 2002 22:25:16 +0100


[...]

> > Well, I don't think that you get want you need out of this sort of thing.
> > In particular, making you are not capturing the fact that there
> > can only be
> > one daml:first and one daml:rest triple for any particular list head.  In
> > fact, you can't capture this at all in DAML+OIL or FOWL.
> >
> 
> Sorry I don't understand; you're going to have to spell it out for this
> bear of little brain.
> 
> 
> Suppose I replace daml by foo (a prefix for http://example.org/foo#)
> (I am not sure whether you are saying my approach doesn't work because of
> the self-reference - so I'll remove it).
> 
> I can capture the nil-terminated list of cons cells semantics in daml can't
> I? [Detail below]
> (I note I can't capture the syntactic restriction because of the lack of
> unique naming...)
> 
> I guess I can't capture that the list has finite length.
> 
> Does daml:List have to have that syntactic restiction or would a semantic
> restriction like this suffice?

The problem has to do with the status of knowledge bases that include
something like

	  _:l rdf:type daml:List .
	  _:l daml:first ex:first .
	  _:l daml:rest _:l1 .
	  _:l1 daml:first ex:seconda .
	  _:l1 daml:rest daml:nil .
	  _:l daml:rest _:l2 .
	  _:l2 daml:first ex:secondb .
	  _:l2 daml:rest daml:nil .

Is this legal DAML+OIL?  It certainly doesn't *look* like legal DAML+OIL.
Lists are supposed to be lists, not trees.

However, using DAML+OIL cardinality restrictions does not make the above
illegal, it just means that ex:seconda and ex:secondb have to have the same
denotation.

So, for DAML+OIL lists to behave as expected, there needs to be a
*syntactic* restriction on them, not a *semantic* one, which is all that
can be stated in DAML+OIL.

peter

Received on Tuesday, 30 April 2002 11:18:17 UTC