Ontology
comment: Restaurants Ontology
version info: 1.0 - Translated to OWL: 01/2006
imports: calendar.owl
imports: price.owl
imports: address.owl
imports: contact-details.owl

Facility
type: Class
comment: Concept of Facility for any establishement. This class is an abstract class

RestaurantFacility
type: Class
comment: Concept of RestaurantFacility identifies facility offer by a restaurant. This class is an abstract class
subclass of: Restriction
  min cardinality: 0
  max cardinality: 1
  on property: description

TakeAwayFacility
type: Class
subclass of: RestaurantFacility
comment: Facility proposed by a restaurant to take away food. For each restaurant an instance of this facility identifies the discount percentage gievn by the restaurant to take away food and also indicates the possibility of taking away food by car.
subclass of: Restriction
  cardinality: 1
  on property: discountPercentage
  all values from: decimal
subclass of: Restriction
  cardinality: 1
  on property: driveIn

HomeDeliveryFacility
type: Class
subclass of: RestaurantFacility
comment: Facility proposed by a restaurant for home delivery. Each restaurant having this facility must described a particular instance of this catering such as last hour purchase information, delivery delay of the restaurant, possibilities of on-line order and on-line payment.
subclass of: Restriction
  min cardinality: 1
  on property: deliveryArea
subclass of: Restriction
  cardinality: 1
  on property: lastHourPurchase
subclass of: Restriction
  cardinality: 1
  on property: deliveryDelay
subclass of: Restriction
  cardinality: 1
  on property: onLineOrder
subclass of: Restriction
  cardinality: 1
  on property: onLinePayment

HomeDeliveryFacility
type: Class
subclass of: RestaurantFacility

HomeDeliveryFacility
type: Class
subclass of: RestaurantFacility

ChildrenAndBabyFacility
type: Class
comment: A restaurant can offer some categories of Children and baby facilities.
subclass of: Facility

ChildrenGameArea
type: Class
comment: A restaurant can provide games for children
subclass of: ChildrenAndBabyFacility

BabyChair
type: Class
comment: A restaurant can provide Baby chairs
subclass of: ChildrenAndBabyFacility

ChildrenMeal
type: Class
comment: A restaurant can provide Children meal
subclass of: ChildrenAndBabyFacility

BabyLaundry
type: Class
comment: A restaurant can provide a baby laundry
subclass of: ChildrenAndBabyFacility

BabySitter
type: Class
comment: A restaurant can provide a baby sitter
subclass of: ChildrenAndBabyFacility

SmokingFacility
type: Class
comment: A restaurant can offer some categories of SmokingFacilities such as smoking area, smoking room etc.
subclass of: Facility

SmokingArea
type: Class
comment: A restaurant can offer a smoking area facility
subclass of: SmokingFacility

SmokingRoom
type: Class
comment: A restaurant can offer a smoking room facility
subclass of: SmokingFacility

NoSmoking
type: Class
comment: no-smoking facility for smoking facility
subclass of: SmokingFacility

Smoking
type: Class
comment: no-smoking facility for smoking facility
subclass of: SmokingFacility

ParkingFacility
type: Class
subclass of: Facility

ParkingIndoor
type: Class
subclass of: ParkingFacility

ParkingOutdoor
type: Class
subclass of: ParkingFacility

PrivateParking
type: Class
subclass of: ParkingFacility

PublicParking
type: Class
subclass of: ParkingFacility

ValetParking
type: Class
subclass of: ParkingFacility

PetFacility
type: Class
comment: An establishment can offer some categories of PetFacility concept such as Pet-accepted, pet-refused, only-dog-accepted.
subclass of: Facility

OnlyDogAccepted
type: Class
comment: An establishment can offer an only dog accepted pet facility
subclass of: PetFacility

PetAccepted
type: Class
comment: An establishment can offer a pet accepted pet facility
subclass of: PetFacility

PetRefused
type: Class
comment: An establishment can refused pet as pet facility
subclass of: PetFacility

PetFood
type: Class
comment: An establishment can have a pet food facility
subclass of: PetFacility

PetRefused
type: Class
comment: An establishment can have a pet nursery
subclass of: PetFacility

DisabledFacility
type: Class
comment: >An establishement can offer some categories of Disabled facility such as wheel chair access, elevator
subclass of: Facility

WheelChairAccess
type: Class
comment: >An establishement can offer some generic instance of the Disabled concept such as wheel chair access, elevator
subclass of: DisabledFacility

Elevator
type: Class
comment: >An establishement can offer some generic instance of the Disabled concept such as wheel chair access, elevator
subclass of: DisabledFacility

Elevator
type: Class
comment: >An establishement can offer a wheelChairToilet facility
subclass of: DisabledFacility

