Atrybuty

Na tej stronie znajdziesz opisy, wartości i wymagania dotyczące atrybutów i elementów podrzędnych. Te wartości mają zastosowanie tylko w przypadku obiektów wakacyjnych.

Ogólna struktura XML jest podobna do formatu plików danych z informacjami o hotelach. Zobacz specyfikację listy hoteli w formacie XML.

Brak tych wymaganych elementów spowoduje automatyczne wyłączenie informacji:

  • Wymagane elementy podrzędne XML: id, name, latitude, longitude, address.
  • Wymagane atrybuty: capacity i website. Zapoznaj się z linkami bezpośrednimi do kwater wakacyjnych w pliku danych z informacjami o kwaterach. Dzięki temu użytkownicy mogą odwiedzić witrynę obiektu.

Szczegółowe informacje o wymaganych elementach podrzędnych XML znajdziesz w sekcji Elementy podrzędne XML.

Więcej informacji o kwaterach wakacyjnych znajdziesz w artykule Atrybuty unikalne dla kwater wakacyjnych.

Gdy Google na podstawie innych źródeł stwierdzi, że wartość atrybutu jest inna niż podana w pliku danych dla informacji o kwaterze wakacyjnej, wyświetli tę wartość w informacjach. Jeśli na przykład na podstawie zdjęć obiektu Google stwierdzi, że ma on kuchnię, ale atrybut kitchen jest nieobecny lub ma wartość No, Google uzna, że obiekt ma kuchnię. Te atrybuty są nazywane „atrybutami wywnioskowanymi” i wyświetlają się tylko wtedy, gdy istnieje wysoki poziom pewności co do dokładności wnioskowania.

<review>

Zawiera opinię użytkownika lub redakcyjną. W elemencie <listing> nie musisz umieszczać wszystkich opinii o informacjach. Ten element służy do umieszczania wybranych opinii, które wskazują na funkcje lub jakość tej wizytówki.

Element <review> występuje w tym miejscu w hierarchii pliku danych XML listy hoteli:

+ <listings>
    + <language>
    + <listing>
        + <content>
            + <review>

Składnia

Element <review> ma tę składnię:

<?xml version="1.0" encoding="UTF-8"?>
<listings ... >
  <listing>
    <content>
      ...
      <!-- Specify <review>'s child elements in the order shown below. -->
      <review type="editorial">
        <link>review_link</link>
        <title>review_title</title> <!-- Title is for reviews of type "editorial" only -->
        <author>review_author</author>
        <rating>review_rating</rating>
        <body>review_text</body>
        <date>review_date</date>
        <servicedate>review_servicedate</servicedate>
      </review>
      <review type="user">
        <link>review_link</link>
        <author>review_author</author>
        <date month="MM" day="DD" year="YYYY"/>  <!-- Date is for reviews of type "user" only -->
        <servicedate month="MM" day="DD" year="YYYY"/>  <!-- Service Date is for reviews of type "user" only -->
        <rating>review_rating</rating>
        <body>review_text</body>
      </review>
    </content>
  </listing>
</listings>

Atrybuty

Element <review> ma te atrybuty:

Atrybut Wymagany? Opis
type Required Rodzaj opinii. Ustaw jedną z tych wartości:
  • editorial: opinia opublikowana w witrynie lub przez inny organ opiniotwórczy.
  • user: opinia użytkownika.

Elementy potomne

Element <review> ma te elementy podrzędne:

Element podrzędny Wymagany? Typ Opis
<link> Optional string Link do opinii. Ten element musi zawierać „http://” lub „https://”.
<title> Optional string (Tylko opinie redakcyjne) Tytuł opinii.
<author> Optional string Autor opinii, np. „Susan von Trapp”. Może to być też nazwa witryny lub publikacji, w której pojawia się opinia, jeśli nie jest ona przypisana do konkretnego autora.
<rating> Optional string Liczba zmiennoprzecinkowa z przedziału od 0 do 10 (włącznie) reprezentująca ocenę opinii. Na przykład „8.9”.
<body> Optional string Tekst opinii. Ten element nie powinien zawierać kodu HTML.
<date month="MM" day="DD" year="YYYY"/> Optional Object (Tylko opinie użytkowników) Data opinii, którą określasz za pomocą tych atrybutów elementu:
  • day: dzień miesiąca, np. „7”.
  • month: miesiąc, w którym 1 = styczeń, a 12 = grudzień.
  • year: czterocyfrowy rok, np. „2023”.

Na przykład 7 czerwca 2023 r. zapisuje się w ten sposób:

