(! Creation of the hotels Ontology) (reset-knowledge-base) (default-expressiveness ALCFIHR+) (new-tbox STRING-TBOX string) (! current-tbox CADENAS-TBOX) (new-tbox NUMERIC-TBOX numeric) (! Creo una tbox para la ontologia) (new-tbox hotels ALCFIHR+) (current-tbox hotels) (! adding all concepts and roles) (! Defining roles) (define-primitive-role Building) (define-primitive-role Meals) (define-primitive-attribute-connector Facilities STRING-TBOX) (define-primitive-attribute-connector Location STRING-TBOX) (! Defining attributes) (define-primitive-attribute-connector Units NUMERIC-TBOX) (define-primitive-attribute-connector Stars NUMERIC-TBOX) (define-primitive-attribute-connector Price NUMERIC-TBOX) (define-primitive-attribute-connector Name STRING-TBOX) (! Defining concepts) (! define-primitive-concept Accommodation) (define-concept Accommodation *hotels-TOP*) ( define-concept Hotel (AND Accomodation (ALL Units (> 1)) (ALL Building Collective))) (define-concept FirstClassHotel (AND Hotel (ALL Stars (>= 4)))) (define-concept CongressHotel (AND Hotel (SOME Facilities (aset "Conference Rooms")))) (define-concept Rental (AND Accomodation (ALL Building Private))) (define-concept Bungalow (AND Rental (ALL Units (= 1)))) (define-concept Apartment (AND Rental (ALL Units (> 1)))) (define-concept BedAndBreakfast (AND Accomodation (ALL Building Private) (SOME Meals Breakfast))) (disjoint Collective Private) (! definimos atributos que permiten utilizar restricciones at least y atmost) (define-primitive-attribute-connector Building-count NUMERIC-TBOX) (define-primitive-attribute-connector Meals-count NUMERIC-TBOX) (define-primitive-attribute-connector Facilities-count NUMERIC-TBOX) (define-primitive-attribute-connector Location-count NUMERIC-TBOX) (define-primitive-attribute-connector Units-count NUMERIC-TBOX) (define-primitive-attribute-connector Stars-count NUMERIC-TBOX) (define-primitive-attribute-connector Price-count NUMERIC-TBOX) (define-primitive-attribute-connector Name-count NUMERIC-TBOX)