Object-Oriented Languages Too Restrictive
Frames and description logics are popular ontology definition languages
They support definitional axioms of the form:
- (=> (R ?x) (and … (P ?x) …)) {subclass}
- (=> (R ?x) (and … (=> (S ?x ?y) (P ?y)) …) {value type}
- (=> (R ?x) (and … (exists ?y?(S ?x ?y)) …) {slot cardinality}
…
They do not support –
- N-ary relations and functions
- Standard properties of relations and functions
E.g., transitive, symmetric
- Partial sufficient conditions
E.g., (=> (> ?x 0) (R ?x))
…