Re: on behalf of sandro

From: Richard Fikes (
Date: 10/24/01

> > >The knowledge base contains the statements: "Pat's car is blue, and
> > >there is something colored red."  Somewhat more formally:
> > >
> > >   RDF(PatsCar, color, blue).
> > >   exists x (RDF(x, color, red)).
> >
> > Sorry to be dense, but how does one state "there is something colored
> > red" in DAML+OIL?
> >
> > Richard

Your reply suggests that there is no direct of way of saying "exists x
RDF(x color red)" in a DAML+OIL KB, which is what I suspected.  Since
the issue came up in a discussion of what statements in a DAML+OIL KB
would match a query of the form "RDF(?x, color, ?y)", it is central to
the discussion.

Am I correct in concluding that there is no way of including an
existential variable as the subject or object in an RDF statement in a
DAML+OIL KB?  (I suspect there is a way, but I don't see it.)


> there are a few ways, arguably, none perfect.
> the most direct is mincardinalityQ
> state that something has mincardinality 1 (or more)
> and the Q in this case is RED-THING
> (the bad thing about this is it requires a property to be defined for the
> mincardinalityq statement
> say MySpecialProperty  so that i can say
> <daml:Restriction daml:maxCardinalityQ="1">
>       <daml:onProperty rdf:resource="#MySpecialProperty"/>
>       <daml:hasClassQ rdf:resource="#RedThing"/>
>     </daml:Restriction>
> (and this of course assumes red things to be defined which could be:
> <daml:Class rdf:ID="RedThing">
>   <daml:sameClassAs>
>     <daml:Restriction>
>       <daml:onProperty rdf:resource="#hasColor"/>
>       <daml:hasValue rdf:resource="#red"/>
>     </daml:Restriction>
>   </daml:sameClassAs>
> </daml:Class>
> one could also make individuals  (just for the purposes of implying a
> red-thing)
> and say foo has min cardinality 1 on a property MySpecialProperty and
> then have the value restriction on MySpecialProperty be RedThing and the
> filler of MySpecialProperty
> on foo, be bar.
> this implies that bar is red and thus, there exists a red thing.   One
> would not need to explicitly create bar for the inference to be implied.

This archive was generated by hypermail 2.1.4 : 04/02/02 EST