Elevator
type: Class
comment: >An establishement can a brailleMenu facility
subclass of: DisabledFacility

PaymentFacility
type: Class
comment: >An establishement can offer particular payment facilities
subclass of: Facility

CBAccepted
type: Class
comment: >An establishement can offer CB accepted payement facility: see to introduce type of card or list of predefined instance of payment card
subclass of: PaymentFacility
subclass of: Restriction
  min cardinality: 1
  on property: cardType
  all values from: string

BusinessFacility
type: Class
comment: >A restaurant can offer particular business restaurant facilities such as business lunch, breakfast
subclass of: Facility

BusinessBreakfast
type: Class
comment: >A restaurant can propose business breakfast
subclass of: BusinessFacility

BusinessFacility
type: Class
comment: >A restaurant can propose business lunch
subclass of: BusinessFacility

BusinessDining
type: Class
comment: A restaurant can propose business dining
subclass of: BusinessFacility

AccessFacility
type: Class
comment: >An establishement can be closed to a metro station, taxi station or any other transport facilities
subclass of: Facility

MetroFacility
type: Class
subclass of: Restriction
  min cardinality: 0
  on property: stationName
subclass of: AccessFacility

description
type: DatatypeProperty
comment: generic property or adding a description to any objects
range: string

discountPercentage
type: DatatypeProperty
comment: property for a take awayfacility indicating the discount percentage offer when people take away their food
domain: TakeAwayFacility
range: integer

driveIn
type: DatatypeProperty
comment: property indicating if there is a driveIn for the take-away facility
domain: TakeAwayFacility
range: boolean

deliveryArea
type: DatatypeProperty
comment: property indicating the area for the delivery in the case of a home delivery facility
domain: HomeDeliveryFacility
range: string

lastHourPurchase
type: DatatypeProperty
comment: property indicating the last hour to purchase something from a restaurant having a HomeDeliveryFacility
domain: HomeDeliveryFacility
range: Time

deliveryDelay
type: DatatypeProperty
comment: property indicating the delay for the delivery in the case of a home delivery facility
domain: HomeDeliveryFacility
range: Duration

onLineOrder
type: DatatypeProperty
comment: boolean indicating if the HomeDeliveryFacility has the possibility of on-line order
domain: HomeDeliveryFacility
range: boolean

onLinePayment
type: DatatypeProperty
comment: property indicating if an on-line payment is possible for the HomeDeliveryFacility of a restaurant
domain: HomeDeliveryFacility
range: boolean

cardType
type: DatatypeProperty
comment: property indicating the type of payment card

stationName
type: DatatypeProperty
domain: MetroFacility
range: string

DatePeriod
type: Class
comment: A period is set of days determined by a startPeriodDate and a endPeriodDate
subclass of: Restriction
  cardinality: 1
  on property: startPeriodDate
subclass of: Restriction
  cardinality: 1
  on property: endPeriodDate

startPeriodDate
type: DatatypeProperty
comment: property indicating the start-date of the period
domain: DatePeriod
range: Date

endPeriodDate
type: DatatypeProperty
comment: property indicating the end date for a period
domain: DatePeriod
range: Date

OpeningPeriod
type: Class
comment: This concept summarizes the list of days which have the same opening hours
subclass of: Restriction
  min cardinality: 1
  on property: days
subclass of: Restriction
  min cardinality: 1
  max cardinality: 2
  on property: periods

days
type: ObjectProperty
comment: property indicating the list of opening days in the concept OpeningPeriod
domain: OpeningPeriod
range: DayOfWeek

periods
type: ObjectProperty
comment: property indicating a time-slot of periods
domain: OpeningPeriod
range: TimePeriod

TimePeriod
type: Class
comment: This class allows to describe a time slot.
subclass of: Restriction
  cardinality: 1
  on property: startHour
subclass of: Restriction
  cardinality: 1
  on property: stopHour

startHour
type: DatatypeProperty
comment: property indicating the start time for the time-slot of TimePeriod
domain: TimePeriod
range: Time

stopHour
type: DatatypeProperty
comment: property indicating stop time for the time-slot of TimePeriod
domain: TimePeriod
range: Time

Meal
type: Class
comment: This class is an abstract class. Each type of Meal is a subClass of this Concept.
subclass of: Restriction
  min cardinality: 0
  max cardinality: 1
  on property: name
subclass of: Restriction
  cardinality: 1
  on property: price
subclass of: Restriction
  cardinality: 1
  on property: numberOfPeople
subclass of: Restriction
  min cardinality: 0
  on property: starterChoice
subclass of: Restriction
  min cardinality: 1
  on property: mainChoice
subclass of: Restriction
  min cardinality: 0
  on property: desertOrCheeseChoice
subclass of: Restriction
  min cardinality: 0
  on property: beverageChoice