<date month="6" day="7" year="2023"/>
<servicedate month="MM" day="DD" year="YYYY"/> Optional Object (Tylko opinie użytkowników) Data, kiedy osoba pisząca opinię odwiedziła stronę z informacjami o aplikacji. Format jest taki sam jak w przypadku elementu <date>.

Na przykład 7 czerwca 2023 r. zapisuje się w ten sposób:

<servicedate month="6" day="7" year="2023"/>

Opinie, w których nie podano co najmniej miesiąca i roku w polu <servicedate>, mogą nie być wyświetlane. Dzień nie jest wymagany.

Przykład

Ten przykład przedstawia częściową listę hoteli z informacjami o hotelu, które zawierają redakcyjną i użytkownika:

<?xml version="1.0" encoding="UTF-8"?>
<listings xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:noNamespaceSchemaLocation="http://www.gstatic.com/localfeed/local_feed.xsd">
  <language>en</language>
  <listing>
    <id>123456</id>
    <name>My Apartment</name>
    <address format="simple">
      <component name="addr1">1 Sandstone Building</component>
      <component name="city">Los Angeles</component>
      <component name="postal_code">90210</component>
      <component name="province">CA</component>
    </address>
    <country>US</country>
    <latitude>40.730610</latitude>
    <longitude>-73.935242</longitude>
    <phone type="main">12345678</phone>
    <category>hotel</category> <!-- You can use whatever property type categories you wish -->
    <content>
      <text type="description">
        <link>https://examplelisting.com/listings/12345</link>
        <title>3 bedrooms with ocean views</title>
        <body>Stay in this newly renovated 3BR house with ocean views.</body>
        <date month="7" day="23" year="2023"/>
      </text>
      <review type="editorial">
        <link>https://example.com/reviews/42</link>
        <title>A little piece of heaven</title>
        <author>EXAMPLE.COM</author>
        <rating>8</rating>
        <body>This place is really good.</body>
      </review>
      <review type="user">
        <link>https://exampleperson.org/reviews/82</link>
        <author>Susan von Trapp</author>
        <rating>6</rating>
        <body>Not a bad place, but I prefer to be closer to the beach.</body>
        <date day="6" month="7" year="2023"/>
        <servicedate day="16" month="6" year="2023"/>
      </review>
      <attributes>
        <website>https://hotel.example.com</website>
        <client_attr name="rating">8.2</client_attr>
        <client_attr name="num_reviews">14</client_attr>
      </attributes>
      <image type="photo" url="https://image_url">
        <link>https://image_url</link>
        <title>Main hotel picture</title>
      </image>
    </content>
  </listing>
  ...
</listings>

Wartości zmiennej attribute_name

W tabeli poniżej znajdziesz listę prawidłowych wartości atrybutu attribute_name w elemencie <client_attr name="attribute_name">. Zalecamy jednak podanie dodatkowych wartości attribute_name, jeśli są dostępne.

