// This proto relies on set vs. unset primitive-typed fields. syntax = "proto3"; package hotels.knowledge_base.external; option java_package = "com.google.travel.hotels.content.knowledge.base.schema.external"; option java_multiple_files = true; // LodgingList is a wrapper message to store multiple Lodging instances. message LodgingList { repeated Lodging lodgings = 1; } // Lodging represents factual information for a single property that provides // accomodations. message Lodging { // REQUIRED. Metadata metadata = 1; // REQUIRED. Unique identifier for the property. // Either the Place ID (https://developers.google.com/places/place-id) // which uniquely identifies a place in the Google Places database and on // Google Maps, or, the listing Hotel ID from your hotel list feed. string place_id = 6; Property property = 12; Services services = 13; Policies policies = 14; FoodAndDrink food_and_drink = 15; Pools pools = 16; Wellness wellness = 17; PublicBath public_bath = 29; Activities activities = 18; Transportation transportation = 19; Families families = 20; Connectivity connectivity = 21; Business business = 22; Accessibility accessibility = 23; Pets pets = 24; Parking parking = 25; Housekeeping housekeeping = 26; HealthAndSafety health_and_safety = 27; Sustainability sustainability = 28; // Living area features that are shared amongst guests, // such as shared bathrooms, kitchen areas, grills, etc. LivingArea common_living_area = 100; // All units on the property have at least these attributes. // E.g., a living area size means all units are at least that big. GuestUnitType all_units = 101; // Some units have as much as these attributes. // E.g., a living area size means it is possible to book a unit that big. GuestUnitType some_units = 102; // Individual GuestUnitTypes that are available in this Lodging. repeated GuestUnitType guest_units = 104; } ///////////////////////////// // Property level messages // ///////////////////////////// message Property { // Built year. oneof built_year_oneof { int32 built_year = 2; Exception built_year_exception = 3; } // Last renovated year. oneof last_renovated_year_oneof { int32 last_renovated_year = 4; Exception last_renovated_year_exception = 5; } // Number of rooms. oneof number_of_rooms_oneof { int32 number_of_rooms = 6; Exception number_of_rooms_exception = 7; } // Floors. oneof floors_oneof { int32 floors = 8; Exception floors_exception = 9; } } message Services { // Class rating. oneof class_rating_oneof { // Class rating from 1.0 to 5.0. float class_rating = 2; Exception class_rating_exception = 3; } /////////////////////// // Reception and lobby. // Front desk. oneof front_desk_oneof { bool front_desk = 4; Exception front_desk_exception = 5; } // Front desk 24hrs. oneof front_desk_24hrs_oneof { bool front_desk_24hrs = 6; Exception front_desk_24hrs_exception = 7; } // Concierge. oneof concierge_oneof { bool concierge = 8; Exception concierge_exception = 9; } // Elevator. oneof elevator_oneof { bool elevator = 43; Exception elevator_exception = 44; } //////////////// // Conveniences. // Baggage storage. oneof baggage_storage_oneof { bool baggage_storage = 16; Exception baggage_storage_exception = 17; } // Laundry full service. oneof laundry_full_service_oneof { bool laundry_full_service = 18; Exception laundry_full_service_exception = 19; } // Laundry self service. oneof laundry_self_service_oneof { bool laundry_self_service = 20; Exception laundry_self_service_exception = 21; } // Social hour. oneof social_hour_oneof { bool social_hour = 22; Exception social_hour_exception = 23; } // Wake up calls. oneof wake_up_calls_oneof { bool wake_up_calls = 24; Exception wake_up_calls_exception = 25; } // Convenience store. oneof convenience_store_oneof { bool convenience_store = 26; Exception convenience_store_exception = 27; } // Gift shop. oneof gift_shop_oneof { bool gift_shop = 28; Exception gift_shop_exception = 29; } // Currency exchange. oneof currency_exchange_oneof { bool currency_exchange = 30; Exception currency_exchange_exception = 31; } LanguagesSpoken languages_spoken = 42; } message LanguagesSpoken { // Arabic spoken. oneof arabic_spoken_oneof { bool arabic_spoken = 1; Exception arabic_spoken_exception = 2; } // Cantonese spoken. oneof cantonese_spoken_oneof { bool cantonese_spoken = 3; Exception cantonese_spoken_exception = 4; } // Dutch spoken. oneof dutch_spoken_oneof { bool dutch_spoken = 5; Exception dutch_spoken_exception = 6; } // English spoken. oneof english_spoken_oneof { bool english_spoken = 7; Exception english_spoken_exception = 8; } // Filipino spoken. oneof filipino_spoken_oneof { bool filipino_spoken = 9; Exception filipino_spoken_exception = 10; } // French spoken. oneof french_spoken_oneof { bool french_spoken = 11; Exception french_spoken_exception = 12; } // German spoken. oneof german_spoken_oneof { bool german_spoken = 13; Exception german_spoken_exception = 14; } // Hindi spoken. oneof hindi_spoken_oneof { bool hindi_spoken = 15; Exception hindi_spoken_exception = 16; } // Indonesian spoken. oneof indonesian_spoken_oneof { bool indonesian_spoken = 17; Exception indonesian_spoken_exception = 18; } // Italian spoken. oneof italian_spoken_oneof { bool italian_spoken = 31; Exception italian_spoken_exception = 32; } // Japanese spoken. oneof japanese_spoken_oneof { bool japanese_spoken = 35; Exception japanese_spoken_exception = 36; } // Korean spoken. oneof korean_spoken_oneof { bool korean_spoken = 19; Exception korean_spoken_exception = 20; } // Mandarin spoken. oneof mandarin_spoken_oneof { bool mandarin_spoken = 21; Exception mandarin_spoken_exception = 22; } // Portuguese spoken. oneof portuguese_spoken_oneof { bool portuguese_spoken = 23; Exception portuguese_spoken_exception = 24; } // Russian spoken. oneof russian_spoken_oneof { bool russian_spoken = 33; Exception russian_spoken_exception = 34; } // Spanish spoken. oneof spanish_spoken_oneof { bool spanish_spoken = 25; Exception spanish_spoken_exception = 26; } // Vietnamese spoken. oneof vietnamese_spoken_oneof { bool vietnamese_spoken = 27; Exception vietnamese_spoken_exception = 28; } } message Housekeeping { // Housekeeping available. oneof housekeeping_available_oneof { bool housekeeping_available = 2; Exception housekeeping_available_exception = 3; } // Housekeeping daily. oneof housekeeping_daily_oneof { bool housekeeping_daily = 4; Exception housekeeping_daily_exception = 5; } // Turndown service. oneof turndown_service_oneof { bool turndown_service = 6; Exception turndown_service_exception = 7; } } message Parking { // Parking available. oneof parking_available_oneof { bool parking_available = 2; Exception parking_available_exception = 3; } // Parking for free. oneof parking_for_free_oneof { bool parking_for_free = 4; Exception parking_for_free_exception = 5; } // Self parking available. oneof self_parking_available_oneof { bool self_parking_available = 6; Exception self_parking_available_exception = 7; } // Self parking for free. oneof self_parking_for_free_oneof { bool self_parking_for_free = 8; Exception self_parking_for_free_exception = 9; } // Valet parking available. oneof valet_parking_available_oneof { bool valet_parking_available = 10; Exception valet_parking_available_exception = 11; } // Valet parking for free. oneof valet_parking_for_free_oneof { bool valet_parking_for_free = 12; Exception valet_parking_for_free_exception = 13; } // Electric car charging stations. oneof electric_car_charging_stations_oneof { bool electric_car_charging_stations = 14; Exception electric_car_charging_stations_exception = 15; } } message Policies { // Check in time. oneof check_in_time_oneof { // 24hr clock, e.g. "1500" or "1600", in hotel local time. // This is the ISO 8601 dense time format with minute precision. // For normalization, extended format (with colons) is not supported. string check_in_time = 4; Exception check_in_time_exception = 5; } // Check out time. oneof check_out_time_oneof { // 24hr clock, e.g. "1130" or "1200", in hotel local time. // This is the ISO 8601 dense time format with minute precision. // For normalization, extended format (with colons) is not supported. string check_out_time = 6; Exception check_out_time_exception = 7; } // Kids stay for free. oneof kids_stay_for_free_oneof { bool kids_stay_for_free = 24; Exception kids_stay_for_free_exception = 25; } // Max number of kids stay for free. oneof max_number_of_kids_stay_for_free_oneof { int32 max_number_of_kids_stay_for_free = 26; Exception max_number_of_kids_stay_for_free_exception = 27; } // Max child age. oneof max_child_age_oneof { int32 max_child_age = 28; Exception max_child_age_exception = 29; } // Smoke free property. oneof smoke_free_property_oneof { bool smoke_free_property = 30; Exception smoke_free_property_exception = 31; } // All inclusive rates available. oneof all_inclusive_available_oneof { bool all_inclusive_available = 32; Exception all_inclusive_available_exception = 33; } // All inclusive rates only. oneof all_inclusive_only_oneof { bool all_inclusive_only = 34; Exception all_inclusive_only_exception = 35; } PaymentOptions payment_options = 36; } message PaymentOptions { // Pay cash. oneof cash_oneof { bool cash = 2; Exception cash_exception = 3; } // Pay by cheque. oneof cheque_oneof { bool cheque = 4; Exception cheque_exception = 5; } // Pay credit card. oneof credit_card_oneof { bool credit_card = 6; Exception credit_card_exception = 7; } // Pay debit card. oneof debit_card_oneof { bool debit_card = 8; Exception debit_card_exception = 9; } // Pay mobile nfc. oneof mobile_nfc_oneof { bool mobile_nfc = 10; Exception mobile_nfc_exception = 11; } } message FoodAndDrink { // Room service. oneof room_service_oneof { bool room_service = 2; Exception room_service_exception = 3; } // Room service 24hrs. oneof room_service_24hrs_oneof { bool room_service_24hrs = 4; Exception room_service_24hrs_exception = 5; } // Existence of restaurant. oneof restaurant_oneof { bool restaurant = 24; Exception restaurant_exception = 25; } // Number of restaurants. oneof number_of_restaurants_oneof { int32 number_of_restaurants = 6; Exception number_of_restaurants_exception = 7; } // Table service. oneof table_service_oneof { bool table_service = 8; Exception table_service_exception = 9; } // Buffet. oneof buffet_oneof { bool buffet = 10; Exception buffet_exception = 11; } // Buffet dinner. oneof buffet_dinner_oneof { bool buffet_dinner = 12; Exception buffet_dinner_exception = 13; } // Buffet breakfast. oneof buffet_breakfast_oneof { bool buffet_breakfast = 14; Exception buffet_breakfast_exception = 15; } // Breakfast available. oneof breakfast_available_oneof { bool breakfast_available = 22; Exception breakfast_available_exception = 23; } // Breakfast for free. oneof breakfast_for_free_oneof { bool breakfast_for_free = 16; Exception breakfast_for_free_exception = 17; } // Bar. oneof bar_oneof { bool bar = 18; Exception bar_exception = 19; } // Vending machine. oneof vending_machine_oneof { bool vending_machine = 20; Exception vending_machine_exception = 21; } } message Pools { // Existence of pool. oneof pool_oneof { bool pool = 2; Exception pool_exception = 3; } // Number of pools. oneof number_of_pools_oneof { // Min count of all pools on property. int32 number_of_pools = 4; Exception number_of_pools_exception = 5; } // Existence of indoor pool. oneof indoor_pool_oneof { // Including hot tubs, adult pools, etc. bool indoor_pool = 30; Exception indoor_pool_exception = 31; } // Number of indoor pools. oneof number_of_indoor_pools_oneof { // Including hot tubs, adult pools, etc. int32 number_of_indoor_pools = 6; Exception number_of_indoor_pools_exception = 7; } // Existence of outdoor pool. oneof outdoor_pool_oneof { // Including hot tubs, lazy rivers, etc. bool outdoor_pool = 32; Exception outdoor_pool_exception = 33; } // Number of outdoor pools. oneof number_of_outdoor_pools_oneof { // Including hot tubs, lazy rivers, etc. int32 number_of_outdoor_pools = 8; Exception number_of_outdoor_pools_exception = 9; } // Hot tub. oneof hot_tub_oneof { bool hot_tub = 12; Exception hot_tub_exception = 13; } // Waterslide. oneof waterslide_oneof { bool waterslide = 14; Exception waterslide_exception = 15; } // Lazy river. oneof lazy_river_oneof { bool lazy_river = 16; Exception lazy_river_exception = 17; } // Adult pool. oneof adult_pool_oneof { bool adult_pool = 18; Exception adult_pool_exception = 19; } // Wading pool. oneof wading_pool_oneof { bool wading_pool = 20; Exception wading_pool_exception = 21; } // Wave pool. oneof wave_pool_oneof { bool wave_pool = 22; Exception wave_pool_exception = 23; } // Thermal pool. oneof thermal_pool_oneof { // Includes hot springs. bool thermal_pool = 24; Exception thermal_pool_exception = 25; } // Water park. oneof water_park_oneof { bool water_park = 26; Exception water_park_exception = 27; } // Lifeguard. oneof lifeguard_oneof { bool lifeguard = 28; Exception lifeguard_exception = 29; } } message Wellness { // Fitness center. oneof fitness_center_oneof { bool fitness_center = 4; Exception fitness_center_exception = 5; } // Fitness center for free. oneof fitness_center_for_free_oneof { bool fitness_center_for_free = 24; Exception fitness_center_for_free_exception = 25; } // Elliptical machine. oneof elliptical_machine_oneof { bool elliptical_machine = 6; Exception elliptical_machine_exception = 7; } // Treadmill. oneof treadmill_oneof { bool treadmill = 8; Exception treadmill_exception = 9; } // Weight machine. oneof weight_machine_oneof { bool weight_machine = 10; Exception weight_machine_exception = 11; } // Free weights. oneof free_weights_oneof { bool free_weights = 12; Exception free_weights_exception = 13; } // Spa. oneof spa_oneof { bool spa = 14; Exception spa_exception = 15; } // Salon. oneof salon_oneof { bool salon = 16; Exception salon_exception = 17; } // Sauna. oneof sauna_oneof { bool sauna = 18; Exception sauna_exception = 19; } // Massage. oneof massage_oneof { bool massage = 20; Exception massage_exception = 21; } // Aesthetic salon. oneof aesthetic_salon_oneof { bool aesthetic_salon = 30; Exception aesthetic_salon_exception = 31; } ////////////// // Healthcare. // Doctor on call. oneof doctor_on_call_oneof { bool doctor_on_call = 22; Exception doctor_on_call_exception = 23; } } message Activities { ///////////////////////// // On-premise facilities. // Game room. oneof game_room_oneof { bool game_room = 2; Exception game_room_exception = 3; } // Nightclub. oneof nightclub_oneof { bool nightclub = 4; Exception nightclub_exception = 5; } // Casino. oneof casino_oneof { bool casino = 6; Exception casino_exception = 7; } // Boutique stores. oneof boutique_stores_oneof { bool boutique_stores = 8; Exception boutique_stores_exception = 9; } //////////////////////////////////////////////////////////////// // On-premise or adjacent sports facilities, possibly for a fee. // Tennis. oneof tennis_oneof { bool tennis = 10; Exception tennis_exception = 11; } // Golf. oneof golf_oneof { bool golf = 12; Exception golf_exception = 13; } // Horseback riding. oneof horseback_riding_oneof { bool horseback_riding = 14; Exception horseback_riding_exception = 15; } // Snorkeling. oneof snorkeling_oneof { bool snorkeling = 16; Exception snorkeling_exception = 17; } // Scuba. oneof scuba_oneof { bool scuba = 18; Exception scuba_exception = 19; } // Water skiing. oneof water_skiing_oneof { bool water_skiing = 20; Exception water_skiing_exception = 21; } // Bicycles rental. oneof bicycles_rental_oneof { bool bicycles_rental = 22; Exception bicycles_rental_exception = 23; } // Bicycles rental for free. oneof bicycles_rental_for_free_oneof { bool bicycles_rental_for_free = 24; Exception bicycles_rental_for_free_exception = 25; } // Watercraft rental. oneof watercraft_rental_oneof { bool watercraft_rental = 26; Exception watercraft_rental_exception = 27; } // Watercraft rental for free. oneof watercraft_rental_for_free_oneof { bool watercraft_rental_for_free = 28; Exception watercraft_rental_for_free_exception = 29; } // The property is directly accessible to a beach without users needing to // cross a public road. oneof beach_access_oneof { bool beach_access = 30; Exception beach_access_exception = 31; } // The property has a private beach that's only accessible by guests staying // at the property. oneof private_beach_oneof { bool private_beach = 32; Exception private_beach_exception = 33; } // The property is directly on the beach. oneof beach_front_oneof { bool beach_front = 34; Exception beach_front_exception = 35; } // Karaoke. oneof karaoke_oneof { bool karaoke = 36; Exception karaoke_exception = 37; } // Banquet hall. oneof banquet_hall_oneof { bool banquet_hall = 38; Exception banquet_hall_exception = 39; } // Table tennis. oneof table_tennis_oneof { bool table_tennis = 40; Exception table_tennis_exception = 41; } } message Transportation { // Transfer from/to lodging property. oneof transfer_oneof { bool transfer = 2; Exception transfer_exception = 3; } // Airport shuttle. oneof airport_shuttle_oneof { bool airport_shuttle = 4; Exception airport_shuttle_exception = 5; } // Airport shuttle for free. oneof airport_shuttle_for_free_oneof { bool airport_shuttle_for_free = 6; Exception airport_shuttle_for_free_exception = 7; } // Local shuttle. oneof local_shuttle_oneof { // Shuttle to local attractions and businesses. bool local_shuttle = 8; Exception local_shuttle_exception = 9; } // Car rental on property. oneof car_rental_on_property_oneof { bool car_rental_on_property = 10; Exception car_rental_on_property_exception = 11; } // Private car service. oneof private_car_service_oneof { // Private car services refers to taxis or black car as long as the car is // not shared. bool private_car_service = 12; Exception private_car_service_exception = 13; } // Private car service for free. oneof private_car_service_for_free_oneof { bool private_car_service_for_free = 14; Exception private_car_service_for_free_exception = 15; } } message Families { // Babysitting. oneof babysitting_oneof { bool babysitting = 4; Exception babysitting_exception = 5; } // Kids activities. oneof kids_activities_oneof { bool kids_activities = 6; Exception kids_activities_exception = 7; } // Kids club. oneof kids_club_oneof { bool kids_club = 8; Exception kids_club_exception = 9; } // Kids friendly. oneof kids_friendly_oneof { bool kids_friendly = 16; Exception kids_friendly_exception = 17; } } message Connectivity { // Internet and WiFi options. // Wifi available. oneof wifi_available_oneof { bool wifi_available = 2; Exception wifi_available_exception = 3; } // Wifi for free. oneof wifi_for_free_oneof { bool wifi_for_free = 22; Exception wifi_for_free_exception = 23; } // Wifi in public areas. oneof wifi_in_public_areas_oneof { bool wifi_in_public_areas = 6; Exception wifi_in_public_areas_exception = 7; } // Public internet terminal. oneof public_internet_terminal_oneof { bool public_internet_terminal = 12; Exception public_internet_terminal_exception = 13; } } message Business { // Business center. oneof business_center_oneof { bool business_center = 2; Exception business_center_exception = 3; } // Meeting rooms. oneof meeting_rooms_oneof { bool meeting_rooms = 6; Exception meeting_rooms_exception = 7; } // Meeting room count. oneof number_of_meeting_rooms_oneof { int32 number_of_meeting_rooms = 8; Exception number_of_meeting_rooms_exception = 9; } } message Accessibility { // Mobility accessible. oneof mobility_accessible_oneof { bool mobility_accessible = 4; Exception mobility_accessible_exception = 5; } // Mobility accessible parking. oneof mobility_accessible_parking_oneof { bool mobility_accessible_parking = 2; Exception mobility_accessible_parking_exception = 3; } // Mobility accessible elevator. oneof mobility_accessible_elevator_oneof { bool mobility_accessible_elevator = 6; Exception mobility_accessible_elevator_exception = 7; } // Mobility accessible pool. oneof mobility_accessible_pool_oneof { bool mobility_accessible_pool = 8; Exception mobility_accessible_pool_exception = 9; } // Rental wheelchair. oneof wheelchair_rental_oneof { bool wheelchair_rental = 10; Exception wheelchair_rental_exception = 11; } } message Pets { // Pets allowed. oneof pets_allowed_oneof { bool pets_allowed = 2; Exception pets_allowed_exception = 3; } // Pets allowed for free. oneof pets_allowed_for_free_oneof { // No standard fees apply for having an allowed pet in the guest unit. bool pets_allowed_for_free = 4; Exception pets_allowed_for_free_exception = 5; } // Dogs allowed. oneof dogs_allowed_oneof { bool dogs_allowed = 6; Exception dogs_allowed_exception = 7; } // Cats allowed. oneof cats_allowed_oneof { bool cats_allowed = 8; Exception cats_allowed_exception = 9; } } message PublicBath { // Onsen. oneof onsen_oneof { bool onsen = 2; Exception onsen_exception = 3; } // Natural onsen. oneof natural_onsen_oneof { bool natural_onsen = 4; Exception natural_onsen_exception = 5; } // Artificial onsen. oneof artificial_onsen_oneof { bool artificial_onsen = 6; Exception artificial_onsen_exception = 7; } // Public bath. oneof public_bath_oneof { bool public_bath = 8; Exception public_bath_exception = 9; } // Open-air bath. oneof open_air_bath_oneof { bool open_air_bath = 10; Exception open_air_bath_exception = 11; } // Private Bath. oneof private_bath_oneof { bool private_bath = 12; Exception private_bath_exception = 13; } // Jacuzzi. oneof jacuzzi_oneof { bool jacuzzi = 14; Exception jacuzzi_exception = 15; } // Water bath. oneof water_bath_oneof { bool water_bath = 16; Exception water_bath_exception = 17; } // Bedrock bath. oneof bedrock_bath_oneof { bool bedrock_bath = 18; Exception bedrock_bath_exception = 19; } // Mixed bathing. oneof mixed_bathing_oneof { bool mixed_bathing = 20; Exception mixed_bathing_exception = 21; } } /////////////////////////////// // Guest Unit level messages // /////////////////////////////// message GuestUnitType { // REQUIRED. Unit or room code identifiers for a single GuestUnitType. Each // code must be unique within a Lodging instance. repeated string code = 59; // REQUIRED. Short name of the GuestUnitType. Target <50 chars for English // version. string name = 2; // Tier. oneof tier_oneof { // Standard or deluxe. // A non-standard tier is only permitted if at least one other unit // type is of a lower tier. UnitTier tier = 5; Exception tier_exception = 6; } ///////////// // Occupancy. // Max number of occupants. oneof max_number_of_occupants_oneof { int32 max_number_of_occupants = 7; Exception max_number_of_occupants_exception = 8; } // Max number of adult occupants. oneof max_number_of_adult_occupants_oneof { int32 max_number_of_adult_occupants = 9; Exception max_number_of_adult_occupants_exception = 10; } // Max number of child occupants. oneof max_number_of_child_occupants_oneof { int32 max_number_of_child_occupants = 11; Exception max_number_of_child_occupants_exception = 12; } ///////////////////////// // Guest unit attributes. // Where possible features should be defined in GuestUnitFeatures and // assigned at the most precise known granularity, e.g. some/all guest // units, vs. a specific guest unit type vs. a living area. // Private home. oneof private_home_oneof { bool private_home = 13; Exception private_home_exception = 14; } // Suite with multiple living areas / bedrooms. oneof suite_oneof { bool suite = 19; Exception suite_exception = 20; } // Bungalow or villa. oneof bungalow_or_villa_oneof { bool bungalow_or_villa = 21; Exception bungalow_or_villa_exception = 22; } // Access to executive floor lounge or related benefits. oneof executive_floor_oneof { bool executive_floor = 23; Exception executive_floor_exception = 24; } // Connecting unit available. oneof connecting_unit_available_oneof { bool connecting_unit_available = 25; Exception connecting_unit_available_exception = 26; } ViewsFromUnit views = 60; //////////////// // Living areas. // Features that cannot be associated with a particular // living area but are available in the guest unit type. // Prefer to associate with living areas when possible. // In general, summable numbers are summarized by taking // the max of (the value stored in this field) and // (the sum of the values for the individual living areas). LivingArea total_living_areas = 100; } enum UnitTier { // Standard. The basic tier for this kind of unit. DEFAULT_STANDARD = 0; // Deluxe or Superior. Only allowed if another unit type is a standard tier. DELUXE = 1; } ////////////////////////////////////////////// // Views available from the guest unit itself. message ViewsFromUnit { // View of beach. oneof view_of_beach_oneof { bool view_of_beach = 2; Exception view_of_beach_exception = 3; } // View of city. oneof view_of_city_oneof { bool view_of_city = 4; Exception view_of_city_exception = 5; } // View of garden. oneof view_of_garden_oneof { bool view_of_garden = 6; Exception view_of_garden_exception = 7; } // View of lake. oneof view_of_lake_oneof { bool view_of_lake = 8; Exception view_of_lake_exception = 9; } // View of landmark. oneof view_of_landmark_oneof { bool view_of_landmark = 10; Exception view_of_landmark_exception = 11; } // View of ocean. oneof view_of_ocean_oneof { bool view_of_ocean = 12; Exception view_of_ocean_exception = 13; } // View of pool. oneof view_of_pool_oneof { bool view_of_pool = 14; Exception view_of_pool_exception = 15; } // View of valley. oneof view_of_valley_oneof { bool view_of_valley = 16; Exception view_of_valley_exception = 17; } } // An individual room, such as kitchen, bathroom, bedroom, within // a bookable guest unit. message LivingArea { LivingAreaLayout layout = 100; LivingAreaFeatures features = 101; LivingAreaEating eating = 102; LivingAreaSleeping sleeping = 103; LivingAreaAccessibility accessibility = 104; } message LivingAreaLayout { // Living area sq meters. oneof living_area_sq_meters_oneof { float living_area_sq_meters = 2; Exception living_area_sq_meters_exception = 3; } // Stairs inside the LivingArea. oneof stairs_oneof { bool stairs = 4; Exception stairs_exception = 5; } // Loft. oneof loft_oneof { bool loft = 6; Exception loft_exception = 7; } // Non smoking. oneof non_smoking_oneof { bool non_smoking = 12; Exception non_smoking_exception = 13; } // Patio. oneof patio_oneof { // Has a patio or deck, ground or rooftop. bool patio = 16; Exception patio_exception = 17; } // Balcony. oneof balcony_oneof { // Has a balcony or lanai. bool balcony = 18; Exception balcony_exception = 19; } } message LivingAreaFeatures { ///////////////////// // Bathroom features. // Private bathroom. oneof private_bathroom_oneof { // Not shared with other guests. bool private_bathroom = 2; Exception private_bathroom_exception = 3; } // Toilet. oneof toilet_oneof { bool toilet = 4; Exception toilet_exception = 5; } // Bidet. oneof bidet_oneof { bool bidet = 6; Exception bidet_exception = 7; } // Shower. oneof shower_oneof { bool shower = 8; Exception shower_exception = 9; } // Bathtub. oneof bathtub_oneof { bool bathtub = 12; Exception bathtub_exception = 13; } // Hairdryer. oneof hairdryer_oneof { bool hairdryer = 14; Exception hairdryer_exception = 15; } /////////////// // Convenience. // Washer. oneof washer_oneof { bool washer = 64; Exception washer_exception = 65; } // Dryer. oneof dryer_oneof { bool dryer = 66; Exception dryer_exception = 67; } // Ironing equipment. oneof ironing_equipment_oneof { bool ironing_equipment = 28; Exception ironing_equipment_exception = 29; } // Universal power adapters. oneof universal_power_adapters_oneof { bool universal_power_adapters = 30; Exception universal_power_adapters_exception = 31; } /////////// // Comfort. // Air conditioning. oneof air_conditioning_oneof { bool air_conditioning = 32; Exception air_conditioning_exception = 33; } // Heating. oneof heating_oneof { bool heating = 34; Exception heating_exception = 35; } // Fireplace. oneof fireplace_oneof { bool fireplace = 36; Exception fireplace_exception = 37; } ///////////////// // Entertainment. // TV available. oneof tv_oneof { bool tv = 38; Exception tv_exception = 39; } // TV with casting. oneof tv_with_casting_oneof { // Chromecast, Apple TV, etc. bool tv_with_casting = 40; Exception tv_with_casting_exception = 41; } // TV with streaming. oneof tv_with_streaming_oneof { // Built in Netflix, Hulu, etc. bool tv_with_streaming = 42; Exception tv_with_streaming_exception = 43; } // Pay per view movies. oneof pay_per_view_movies_oneof { bool pay_per_view_movies = 44; Exception pay_per_view_movies_exception = 45; } //////////// // Security. // In unit safe. oneof in_unit_safe_oneof { bool in_unit_safe = 48; Exception in_unit_safe_exception = 49; } // Electronic room key. oneof electronic_room_key_oneof { bool electronic_room_key = 50; Exception electronic_room_key_exception = 51; } /////////////// // Connectivity // In unit Wifi available. oneof in_unit_wifi_available_oneof { bool in_unit_wifi_available = 62; Exception in_unit_wifi_available_exception = 63; } } message LivingAreaEating { // Kitchen available in unit. oneof kitchen_available_oneof { bool kitchen_available = 2; Exception kitchen_available_exception = 3; } ///////////////////////// // Major kitchen features. // Refrigerator. oneof refrigerator_oneof { bool refrigerator = 4; Exception refrigerator_exception = 5; } // Dishwasher. oneof dishwasher_oneof { bool dishwasher = 6; Exception dishwasher_exception = 7; } // Stove. oneof stove_oneof { bool stove = 8; Exception stove_exception = 9; } // Oven. oneof oven_oneof { bool oven = 10; Exception oven_exception = 11; } ////////////////////////// // Minor kitchen features. // Cookware. oneof cookware_oneof { bool cookware = 12; Exception cookware_exception = 13; } // Sink. oneof sink_oneof { bool sink = 14; Exception sink_exception = 15; } // Microwave. oneof microwave_oneof { bool microwave = 16; Exception microwave_exception = 17; } // Toaster. oneof toaster_oneof { bool toaster = 18; Exception toaster_exception = 19; } // Indoor grill. oneof indoor_grill_oneof { bool indoor_grill = 22; Exception indoor_grill_exception = 23; } // Outdoor grill. oneof outdoor_grill_oneof { bool outdoor_grill = 24; Exception outdoor_grill_exception = 25; } ////////////////////////////// // In-unit food and beverages. // Minibar. oneof minibar_oneof { bool minibar = 34; Exception minibar_exception = 35; } // Snackbar. oneof snackbar_oneof { bool snackbar = 36; Exception snackbar_exception = 37; } // Coffee maker. oneof coffee_maker_oneof { bool coffee_maker = 42; Exception coffee_maker_exception = 43; } // Kettle. oneof kettle_oneof { bool kettle = 48; Exception kettle_exception = 49; } // Tea station. oneof tea_station_oneof { bool tea_station = 50; Exception tea_station_exception = 51; } } message LivingAreaSleeping { //////////////////// // Bed types counts. // Number of beds. oneof number_of_beds_oneof { int32 number_of_beds = 2; Exception number_of_beds_exception = 3; } // King beds. oneof king_beds_oneof { // Including California king and super king. int32 king_beds = 4; Exception king_beds_exception = 5; } // Queen beds. oneof queen_beds_oneof { int32 queen_beds = 6; Exception queen_beds_exception = 7; } // Double beds. oneof double_beds_oneof { int32 double_beds = 8; Exception double_beds_exception = 9; } // Single or twin beds. oneof single_or_twin_beds_oneof { int32 single_or_twin_beds = 10; Exception single_or_twin_beds_exception = 11; } // Sofa beds. oneof sofa_beds_oneof { int32 sofa_beds = 14; Exception sofa_beds_exception = 15; } // Bunk beds. oneof bunk_beds_oneof { int32 bunk_beds = 16; Exception bunk_beds_exception = 17; } // Other beds. oneof other_beds_oneof { // Tatami, trundle, etc. int32 other_beds = 18; Exception other_beds_exception = 19; } // Roll away beds available. // This field is deprecated. Please use field roll_away_bed_count for the // number of roll away beds. Otherwise, just use field roll_away_beds for the // existence of roll away beds. oneof roll_away_beds_available_oneof { int32 roll_away_beds_available = 20 [deprecated = true]; Exception roll_away_beds_available_exception = 21 [deprecated = true]; } // Roll away beds. oneof roll_away_beds_oneof { bool roll_away_beds = 40; Exception roll_away_beds_exception = 41; } // Roll away bed count. oneof roll_away_bed_count_oneof { int32 roll_away_bed_count = 42; Exception roll_away_bed_count_exception = 43; } // Cribs available. // This field is deprecated. Please use field crib_count for the number of // cribs. Otherwise, just use field cribs for the existence of cribs. oneof cribs_available_oneof { int32 cribs_available = 22 [deprecated = true]; Exception cribs_available_exception = 23 [deprecated = true]; } // Cribs. oneof cribs_oneof { bool cribs = 44; Exception cribs_exception = 45; } // Crib count. oneof crib_count_oneof { int32 crib_count = 46; Exception crib_count_exception = 47; } //////////// // Sleeping. // Hypoallergenic bedding. oneof hypoallergenic_bedding_oneof { bool hypoallergenic_bedding = 28; Exception hypoallergenic_bedding_exception = 29; } // Synthetic pillows. oneof synthetic_pillows_oneof { bool synthetic_pillows = 32; Exception synthetic_pillows_exception = 33; } // Memory foam pillows available. oneof memory_foam_pillows_oneof { bool memory_foam_pillows = 34; Exception memory_foam_pillows_exception = 35; } // Feather pillows available. oneof feather_pillows_oneof { bool feather_pillows = 36; Exception feather_pillows_exception = 37; } } message LivingAreaAccessibility { // Mobility-accessible unit. Generally what "accessible room" refers to in // public lodging offerings. oneof mobility_accessible_unit_oneof { // True if ada_compliant_unit. bool mobility_accessible_unit = 2; Exception mobility_accessible_unit_exception = 3; } // ADA standards compliant unit. oneof ada_compliant_unit_oneof { bool ada_compliant_unit = 4; Exception ada_compliant_unit_exception = 5; } // Hearing-accessible unit. oneof hearing_accessible_unit_oneof { bool hearing_accessible_unit = 6; Exception hearing_accessible_unit_exception = 7; } //////////////////////////////// // Mobility-accessible features. // Mobility-accessible shower. oneof mobility_accessible_shower_oneof { bool mobility_accessible_shower = 10; Exception mobility_accessible_shower_exception = 11; } // Mobility-accessible bathtub. oneof mobility_accessible_bathtub_oneof { bool mobility_accessible_bathtub = 12; Exception mobility_accessible_bathtub_exception = 13; } // Mobility-accessible toilet. oneof mobility_accessible_toilet_oneof { bool mobility_accessible_toilet = 14; Exception mobility_accessible_toilet_exception = 15; } ////////////////////////////////// // Hearing-accessible features. // Hearing-accessible doorbell. oneof hearing_accessible_doorbell_oneof { bool hearing_accessible_doorbell = 30; Exception hearing_accessible_doorbell_exception = 31; } // Hearing-accessible fire_alarm. oneof hearing_accessible_fire_alarm_oneof { bool hearing_accessible_fire_alarm = 32; Exception hearing_accessible_fire_alarm_exception = 33; } } message HealthAndSafety { // Website URL containing Health & Safety measures provided by the hotel. oneof learn_more_uri_oneof { string learn_more_uri = 2; Exception learn_more_uri_exception = 3; } EnhancedCleaning enhanced_cleaning = 5; IncreasedFoodSafety increased_food_safety = 6; MinimizedContact minimized_contact = 7; PersonalProtection personal_protection = 8; PhysicalDistancing physical_distancing = 9; reserved 4; // multi-language support for "learn more" URL. } message EnhancedCleaning { // Enhanced cleaning of common areas. oneof common_areas_enhanced_cleaning_oneof { bool common_areas_enhanced_cleaning = 2; Exception common_areas_enhanced_cleaning_exception = 3; } // Enhanced cleaning of guest rooms. oneof guest_rooms_enhanced_cleaning_oneof { bool guest_rooms_enhanced_cleaning = 4; Exception guest_rooms_enhanced_cleaning_exception = 5; } // Commercial-grade disinfectant used to clean the property. oneof commercial_grade_disinfectant_cleaning_oneof { bool commercial_grade_disinfectant_cleaning = 6; Exception commercial_grade_disinfectant_cleaning_exception = 7; } // Employees trained in COVID-19 cleaning procedures. oneof employees_trained_cleaning_procedures_oneof { bool employees_trained_cleaning_procedures = 8; Exception employees_trained_cleaning_procedures_exception = 9; } // Employees trained in thorough hand-washing. oneof employees_trained_hand_washing_protocols_oneof { bool employees_trained_hand_washing_protocols = 10; Exception employees_trained_hand_washing_protocols_exception = 11; } // Employees wear masks, face shields, and/or gloves. oneof employees_wear_protective_equipment_oneof { bool employees_wear_protective_equipment = 12; Exception employees_wear_protective_equipment_exception = 13; } } message IncreasedFoodSafety { // Additional safety measures during food prep and serving. oneof food_preparation_and_serving_safe_handling_oneof { bool food_preparation_and_serving_safe_handling = 2; Exception food_preparation_and_serving_safe_handling_exception = 3; } // Additional sanitation in dining areas. oneof food_areas_additional_sanitation_oneof { bool food_areas_additional_sanitation = 4; Exception food_areas_additional_sanitation_exception = 5; } // Individually-packaged meals. oneof individual_packaged_meals_available_oneof { bool individual_packaged_meals_available = 6; Exception individual_packaged_meals_available_exception = 7; } // Disposable flatware. oneof disposable_flatware_oneof { bool disposable_flatware = 8; Exception disposable_flatware_exception = 9; } // Single-use menus. oneof single_use_food_menus_oneof { bool single_use_food_menus = 10; Exception single_use_food_menus_exception = 11; } } message MinimizedContact { // High-touch items, such as magazines, removed from common areas. oneof no_high_touch_items_common_areas_oneof { bool no_high_touch_items_common_areas = 2; Exception no_high_touch_items_common_areas_exception = 3; } // High-touch items, such as decorative pillows, removed from guest rooms. oneof no_high_touch_items_guest_rooms_oneof { bool no_high_touch_items_guest_rooms = 4; Exception no_high_touch_items_guest_rooms_exception = 5; } // Keyless mobile entry to guest rooms. oneof digital_guest_room_keys_oneof { bool digital_guest_room_keys = 6; Exception digital_guest_room_keys_exception = 7; } // Plastic key cards are disinfected or discarded. oneof plastic_keycards_disinfected_oneof { bool plastic_keycards_disinfected = 8; Exception plastic_keycards_disinfected_exception = 9; } // Buffer maintained between room bookings. oneof room_bookings_buffer_oneof { bool room_bookings_buffer = 10; Exception room_bookings_buffer_exception = 11; } // Housekeeping scheduled by request only. oneof housekeeping_scheduled_request_only_oneof { bool housekeeping_scheduled_request_only = 12; Exception housekeeping_scheduled_request_only_exception = 13; } // No-contact check-in and check-out. oneof contactless_checkin_checkout_oneof { bool contactless_checkin_checkout = 14; Exception contactless_checkin_checkout_exception = 15; } } message PersonalProtection { // Hand-sanitizer and/or sanitizing wipes in common areas. oneof common_areas_offer_sanitizing_items_oneof { bool common_areas_offer_sanitizing_items = 2; Exception common_areas_offer_sanitizing_items_exception = 3; } // In-room hygiene kits with masks, hand sanitizer, and/or antibacterial // wipes. oneof guest_room_hygiene_kits_available_oneof { bool guest_room_hygiene_kits_available = 4; Exception guest_room_hygiene_kits_available_exception = 5; } // Masks and/or gloves available for guests. oneof protective_equipment_available_oneof { bool protective_equipment_available = 6; Exception protective_equipment_available_exception = 7; } // Masks required on the property. oneof face_mask_required_oneof { bool face_mask_required = 8; Exception face_mask_required_exception = 9; } } message PhysicalDistancing { // Physical distancing required. oneof physical_distancing_required_oneof { bool physical_distancing_required = 2; Exception physical_distancing_required_exception = 3; } // Safety dividers at front desk and other locations. oneof plexiglass_used_oneof { bool plexiglass_used = 4; Exception plexiglass_used_exception = 5; } // Guest occupancy limited within shared facilities. oneof shared_areas_limited_occupancy_oneof { bool shared_areas_limited_occupancy = 6; Exception shared_areas_limited_occupancy_exception = 7; } // Private spaces designated in spa and wellness areas. oneof wellness_areas_have_private_spaces_oneof { bool wellness_areas_have_private_spaces = 8; Exception wellness_areas_have_private_spaces_exception = 9; } // Common areas arranged to maintain physical distancing. oneof common_areas_physical_distancing_arranged_oneof { bool common_areas_physical_distancing_arranged = 10; Exception common_areas_physical_distancing_arranged_exception = 11; } } message Sustainability { // Website URL containing sustainability information for the hotel. oneof sustainability_uri_oneof { string sustainability_uri = 2; Exception sustainability_uri_exception = 3; } EnergyEfficiency energy_efficiency = 5; WaterConservation water_conservation = 6; WasteReduction waste_reduction = 7; SustainableSourcing sustainable_sourcing = 8; SustainabilityCertifications sustainability_certifications = 9; reserved 4; // multi-language support for sustainability_uri. } message EnergyEfficiency { // Energy conservation program. oneof energy_conservation_program_oneof { bool energy_conservation_program = 4; Exception energy_conservation_program_exception = 5; } // Energy use audited by an independent organization. oneof independent_organization_audits_energy_use_oneof { bool independent_organization_audits_energy_use = 6; Exception independent_organization_audits_energy_use_exception = 7; } // Energy from carbon-free sources. oneof carbon_free_energy_sources_oneof { bool carbon_free_energy_sources = 8; Exception carbon_free_energy_sources_exception = 9; } // Energy-efficient heating and cooling systems. oneof energy_efficient_heating_and_cooling_systems_oneof { bool energy_efficient_heating_and_cooling_systems = 10; Exception energy_efficient_heating_and_cooling_systems_exception = 11; } // Energy-efficient lighting. oneof energy_efficient_lighting_oneof { bool energy_efficient_lighting = 12; Exception energy_efficient_lighting_exception = 13; } // Energy-saving thermostats. oneof energy_saving_thermostats_oneof { bool energy_saving_thermostats = 14; Exception energy_saving_thermostats_exception = 15; } } message WaterConservation { // Water use audited by an independent organization. oneof independent_organization_audits_water_use_oneof { bool independent_organization_audits_water_use = 2; Exception independent_organization_audits_water_use_exception = 3; } // Water-efficient faucets. oneof water_saving_sinks_oneof { bool water_saving_sinks = 4; Exception water_saving_sinks_exception = 5; } // Water-efficient toilets. oneof water_saving_toilets_oneof { bool water_saving_toilets = 6; Exception water_saving_toilets_exception = 7; } // Water-efficient showers. oneof water_saving_showers_oneof { bool water_saving_showers = 8; Exception water_saving_showers_exception = 9; } // Towel reuse program. oneof towel_reuse_program_oneof { bool towel_reuse_program = 10; Exception towel_reuse_program_exception = 11; } // Linen reuse program. oneof linen_reuse_program_oneof { bool linen_reuse_program = 12; Exception linen_reuse_program_exception = 13; } } message WasteReduction { // Recycling program. oneof recycling_program_oneof { bool recycling_program = 2; Exception recycling_program_exception = 3; } // Food waste reduction program. oneof food_waste_reduction_program_oneof { bool food_waste_reduction_program = 4; Exception food_waste_reduction_program_exception = 5; } // Donates excess food. oneof donates_excess_food_oneof { bool donates_excess_food = 6; Exception donates_excess_food_exception = 7; } // Composts excess food. oneof composts_excess_food_oneof { bool composts_excess_food = 8; Exception composts_excess_food_exception = 9; } // Soap donation program. oneof soap_donation_program_oneof { bool soap_donation_program = 10; Exception soap_donation_program_exception = 11; } // Toiletry donation program. oneof toiletry_donation_program_oneof { bool toiletry_donation_program = 12; Exception toiletry_donation_program_exception = 13; } // Safely handles hazardous substances. oneof safely_handles_hazardous_substances_oneof { bool safely_handles_hazardous_substances = 14; Exception safely_handles_hazardous_substances_exception = 15; } // Safely disposes of electronics. oneof safely_disposes_electronics_oneof { bool safely_disposes_electronics = 16; Exception safely_disposes_electronics_exception = 17; } // Safely disposes of batteries. oneof safely_disposes_batteries_oneof { bool safely_disposes_batteries = 18; Exception safely_disposes_batteries_exception = 19; } // Safely disposes of lightbulbs. oneof safely_disposes_lightbulbs_oneof { bool safely_disposes_lightbulbs = 20; Exception safely_disposes_lightbulbs_exception = 21; } // Refillable toiletry containers. oneof refillable_toiletry_containers_oneof { bool refillable_toiletry_containers = 22; Exception refillable_toiletry_containers_exception = 23; } // Water bottle filling stations. oneof water_bottle_filling_stations_oneof { bool water_bottle_filling_stations = 24; Exception water_bottle_filling_stations_exception = 25; } // Compostable food containers and cutlery. oneof compostable_food_containers_and_cutlery_oneof { bool compostable_food_containers_and_cutlery = 26; Exception compostable_food_containers_and_cutlery_exception = 27; } // No Styrofoam food containers. oneof no_styrofoam_food_containers_oneof { bool no_styrofoam_food_containers = 28; Exception no_styrofoam_food_containers_exception = 29; } // No single-use plastic water bottles. oneof no_single_use_plastic_water_bottles_oneof { bool no_single_use_plastic_water_bottles = 30; Exception no_single_use_plastic_water_bottles_exception = 31; } // No single-use plastic straws. oneof no_single_use_plastic_straws_oneof { bool no_single_use_plastic_straws = 32; Exception no_single_use_plastic_straws_exception = 33; } } message SustainableSourcing { // Responsible purchasing policy. oneof responsible_purchasing_policy_oneof { bool responsible_purchasing_policy = 2; Exception responsible_purchasing_policy_exception = 3; } // Organic food and beverages. oneof organic_food_and_beverages_oneof { bool organic_food_and_beverages = 4; Exception organic_food_and_beverages_exception = 5; } // Locally sourced food and beverages. oneof locally_sourced_food_and_beverages_oneof { bool locally_sourced_food_and_beverages = 6; Exception locally_sourced_food_and_beverages_exception = 7; } // Responsibly sourced seafood. oneof responsibly_sources_seafood_oneof { bool responsibly_sources_seafood = 8; Exception responsibly_sources_seafood_exception = 9; } // Organic cage-free eggs. oneof organic_cage_free_eggs_oneof { bool organic_cage_free_eggs = 10; Exception organic_cage_free_eggs_exception = 11; } // Vegetarian meals. oneof vegetarian_meals_oneof { bool vegetarian_meals = 12; Exception vegetarian_meals_exception = 13; } // Vegan meals. oneof vegan_meals_oneof { bool vegan_meals = 14; Exception vegan_meals_exception = 15; } // Eco-friendly toiletries. oneof eco_friendly_toiletries_oneof { bool eco_friendly_toiletries = 16; Exception eco_friendly_toiletries_exception = 17; } } message SustainabilityCertifications { // BREEAM: Pass. oneof breeam_pass_oneof { bool breeam_pass = 2; Exception breeam_pass_exception = 3; } // BREEAM: Good. oneof breeam_good_oneof { bool breeam_good = 4; Exception breeam_good_exception = 5; } // BREEAM: Very Good. oneof breeam_very_good_oneof { bool breeam_very_good = 6; Exception breeam_very_good_exception = 7; } // BREEAM: Excellent. oneof breeam_excellent_oneof { bool breeam_excellent = 8; Exception breeam_excellent_exception = 9; } // BREEAM: Outstanding. oneof breeam_outstanding_oneof { bool breeam_outstanding = 10; Exception breeam_outstanding_exception = 11; } // LEED: Certified. oneof leed_certified_oneof { bool leed_certified = 12; Exception leed_certified_exception = 13; } // LEED: Silver. oneof leed_silver_oneof { bool leed_silver = 14; Exception leed_silver_exception = 15; } // LEED: Gold. oneof leed_gold_oneof { bool leed_gold = 16; Exception leed_gold_exception = 17; } // LEED: Platinum. oneof leed_platinum_oneof { bool leed_platinum = 18; Exception leed_platinum_exception = 19; } // ISO 14001. oneof iso14001_oneof { bool iso14001 = 20; Exception iso14001_exception = 21; } // ISO 50001. oneof iso50001_oneof { bool iso50001 = 22; Exception iso50001_exception = 23; } // Asian Ecotourism Standard for Accommodations (AESA). oneof asian_ecotourism_oneof { bool asian_ecotourism = 24; Exception asian_ecotourism_exception = 25; } // Biosphere Responsible Tourism Standard. oneof biosphere_responsible_tourism_oneof { bool biosphere_responsible_tourism = 26; Exception biosphere_responsible_tourism_exception = 27; } // Bureau Veritas. oneof bureau_veritas_oneof { bool bureau_veritas = 28; Exception bureau_veritas_exception = 29; } // Control Union. oneof control_union_oneof { bool control_union = 30; Exception control_union_exception = 31; } // EarthCheck. oneof earthcheck_oneof { bool earthcheck = 32; Exception earthcheck_exception = 33; } // Eco-Certification Malta Standard. oneof eco_certification_malta_oneof { bool eco_certification_malta = 34; Exception eco_certification_malta_exception = 35; } // Ecotourism Australia’s ECO Certification Standard. oneof ecotourism_australias_eco_oneof { bool ecotourism_australias_eco = 36; Exception ecotourism_australias_eco_exception = 37; } // GREAT Green Deal Certification. oneof great_green_deal_oneof { bool great_green_deal = 38; Exception great_green_deal_exception = 39; } // Green Globe. oneof green_globe_oneof { bool green_globe = 40; Exception green_globe_exception = 41; } // Green Growth 2050 Standard. oneof green_growth2050_oneof { bool green_growth2050 = 42; Exception green_growth2050_exception = 43; } // Green Key. oneof green_key_oneof { bool green_key = 44; Exception green_key_exception = 45; } // Geen Key Eco Rating. oneof green_key_eco_rating_oneof { bool green_key_eco_rating = 76; Exception green_key_eco_rating_exception = 77; } // Green Seal. oneof green_seal_oneof { bool green_seal = 46; Exception green_seal_exception = 47; } // Green Star Hotel Standard. oneof green_star_oneof { bool green_star = 48; Exception green_star_exception = 49; } // Green Tourism Active Standard. oneof green_tourism_active_oneof { bool green_tourism_active = 50; Exception green_tourism_active_exception = 51; } // Hilton LightStay. oneof hilton_lightstay_oneof { bool hilton_lightstay = 52; Exception hilton_lightstay_exception = 53; } // Hostelling International’s Quality and Sustainability Standard. oneof hostelling_internationals_quality_and_sustainability_oneof { bool hostelling_internationals_quality_and_sustainability = 54; Exception hostelling_internationals_quality_and_sustainability_exception = 55; } // Hoteles más Verdes (AHT) Standard. oneof hoteles_mas_verdes_oneof { bool hoteles_mas_verdes = 56; Exception hoteles_mas_verdes_exception = 57; } // Nordic Swan Ecolabel. oneof nordic_swan_ecolabel_oneof { bool nordic_swan_ecolabel = 70; Exception nordic_swan_ecolabel_exception = 71; } // Preferred by Nature Sustainable Tourism Standard for Accommodation. oneof preferred_by_nature_sustainable_tourism_oneof { bool preferred_by_nature_sustainable_tourism = 58; Exception preferred_by_nature_sustainable_tourism_exception = 59; } // Sakura Quality An ESG Practice Standard Level 1. oneof sakura_quality_level1_oneof { bool sakura_quality_level1 = 92; Exception sakura_quality_level1_exception = 93; } // Sakura Quality An ESG Practice Standard Level 2. oneof sakura_quality_level2_oneof { bool sakura_quality_level2 = 94; Exception sakura_quality_level2_exception = 95; } // Sakura Quality An ESG Practice Standard Level 3. oneof sakura_quality_level3_oneof { bool sakura_quality_level3 = 96; Exception sakura_quality_level3_exception = 97; } // Sakura Quality An ESG Practice Standard Level 4. oneof sakura_quality_level4_oneof { bool sakura_quality_level4 = 98; Exception sakura_quality_level4_exception = 99; } // Sakura Quality An ESG Practice Standard Level 5. oneof sakura_quality_level5_oneof { bool sakura_quality_level5 = 100; Exception sakura_quality_level5_exception = 101; } // Sustainable Travel Ireland – GSTC Industry Criteria. oneof sustainable_travel_ireland_oneof { bool sustainable_travel_ireland = 60; Exception sustainable_travel_ireland_exception = 61; } // TOFTigers Initiative’s Pug Standard. oneof tof_tigers_initiatives_pug_oneof { bool tof_tigers_initiatives_pug = 62; Exception tof_tigers_initiatives_pug_exception = 63; } // Travelife Standard for Hotels & Accommodations. oneof travelife_oneof { bool travelife = 64; Exception travelife_exception = 65; } // United Certification Systems Limited. oneof united_certification_systems_limited_oneof { bool united_certification_systems_limited = 66; Exception united_certification_systems_limited_exception = 67; } // Vireo Srl. oneof vireo_srl_oneof { bool vireo_srl = 68; Exception vireo_srl_exception = 69; } // Wyndham Green Core. oneof wyndham_green_core_oneof { bool wyndham_green_core = 80; Exception wyndham_green_core_exception = 81; } // Wyndham Green Essential. oneof wyndham_green_essential_oneof { bool wyndham_green_essential = 82; Exception wyndham_green_essential_exception = 83; } // Wyndham Green Proficient. oneof wyndham_green_proficient_oneof { bool wyndham_green_proficient = 84; Exception wyndham_green_proficient_exception = 85; } // Wyndham Green Advanced. oneof wyndham_green_advanced_oneof { bool wyndham_green_advanced = 86; Exception wyndham_green_advanced_exception = 87; } // Wyndham Green Expert. oneof wyndham_green_expert_oneof { bool wyndham_green_expert = 88; Exception wyndham_green_expert_exception = 89; } } // Exception mode. Only use this if the factual information cannot be // represented by the relevant proto field. i.e. a service is only available // during some days of the week, or an amenity is only available seasonally. enum Exception { UNSPECIFIED_REASON = 0; } message Metadata { // REQUIRED. // The ISO 8601 datetime at which the Lodging data is asserted to be // true in the real world. Examples: // 2018-11-13T13:14:52-0800 // 2018-11-13T13:14:52Z string last_updated = 1; }
All rights reserved. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2023-05-23 UTC.
[{
"type": "thumb-down",
"id": "missingTheInformationINeed",
"label":"Missing the information I need"
},{
"type": "thumb-down",
"id": "tooComplicatedTooManySteps",
"label":"Too complicated / too many steps"
},{
"type": "thumb-down",
"id": "outOfDate",
"label":"Out of date"
},{
"type": "thumb-down",
"id": "samplesCodeIssue",
"label":"Samples / code issue"
},{
"type": "thumb-down",
"id": "otherDown",
"label":"Other"
}]
[{
"type": "thumb-up",
"id": "easyToUnderstand",
"label":"Easy to understand"
},{
"type": "thumb-up",
"id": "solvedMyProblem",
"label":"Solved my problem"
},{
"type": "thumb-up",
"id": "otherUp",
"label":"Other"
}]