name
type: DatatypeProperty
comment: generic property for name
range: string

price
type: DatatypeProperty
comment: generic property indicating a price
range: Price

numberOfPeople
type: DatatypeProperty
comment: generic property indicating a number of people
range: NonNegativeInteger

starterChoice
type: ObjectProperty
comment: property indicating the choice of starters (Dish) for a Meal
range: Dish

mainChoice
type: ObjectProperty
comment: property indicating the choice of main plates for a Meal
range: Dish

desertOrCheeseChoice
type: ObjectProperty
comment: property indicating the choice of desert in a Meal
range: Dish

beverageChoice
type: ObjectProperty
comment: property indicating the beverages available in a particular Meal
range: Beverage

Beverage
type: Class
subclass of: Restriction
  min cardinality: 1
  on property: name
subclass of: Restriction
  cardinality: 1
  on property: price
subclass of: Restriction
  cardinality: 1
  on property: category

category
type: DatatypeProperty
comment: generic property for the size for beverages in ml
domain: Beverage
range: string

Beer
type: Class
subclass of: Beverage
comment: The concept of beer is decribed by the name of the beer, its price (could be the glass price or the bottle price), its category (white, brown...) and a description giving information about the origin of the beer.
subclass of: Restriction
  cardinality: 1
  on property: category
subclass of: Restriction
  min cardinality: 1
  on property: country

category
type: DatatypeProperty
comment: generic property for category
range: string

country
type: DatatypeProperty
comment: give the name of a country
range: string

Wine
type: Class
subclass of: Beverage
comment: A wine is defined by its name, its category, its year, the bottle price or/and the priceByGlass and aslo some ratings about this wine
subclass of: Restriction
  cardinality: 1
  on property: year
subclass of: Restriction
  cardinality: 1
  on property: priceByGlass
subclass of: Restriction
  cardinality: 1
  on property: region
subclass of: Restriction
  cardinality: 1
  on property: wineType
  all values from: string

year
type: DatatypeProperty
comment: generic property for year
range: Year

priceByGlass
type: DatatypeProperty
comment: property indicating the price of a glass of wine
domain: Wine
range: Price

region
type: ObjectProperty
comment: property indicating the region of a wine
domain: Wine
range: string

wineType
type: ObjectProperty
comment: property indicating the tyoe of wine: red, white...
domain: Wine
range: string

Dish
type: Class
comment: A dish is described by a category(starter, fish, meat, pizza, cheese, desert), a name, a description, a price and some particularities such as spicy dish.
subclass of: Restriction
  cardinality: 1
  on property: name
subclass of: Restriction
  cardinality: 1
  on property: description
subclass of: Restriction
  cardinality: 1
  on property: price
subclass of: Restriction
  min cardinality: 0
  max cardinality: 1
  on property: vegetarian
subclass of: Restriction
  min cardinality: 0
  max cardinality: 1
  on property: spicy
subclass of: Restriction
  min cardinality: 0
  max cardinality: 1
  on property: GMOFree
subclass of: Restriction
  min cardinality: 0
  max cardinality: 1
  on property: numberOfPeople

vegetarian
type: DatatypeProperty
comment: property indicating if a dish is vegetarian or not
range: boolean

spicy
type: DatatypeProperty
comment: property indicating if a dish is spicy or not
range: boolean

GMOFree
type: DatatypeProperty
comment: property indicating if a dish is spicy or not
range: boolean

Rating
type: Class
comment: must be part of another ontology TO BE REMOVED

Show
type: Class

Cuisine
type: Class
comment: The concept cuisine is an abstract concept. all individuals of this concept are first described by a description of the origin and particularities of this cuisine.
subclass of: Restriction
  on property: description
  all values from: string

chiefNames
type: DatatypeProperty
comment: property indicating the name of the chiefs for a gastronomic cuisine

Atmosphere
type: Class
comment: This concept has some categories used to identify the atmosphere of a particular restaurant.
subclass of: Restriction
  min cardinality: 0
  max cardinality: 1
  on property: description
  all values from: string

RestaurantGroupParty
type: Class
comment: This concept has some categories used to identify the specific occasions managed by the restaurant such as wedding party, new-year evening party etc.

ConventionParty
type: Class
comment: could be convention or meeting party
subclass of: RestaurantGroupParty

RestaurantSpecificFeatures
type: Class
comment: This concept has some categories used to identify the specific features proposed by the restaurant such as dancing, biological products etc.

RestaurantSeating
type: Class
comment: This concept identify the different possibilities of seating for a restaurant. it's an abstract concept

AirConditioning
type: Class
comment: could be convention or meeting party
subclass of: RestaurantSeating

