Q: (owns ?p ?c) (type ?c Car) (has-color ?c Red) must-bind ?p don't-bind ?c A: (exists ?c (and (owns Joe ?c) (type ?c Car) (has-color ?c Red))) 5 Q: (has-father Bill ?f) must-bind ?f A: No answers 5 Q: (has-father Bill ?f) may-bind ?f (or don't-bind ?f) A: One answer (with no binding for ?f) 5 Q: (has-father ?p ?f) must-bind: ?p ?f A: One answer for each known father 5 Q: (has-father ?p ?f) must-bind ?p, may-bind ?f (or don't-bind ?f) A: One answer for each known person 5 If C1 is a Seafood Course and W1 is a drink of C1, what color is W1? P: (type C1 Seafood-Course) (drink C1 W1) Q: (has-color W1 ?x) must-bind ?x A: White 5 Suppose Fred is of type Person. What other types is Fred? P: (instanceOf Fred Person) Q: (instanceOf Fred ?x) must-bind ?x A: Person, HumanBeing, Animal, Thing, Resource (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| ?x) |http://www.daml.org/2001/03/daml oil-ex#|::|Person| (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| |http://www.daml.org/2001/03/daml oil-ex#|::|Person|) (|http://www.w3.org/2000/01/rdf-schema#|::domain |http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?x) |http://www.w3.org/2000/01/rdf-schema#|::|Resource| (or (not (|http://www.w3.org/2000/01/rdf-schema#|::domain |http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?x)) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?subj ?x)) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| ?x) |http://www.w3.org/2000/01/rdf-schema#|::|Resource| (|http://www.w3.org/2000/01/rdf-schema#|::domain |http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.w3.org/2000/01/rdf-schema#|::|Resource|) (or (not (|http://www.w3.org/2000/01/rdf-schema#|::domain ?prop ?x)) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?subj ?x)) (or (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| ?x) (not (|http://www.w3.org/2000/01/rdf-schema#|::domain |http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?x))) (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| |http://www.daml.org/2001/03/daml oil-ex#|::|Animal|) (or (not (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?inst ?c)) (not (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| ?c ?x)) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?inst ?x)) (or (not (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| ?c)) (not (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| ?c ?x)) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| ?x)) (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x) |http://www.daml.org/2001/03/daml oil-ex#|::|Animal| (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| |http://www.daml.org/2001/03/daml oil-ex#|::|Person|) (or (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| ?x) (not (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x))) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| ?x) |http://www.daml.org/2001/03/daml oil-ex#|::|Animal| (|http://www.w3.org/2000/01/rdf-schema#|::domain |http://www.daml.org/2001/03/daml oil#|::|disjointWith| |http://www.daml.org/2001/03/daml oil#|::|Class|) (or (not (|http://www.w3.org/2000/01/rdf-schema#|::domain ?prop ?c)) (not (|:has-slot| ?x ?prop)) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?x ?c)) (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| |http://www.daml.org/2001/03/daml oil#|::|Thing|) (or (not (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?inst ?c)) (not (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| ?c ?x)) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?inst ?x)) (or (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?x |http://www.daml.org/2001/03/daml oil#|::|Class|) (not (|:has-slot| ?x |http://www.daml.org/2001/03/daml oil#|::|disjointWith|))) (or (not (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| ?c)) (not (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| ?c ?x)) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| ?x)) (or (not (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?c |http://www.daml.org/2001/03/daml oil#|::|Class|)) (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| ?c |http://www.daml.org/2001/03/daml oil#|::|Thing|)) (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x) |http://www.daml.org/2001/03/daml oil#|::|Thing| (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| |http://www.daml.org/2001/03/daml oil-ex#|::|Person|) (or (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| ?x) (not (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x))) (or (not (|http://www.w3.org/2000/01/rdf-schema#|::domain |http://www.daml.org/2001/03/daml oil#|::|disjointWith| ?c)) (not (|:has-slot| ?x |http://www.daml.org/2001/03/daml oil#|::|disjointWith|)) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?x ?c)) (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| ?c |http://www.daml.org/2001/03/daml oil#|::|Thing|) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| ?x) |http://www.daml.org/2001/03/daml oil#|::|Thing| (or (not (|http://www.daml.org/2001/03/daml oil#|::|sameClassAs| ?x ?val)) (|http://www.daml.org/2001/03/daml oil#|::|equivalentTo| ?x ?val)) (or (|http://www.daml.org/2001/03/daml oil#|::|equivalentTo| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x) (not (|http://www.daml.org/2001/03/daml oil#|::|equivalentTo| ?x |http://www.daml.org/2001/03/daml oil-ex#|::|Person|))) (|http://www.w3.org/2000/01/rdf-schema#|::domain |http://www.daml.org/2001/03/daml oil#|::|disjointWith| |http://www.daml.org/2001/03/daml oil#|::|Class|) (or (|http://www.daml.org/2001/03/daml oil#|::|sameClassAs| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x) (not (|http://www.daml.org/2001/03/daml oil#|::|equivalentTo| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x))) (or (not (|http://www.w3.org/2000/01/rdf-schema#|::|subPropertyOf| ?psub ?prop)) (not (holds ?psub ?x ?val)) (holds ?prop ?x ?val)) (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x) (or (not (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Person| |http://www.daml.org/2001/03/daml oil#|::|Class|)) (not (|http://www.daml.org/2001/03/daml oil#|::|equivalentTo| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x)) (|http://www.daml.org/2001/03/daml oil#|::|sameClassAs| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x)) (|http://www.daml.org/2001/03/daml oil#|::|sameClassAs| ?x |http://www.daml.org/2001/03/daml oil-ex#|::|Person|) |http://www.daml.org/2001/03/daml oil-ex#|::|HumanBeing| (or (not (|http://www.daml.org/2001/03/daml oil#|::|inverseOf| |http://www.daml.org/2001/03/daml oil#|::|equivalentTo| ?p2)) (not (|http://www.daml.org/2001/03/daml oil#|::|equivalentTo| ?x ?val)) (holds ?p2 ?val ?x)) (or (not (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?inst ?c)) (not (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| ?c ?x)) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?inst ?x)) (|http://www.daml.org/2001/03/daml oil#|::|inverseOf| |http://www.daml.org/2001/03/daml oil#|::|equivalentTo| |http://www.daml.org/2001/03/daml oil#|::|equivalentTo|) (or (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?x |http://www.daml.org/2001/03/daml oil#|::|Class|) (not (|:has-slot| ?x |http://www.daml.org/2001/03/daml oil#|::|disjointWith|))) (or (not (|http://www.w3.org/2000/01/rdf-schema#|::|subPropertyOf| |http://www.daml.org/2001/03/daml oil#|::|sameClassAs| ?prop)) (not (|http://www.daml.org/2001/03/daml oil#|::|sameClassAs| ?fr ?x)) (holds ?prop ?fr ?x)) (or (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| ?x) (not (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x))) (or (|http://www.daml.org/2001/03/daml oil#|::|equivalentTo| ?x |http://www.daml.org/2001/03/daml oil-ex#|::|Person|) (not (|http://www.daml.org/2001/03/daml oil#|::|sameClassAs| ?x |http://www.daml.org/2001/03/daml oil-ex#|::|Person|))) (or (not (|http://www.w3.org/2000/01/rdf-schema#|::domain ?prop ?c)) (not (|:has-slot| ?x ?prop)) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?x ?c)) (|http://www.daml.org/2001/03/daml oil#|::|equivalentTo| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x) |http://www.daml.org/2001/03/daml oil-ex#|::|HumanBeing| (|http://www.daml.org/2001/03/daml oil#|::|sameClassAs| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x) (or (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x) (not (|http://www.daml.org/2001/03/daml oil#|::|sameClassAs| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x))) (or (not (|http://www.w3.org/2000/01/rdf-schema#|::|subPropertyOf| |http://www.daml.org/2001/03/daml oil#|::|sameClassAs| ?prop)) (not (|http://www.daml.org/2001/03/daml oil#|::|sameClassAs| ?x ?val)) (holds ?prop ?x ?val)) (|http://www.w3.org/2000/01/rdf-schema#|::|subPropertyOf| |http://www.daml.org/2001/03/daml oil#|::|sameClassAs| |http://www.daml.org/2001/03/daml oil#|::|equivalentTo|) (or (not (|http://www.daml.org/2001/03/daml oil#|::|equivalentTo| ?x ?val)) (|http://www.daml.org/2001/03/daml oil#|::|equivalentTo| ?val ?x)) (or (not (|http://www.daml.org/2001/03/daml oil#|::|equivalentTo| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x)) (|http://www.daml.org/2001/03/daml oil#|::|sameClassAs| |http://www.daml.org/2001/03/daml oil-ex#|::|Person| ?x)) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| |http://www.daml.org/2001/03/daml oil-ex#|::|Person|) (or (not (|http://www.daml.org/2001/03/daml oil#|::|inverseOf| ?p1 ?p2)) (not (holds ?p1 ?x ?val)) (holds ?p2 ?val ?x)) (or (not (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?c |http://www.daml.org/2001/03/daml oil#|::|Class|)) (not (|http://www.daml.org/2001/03/daml oil#|::|equivalentTo| ?c ?x)) (|http://www.daml.org/2001/03/daml oil#|::|sameClassAs| ?c ?x)) (|http://www.daml.org/2001/03/daml oil#|::|sameClassAs| |http://www.daml.org/2001/03/daml oil-ex#|::|HumanBeing| |http://www.daml.org/2001/03/daml oil-ex#|::|Person|) (or (not (|http://www.w3.org/2000/01/rdf-schema#|::|subPropertyOf| ?psub ?prop)) (not (holds ?psub ?fr ?x)) (holds ?prop ?fr ?x)) (or (not (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| ?c)) (not (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| ?c ?x)) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| ?x)) (or (not (|http://www.w3.org/2000/01/rdf-schema#|::domain |http://www.daml.org/2001/03/daml oil#|::|disjointWith| ?c)) (not (|:has-slot| ?x |http://www.daml.org/2001/03/daml oil#|::|disjointWith|)) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type ?x ?c)) (|http://www.daml.org/2001/03/daml oil#|::|equivalentTo| ?x |http://www.daml.org/2001/03/daml oil-ex#|::|Person|) |http://www.daml.org/2001/03/daml oil-ex#|::|HumanBeing| (|http://www.w3.org/2000/01/rdf-schema#|::|subPropertyOf| |http://www.daml.org/2001/03/daml oil#|::|sameClassAs| |http://www.w3.org/2000/01/rdf-schema#|::|subClassOf|) (|http://www.w3.org/1999/02/22-rdf-syntax-ns#|::type |http://www.daml.org/2001/03/daml oil-ex#|::|Fred| ?x) (or (not (|http://www.daml.org/2001/03/daml oil#|::|sameClassAs| ?fr ?x)) (|http://www.w3.org/2000/01/rdf-schema#|::|subClassOf| ?fr ?x))