Wartości dla: attribute_name Wymagany? Opis Prawidłowe wartości treści
capacity Required Maksymalna liczba gości, jaką może pomieścić obiekt. Ta wartość powinna być równa lub większa niż „number_of_bedrooms”. Non-negative integer value
website Required Adres URL witryny usługi. Free text
partner_hygiene_link Strongly recommended Link do zewnętrznej witryny partnera, w której znajdziesz więcej informacji o szczegółach dotyczących higieny w przypadku danej oferty. Free text (the site's URL)
number_of_bathrooms Strongly recommended Liczba łazienek. Non-negative float value, for example, 1, 1.5, 2
number_of_bedrooms Strongly recommended Liczba sypialni. Non-negative integer value
number_of_beds Strongly recommended Liczba łóżek we wszystkich pokojach. Non-negative integer value
self_checkin_checkout Recommended Czy obiekt umożliwia samodzielne zameldowanie się i wymeldowanie. Yes/No/Unknown
rating Strongly recommended Liczba zmiennoprzecinkowa reprezentująca łączną ocenę obiektu. Ta liczba zwykle mieści się w zakresie 0–5, 0–10 lub 0–100, ale możesz użyć dowolnego zakresu, który odpowiada Twojemu systemowi ocen. Non-negative float value
rating_num Strongly recommended Liczba ocen, które ma obiekt. Non-negative integer value
rating_scale Strongly recommended Maksymalna ocena możliwa w przypadku obiektu. Na przykład w przypadku skali oceny 5 ocena obiektu powinna wynosić 3 lub 4.

Uwaga: jeśli nie podasz wartości, domyślna skala oceny to 0–10.

Non-negative integer value
instant_bookable Strongly recommended Czy w procesie płatności można natychmiast zarezerwować pokój. Alternatywą jest oczekiwanie na zatwierdzenie. Yes/No/Unknown
description Strongly recommended Tekst niesformatowany opisujący unikalne cechy obiektu Free text
category Strongly recommended rodzaj obiektu, np. willa, bungalow, domek lub apartament; Free text
ac Recommended Czy obiekt jest klimatyzowany. Yes/No/Unknown
beach_access Recommended Czy obiekt ma dostęp do publicznej plaży w pobliżu. Yes/No/Unknown
check_in_time Recommended Dokładna godzina zameldowania w obiekcie. Akceptowane formaty to GGMM, GG:MM i GG:MM:SS. Na przykład zamiast 14:00 lub 14:00 użyj 14:00. Wszystkie pozostałe formaty nie będą analizowane ani wyświetlane. Time
check_out_time Recommended Dokładna godzina wymeldowania z obiektu. Akceptowane formaty to GGMM, GG:MM i GG:MM:SS. Na przykład zamiast 11:00 rano lub 11:00am użyj 11:00. Wszystkie pozostałe formaty nie będą analizowane ani wyświetlane. Time
child_friendly Recommended Czy obiekt jest odpowiedni dla dzieci. Yes/No/Unknown
crib Recommended Dostępność łóżeczka dziecięcego. Yes/No/Unknown
elevator Recommended Czy w obiekcie znajduje się winda. Yes/No/Unknown
gym_fitness_equipment Recommended Czy w obiekcie znajduje się siłownia lub sprzęt do ćwiczeń. Yes/No/Unknown
heating Recommended Czy obiekt jest ogrzewany. Yes/No/Unknown
hot_tub Recommended Czy obiekt ma jacuzzi. Yes/No/Unknown
ironing_board Recommended Czy w obiekcie znajduje się deska do prasowania. Yes/No/Unknown
kitchen Recommended Czy w obiekcie znajduje się kuchnia. Yes/No/Unknown
microwave Recommended Czy w obiekcie znajduje się kuchenka mikrofalowa. Yes/No/Unknown
min_days_advance_purchase Recommended Minimalna liczba dni wyprzedzenia, z jakim można zarezerwować obiekt. Non-negative integer value
min_night_stay Recommended Minimalna liczba nocy, na które gość może zarezerwować obiekt. Positive integer (more than zero)
max_night_stay Recommended Maksymalna liczba nocy, na jaką gość może zarezerwować obiekt. Positive integer (more than zero)
outdoor_grill Recommended Czy obiekt ma grilla. Yes/No/Unknown
oven_stove Recommended Czy w obiekcie znajduje się kuchenka. Yes/No/Unknown
parking_type Recommended Rodzaj parkingu dostępnego na terenie obiektu. Free/Paid/None
patio Recommended Czy obiekt ma patio. Yes/No/Unknown
pets_allowed Recommended W niektórych lub wszystkich pokojach goście mogą przebywać ze zwierzętami domowymi – psami lub kotami, które nie są zwierzętami asystującymi. Yes/No/Unknown
pool_type Recommended Rodzaj basenu (dostęp do basenu) w obiekcie. Indoors, Outdoors, Indoors/Outdoors, None
room_type Recommended Rodzaj pokoju. ENTIRE_PLACE to jedyna obsługiwana wartość. ENTIRE_PLACE
smoking_free_property Recommended Czy w obiekcie obowiązuje zakaz palenia. Yes/No/Unknown
special_service_level Recommended Czy poziom usługi w przypadku tej wizytówki jest w jakiś sposób specjalny. Przykłady: verified, luxury, premium Yes/No/Unknown
square_footage Recommended Powierzchnia nieruchomości w stopach kwadratowych. Non-negative float value
square_meters Recommended Powierzchnia nieruchomości w metrach kwadratowych. Non-negative float
tv Recommended Czy w obiekcie znajduje się telewizor. Yes/No/Unknown
washer_dryer Recommended Czy w obiekcie znajdują się pralki. Yes/No/Unknown
wheelchair_accessible Recommended Dostępność obiektu dla osób na wózkach inwalidzkich. Yes/No/Unknown
internet_type Recommended Rodzaj dostępu do internetu Wi-Fi zapewnianego przez obiekt. Free/Paid/None
airport_shuttle Optional Czy gospodarz zapewnia transport między hotelem a lotniskiem lub innymi terminalami. Yes/No/Unknown
balcony Optional Czy obiekt ma balkon. Yes/No/Unknown
fire_place Optional Czy w obiekcie znajduje się kominek. Yes/No/Unknown
free_breakfast Optional Czy śniadanie jest wliczone w cenę. Yes/No/Unknown
host_description Optional Opis gospodarza kwatery wakacyjnej. Free text
host_language Optional Języki, którymi posługuje się gospodarz. Lista kodów języków rozdzielonych przecinkami, np. de, en
host_name Optional Imię i nazwisko gospodarza kwatery wakacyjnej. Free text
host_response_rate Optional Średni współczynnik odpowiedzi gospodarza. Non-negative float value, for example, 1, 0.75, 0.5
host_response_time Optional Średni czas odpowiedzi gospodarza. Free text
license_num Optional Numer licencji (turystycznej lub firmy) wymagany w przypadku obiektów w określonych regionach świata. Można go powtarzać. Jeśli istnieje kilka licencji, zalecamy dodanie urzędu wystawiającego licencję (na przykład: „Paryż: 123456ABC”). Free text
number_of_half_bathrooms Optional Liczba łazienek bez prysznica lub wanny. Non-negative integer value
number_of_living_rooms Optional Liczba salonów. Non-negative integer value
private_beach_access Optional Czy obiekt ma specjalny dostęp do niepublicznej plaży. Yes/No/Unknown
refund_policy Optional Zasady zwrotów dotyczące obiektu. Free text

Elementy podrzędne XML

Wymagane są te elementy podrzędne XML:

Element podrzędny Wymagany? Typ Opis
<country> Strongly recommended string Kraj, w którym znajduje się ta wizytówka. Wartością musi być dwuliterowy kod kraju zgodny z normą ISO 3116. Na przykład Stany Zjednoczone to US, a Kanada to CA:
    <country>US</country>
<id> Required string Unikalny identyfikator usługi. Pamiętaj, że każdy obiekt wakacyjny musi mieć identyfikator, który jest unikalny w Twojej witrynie i nigdy nie powinien być ponownie używany.
<latitude> Required float Szerokość geograficzna odpowiadająca lokalizacji hotelu, Na przykład:
    <latitude>37.423738</latitude>

Tę wartość można wygenerować za pomocą narzędzi do geokodowania, takich jak interfejs API Map Google.

<longitude> Required float Długość geograficzna odpowiadająca lokalizacji hotelu, Na przykład:
    <longitude>-122.090101</longitude>

Tę wartość można wygenerować za pomocą narzędzi do geokodowania, takich jak interfejs API Map Google.

<name> Required string Nazwa usługi. Maksymalnie 300 znaków.
<address> Required string or Object

Pełny adres fizycznej lokalizacji obiektu w formie ciągu znaków. Adres musi zawierać nazwę ulicy i numer domu. Jeśli nie ma adresu, powinien on zawierać kod plus. W stosownych przypadkach należy podać numer mieszkania lub lokalu.

Możesz też podać adres „złożony”. Użyj elementów podrzędnych <component>, aby opisać poszczególne części adresu:

  • addr1: podstawowy adres pocztowy.
  • addr2: w razie potrzeby dodatkowy adres, w tym numer mieszkania.
  • city: miasto.
  • province: w razie potrzeby stan, region lub prowincja.
  • postal_code: kod pocztowy.
  • country: kraj.

Skrytki pocztowe ani inne adresy korespondencyjne nie są uznawane za pełne adresy hoteli.

Oto przykłady pełnego adresu:

<address>6 Acacia Ave Apt. 2, Nottingham NG8 6FT, UK/address>
<address>
  <component name="addr1">6 Acacia Ave</component>
  <component name="addr2">Apt. 2</component>
  <component name="city">Nottingham </component>
  <component name="postal_code">NG8 6FT</component>
  <component name="country">UK</component>
</address>

Oto przykłady pełnego adresu z użyciem kodu plus:

<address>XQHM+7VF Nottingham NG8 6FT, UK/address>
<address>
  <component name="addr1">XQHM+7VF</component>
  <component name="city">Nottingham </component>
  <component name="postal_code">NG8 6FT</component>
  <component name="country">UK</component>
</address>

Unikaj tych działań:

  • Zbędne informacje: nie podawaj zbędnych informacji ani nie powtarzaj elementów adresu.
  • Brak adresu ulicy: adresy muszą zawierać nazwę i numer ulicy.

Przykład informacji o kwaterze wakacyjnej

<?xml version="1.0" encoding="UTF-8"?>
<listings>
  <language>en</language>
  <listing>
    <id>123456</id>
    <name>Apartment Name</name>
    <address format="simple">
      <component name="addr1">18733 Clark Way</component>
      <component name="addr2">#C10</component>
      <component name="city">Mountain View</component>
      <component name="postal_code">94043</component>
      <component name="province">California</component>
    </address>
    <country>US</country>
    <latitude>37.4182515</latitude>
    <longitude>-122.0742354</longitude>
    <phone type="main">12345678</phone>
    <category>vacation_villa</category>
    <date day="21" month="12" year="2017"/>
    <content>
      <text type="description">
        <link>https://list_url</link>
        <title>Description Title</title>
        <body>Description Body</body>
      </text>
      <review type="editorial">
        <link>https://example.com/reviews/42</link>
        <title>A little piece of heaven</title>
        <author>EXAMPLE</author>
        <rating>8</rating>
        <body>This place is really good.</body>
      </review>
      <review type="user">
        <link>https://exampleperson.org/reviews/82</link>
        <author>Susan von Trapp</author>
        <rating>6</rating>
        <body>Not a bad place, but I prefer to be closer to the beach.</body>
        <date day="6" month="7" year="2017"/>
        <servicedate day="16" month="6" year="2017"/>
      </review>
      <attributes>
        <website>https://hotel.example.com/123456</website>
        <client_attr name="capacity">7</client_attr>
        <client_attr name="cleaning_disinfection">Yes</client_attr>
        <client_attr name="min_days_between_stays">3</client_attr>
        <client_attr name="enhanced_cleaning_practices">Yes</client_attr>
        <client_attr name="partner_hygiene_link">http://www.example.com/hygiene/</client_attr>
        <client_attr name="number_of_bathrooms">2</client_attr>
        <client_attr name="number_of_bedrooms">3</client_attr>
        <client_attr name="number_of_beds">4</client_attr>
        <client_attr name="self_checkin_checkout">Yes</client_attr>
        <client_attr name="rating">4.8</client_attr>
        <client_attr name="rating_num">5373</client_attr>
        <client_attr name="rating_scale">5</client_attr>
        <client_attr name="ac">Yes</client_attr>
        <client_attr name="airport_shuttle">Yes</client_attr>
        <client_attr name="balcony">No</client_attr>
        <client_attr name="beach_access">Yes</client_attr>
        <client_attr name="check_in_time">15:00</client_attr>
        <client_attr name="check_out_time">11:00</client_attr>
        <client_attr name="child_friendly">Yes</client_attr>
        <client_attr name="crib">Unknown</client_attr>
        <client_attr name="elevator">Yes</client_attr>
        <client_attr name="fire_place">Unknown</client_attr>
        <client_attr name="free_breakfast">Yes</client_attr>
        <client_attr name="gym_fitness_equipment">Yes</client_attr>
        <client_attr name="heating">Yes</client_attr>
        <client_attr name="host_description">A short description about the host and their interests</client_attr>
        <client_attr name="host_name">The name of the host</client_attr>
        <client_attr name="host_language">en, da, el</client_attr>
        <client_attr name="host_response_rate">0.75</client_attr>
        <client_attr name="host_response_time">1 hour</client_attr>
        <client_attr name="hot_tub">Yes</client_attr>
        <client_attr name="instant_bookable">Yes</client_attr>
        <client_attr name="internet_type">Free</client_attr>
        <client_attr name="ironing_board">No</client_attr>
        <client_attr name="kitchen">Yes</client_attr>
        <client_attr name="license_num">Free text. If multiple licenses exist, we suggest adding authority of the licence as context</client_attr>
        <client_attr name="license_num">Paris: 123456ABC</client_attr>
        <client_attr name="microwave">Yes</client_attr>
        <client_attr name="max_night_stay">7</client_attr>
        <client_attr name="min_days_advance_purchase">2</client_attr>
        <client_attr name="min_night_stay">3</client_attr>
        <client_attr name="number_of_living_rooms">1</client_attr>
        <client_attr name="outdoor_grill">No</client_attr>
        <client_attr name="oven_stove">Yes</client_attr>
        <client_attr name="parking_type">Free</client_attr>
        <client_attr name="patio">Unknown</client_attr>
        <client_attr name="pets_allowed">Yes</client_attr>
        <client_attr name="pool_type">Indoors</client_attr>
        <client_attr name="private_beach_access">Unknown</client_attr>
        <client_attr name="room_type">ENTIRE_PLACE</client_attr>
        <client_attr name="refund_policy">The refund policy for the property</client_attr>
        <client_attr name="smoking_free_property">Yes</client_attr>
        <client_attr name="special_service_level">No</client_attr>
        <client_attr name="square_footage">1200</client_attr>
        <client_attr name="tv">Yes</client_attr>
        <client_attr name="washer_dryer">Yes</client_attr>
        <client_attr name="wheelchair_accessible">Yes</client_attr>
      </attributes>
    </content>
  </listing>
</listings>