Restaurant
type: Class
comment: the concept of restaurant is described by several sets of attributes: - name, contact and address socially identify the restaurant - closingPeriods, days-and-opening-hours identify opening periods of the restaurant - everage-meal-duration is giving an information for the customer if he/she has some time constraints - specific-occasions, atmospheres, entertainment, particularities are attributes to help the customer to choose a restuarant according to his/her motivations - dishes, meals, beverages,typeOfCuisine can help to choose a restuarant according to the cuisine or some particular dishes, or some particular meals and their prices - ratings represent the notation of the restuarant by professionals or people
subclass of: Restriction
  min cardinality: 0
  on property: atmospheres
subclass of: Restriction
  cardinality: 1
  on property: description
subclass of: Restriction
  min cardinality: 1
  on property: contact
subclass of: Restriction
  cardinality: 1
  on property: address
subclass of: Restriction
  cardinality: 1
  on property: name
subclass of: Restriction
  min cardinality: 0
  on property: closingPeriods
subclass of: Restriction
  min cardinality: 0
  max cardinality: 1
  on property: capacity
  all values from: NonNegativeInteger
subclass of: Restriction
  min cardinality: 1
  on property: openingPeriods
subclass of: Restriction
  min cardinality: 0
  max cardinality: 1
  on property: averageMealDuration
  all values from: Duration
subclass of: Restriction
  min cardinality: 0
  on property: specificEvents
  all values from: RestaurantGroupParty
subclass of: Restriction
  min cardinality: 0
  on property: entertainment
  all values from: Show
subclass of: Restriction
  min cardinality: 0
  on property: seating
  all values from: RestaurantSeating
subclass of: Restriction
  min cardinality: 0
  on property: facilities
  all values from: RestaurantFacility
subclass of: Restriction
  min cardinality: 0
  on property: specialFeatures
subclass of: Restriction
  min cardinality: 0
  on property: facilities
subclass of: Restriction
  min cardinality: 0
  on property: specialities
subclass of: Restriction
  min cardinality: 0
  on property: dishes
subclass of: Restriction
  min cardinality: 0
  on property: meals
subclass of: Restriction
  min cardinality: 0
  on property: list of beverages
subclass of: Restriction
  min cardinality: 0
  on property: ratings
  all values from: Rating
subclass of: Restriction
  min cardinality: 0
  on property: reviews
  all values from: Review
subclass of: Restriction
  min cardinality: 1
  on property: typeOfCuisine
  all values from: Cuisine

atmospheres
type: ObjectProperty
comment: property indicating one or several atmosphere of the restaurant
domain: Restaurant
range: Atmosphere

contact
type: ObjectProperty
comment: generic property indicating a contact
range: ContactDetails
domain: Restaurant

address
type: ObjectProperty
comment: generic property to indicate an address
range: Address
domain: Restaurant

closingPeriods
type: ObjectProperty
comment: property indicating the closing period of a restaurant
domain: Restaurant
range: DatePeriod

capacity
type: DatatypeProperty
comment: generic property indicating a capacity

openingPeriods
type: ObjectProperty
comment: property indicating the opening days and opening hours in a week
range: OpeningPeriod

averageMealDuration
type: DatatypeProperty
comment: Estimation of the time of a meal
domain: Restaurant

specificEvents
type: ObjectProperty
comment: property indicating the specific occasions handle by the restaurant
domain: Restaurant

entertainment
type: ObjectProperty
comment: property indicating the shows proposed by a restaurant
domain: Restaurant

seating
type: ObjectProperty
comment: property indicating the seating properties of the restaurant
domain: Restaurant
range: RestaurantSeating

facilities
type: ObjectProperty
comment: property indicating the caterings available in a restaurant
domain: Restaurant
range: RestaurantFacility

specialFeatures
type: ObjectProperty
comment: property indicating the specific features available in a restaurant
domain: Restaurant
range: RestaurantSpecificFeatures

facilities
type: ObjectProperty
comment: property indicating the facilities available in a restaurant
domain: Restaurant
range: Facility

specialities
type: ObjectProperty
comment: generic property indicating the specialities proposed by a restaurant
domain: Restaurant
range: string

dishes
type: ObjectProperty
comment: property indicating the list of dishes available in a restaurant
domain: Restaurant
range: Dish

meals
type: ObjectProperty
comment: property indicating a list of meals for a restaurant
domain: Restaurant
range: Meal

list of beverages
type: ObjectProperty
comment: property indicating the beverages available in a particular Meal
range: Beverage

ratings
type: ObjectProperty
comment: generic property indicating the ratings for something

reviews
type: ObjectProperty
domain: Restaurant
range: Review

Review
type: Class
subclass of: Restriction
  min cardinality: 0
  max cardinality: 1
  on property: description
  all values from: string

typeOfCuisine
type: ObjectProperty
comment: property for a restaurant to identify the type of cuisine
domain: Restaurant
range: Cuisine