From: Richard Fikes ([email protected])
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.) Richard > 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