Documentation de référence XML pour les listes d'hôtels

Une liste d'hôtels est un ou plusieurs fichiers XML répertoriant tous les hôtels pour lesquels vous fournissez des informations tarifaires. Le fichier de liste d'hôtels lui-même ne contient pas d'informations tarifaires.

L'élément racine d'une liste d'hôtels est l'élément <listings>, qui contient les éléments <listing> qui décrivent vos établissements.

Vous créez une liste d'hôtels lors de votre implémentation initiale, puis vous ajoutez ou supprimez des hôtels dans le cadre d'une maintenance régulière.

Assurez-vous que vos fichiers sont conformes aux consignes de syntaxe. Par exemple, utilisez l'encodage UTF-8 et spécifiez ce schéma d'encodage en incluant l'attribut encoding dans votre balise XML.

Après avoir créé une liste d'hôtels, vous pouvez l'importer manuellement sur Google à l'aide de Hotel Center ou l'héberger sur votre serveur.

Identifier et corriger les problèmes de données

Pour identifier et résoudre les problèmes de données dans votre liste d'hôtels, consultez les articles suivants:

Exigences concernant les fiches

Pour être éligible à Google Hotel Ads, un établissement de votre liste d'hôtels doit remplir les critères suivants:

  • Disposer de chambres où les clients peuvent séjourner
  • Avoir une présence physique et un emplacement fixe ouvert au public
  • Murs fixes et plomberie
  • Ne pas imposer une durée minimale de séjour supérieure à sept jours

Les croisières et les appartements sont des exemples courants d'établissements inéligibles, car ils ne répondent généralement pas aux critères Listing requirements.

Les chalets et autres établissements de camping avec des murs fixes, des services de plomberie et de contrôle de la température (y compris des poêles à bois ou des radiateurs au propane) sont éligibles. Les hébergements d'extérieur qui ne sont pas éligibles sont les suivants:

  • Emplacements de camping où les clients dorment sous des tentes
  • Terrains pour camping-cars où les clients apportent leur propre camping-car

<listings>

<listings> est l'élément racine d'une liste d'hôtels. Il contient un élément <language> et au moins un élément <listing>.

L'élément <listings> apparaît à l'emplacement suivant dans la hiérarchie XML de la liste d'hôtels:

+ <listings>
    + <language>
    + <datum>
    + <listing>

Syntaxe

L'élément <listings> utilise la syntaxe suivante :

<?xml version="1.0" encoding="UTF-8"?>
<listings xmlns:xsi="xsi"
    xsi:noNamespaceSchemaLocation="schema_xsd">
  <language> language_code</language>
  <datum> datum_code </datum>
  <listing> listing</listing>
  ...
</listings>

Attributs

L'élément <listings> comporte les attributs suivants :

Attribute nécessaire Description
xmlns:xsi Obligatoire Définissez cet élément sur http://www.w3.org/2001/XMLSchema-instance.
xsi:noNamespaceSchemaLocation Obligatoire Définissez cet élément sur http://www.gstatic.com/localfeed/local_feed.xsd.

Éléments enfants

L'élément <listings> comporte les éléments enfants suivants :

Élément enfant Obligatoire ? Type Description
<language> Required string Langue dans laquelle votre flux est écrit. Définissez la valeur de cet élément sur un code de langue à deux lettres. Par exemple, en pour l'anglais.
<datum> Optional enum Cet élément spécifie le modèle de référence géodésique ou le modèle de référence des coordonnées de latitude/longitude fournies dans le flux. Si aucune valeur de référence n'est fournie, la valeur par défaut de cet élément est WGS84, qui est utilisée par la plupart des appareils GPS modernes. Les plans de référence de Tokyo ne s'appliquent qu'aux adresses situées au Japon.

Les valeurs valides pour cet élément sont les suivantes:

  • WGS84
  • wgs84
  • TOKYO
  • tokyo
Remarque:Pour utiliser la valeur par défaut WGS84, n'incluez pas l'élément <datum> dans la liste d'hôtels.
<listing> Required <listing> Une ou plusieurs entrées décrivant chaque hôtel du flux. Notez que chaque hôtel de la liste doit avoir un identifiant propre à votre site, qui ne doit jamais être réutilisé.

Exemples

Adresse structurée

L'exemple suivant présente une liste d'hôtels partielle avec une adresse structurée:

<?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>
    <!-- The value of <id> must be unique to your site for all time. Do NOT reuse IDs. -->
    <id>123abc</id>
    <name>Belgrave House</name>
    <address format="simple">
      <component name="addr1">6 Acacia Ave</component>
      <component name="addr2">Floor 5</component>
      <component name="city">London</component>
      <component name="province">Greater London</component>
      <component name="postal_code">SW1W 9TQ</component>
    </address>
    <country>GB</country>
    <latitude>35.070374</latitude>
    <longitude>-106.213648</longitude>
    <phone type="main">123-456-7890</phone>
    <category>hotel</category> <!-- You can use whatever property type categories you wish -->
  </listing>
  ...
</listings>

Adresse à format libre

L'exemple suivant présente une liste d'hôtels partielle avec une adresse au format libre:

<?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>
    <!-- The value of <id> must be unique to your site for all time. Do NOT reuse IDs. -->
    <id>123abc</id>
    <name>Belgrave House</name>
    <address>6 Elm Ave, Boston, MA, 02472</address>
    <country>US</country>
    <latitude>35.070374</latitude>
    <longitude>-106.213648</longitude>
    <phone type="main">123-456-7890</phone>
    <category>hotel</category> <!-- You can use whatever property type categories you wish -->
  </listing>
  ...
</listings>

Contenu facultatif

L'exemple suivant présente une liste d'hôtels partielle avec une fiche contenant un élément <content> facultatif:

<?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>

<listing>

Définition d'un hôtel dans un élément <listings> de la liste d'hôtels.

L'élément <listing> apparaît à l'emplacement suivant dans la hiérarchie XML du flux Hotel List Feed:

+ <listings>
    + <language>
    + <listing>

Syntaxe

L'élément <listing> utilise la syntaxe suivante :

<?xml version="1.0" encoding="UTF-8"?>
<listings ... >
  <listing>
    <!-- Specify <listing>'s child elements in the order shown below. -->
    <id>hotel_ID</id>
    <name>hotel_name</name>
    <address>
      <component name="addr1">street_address_1</component>
      <component name="addr2">street_address_2</component>
      <component name="city">city_name</component>
      <component name="province">province_name</component>
      <component name="postal_code">postal_code</component>
    </address>
    <!-- You can also define an address freeform, although this is not recommended: -->
    <!-- <address>freeform_address</address> -->

    <country>country_code</country>
    <latitude>hotel_latitude</latitude>
    <longitude>hotel_longitude</longitude>
    <phone type="[fax|main|mobile|tdd|tollfree]">phone_number</phone>
    <category>hotel</category> <!-- You can use whatever property type categories you wish -->
    <content>content</content>
  </listing>
</listings>

Attributs

L'élément <listing> ne comporte aucun attribut.

Éléments enfants

L'élément <listing> comporte les éléments enfants suivants :

Élément enfant Obligatoire ? Type Description
<id> Required string Identifiant unique de l'hôtel.

Remarque: Cette valeur doit toujours être propre à votre site. Ne réutilisez pas les ID, car cela pourrait entraîner des problèmes lors de la résolution des problèmes de correspondance des établissements.

<name> Required string Nom de l'hôtel. Exemple :
<name>Belgrave House</name>
<address> Required Object or string

Emplacement physique complet de l'hôtel.

Cet élément comporte un seul attribut, format, que vous devez définir sur simple.

Vous devez au minimum fournir l'adresse postale, la ville, l'État ou la région, ainsi que le code postal de l'hôtel. Utilisez des éléments enfants <component> pour décrire chacune des parties suivantes de l'adresse:

  • addr1: adresse postale principale de l'hôtel.
  • addr2: adresse postale secondaire, si nécessaire.
  • addr3: troisième partie de l'adresse postale, si nécessaire.
  • city: nom de la ville de l'hôtel.
  • province: nom de l'État, de la région ou de la province de l'hôtel.
  • postal_code: code postal de l'hôtel.

Exemple :

<address format="simple">
  <component name="addr1">6 Acacia Ave</component>
  <component name="addr2">Floor 5</component>
  <component name="city">London</component>
  <component name="province">Greater London</component>
  <component name="postal_code">SW1W 9TQ</component>
</address>

Vous pouvez également fournir une adresse de format libre, bien que cela ne soit pas recommandé. Exemple :

<address>6 Elm Ave, Boston, MA, 02472</address>

Notez que les boîtes postales et les autres adresses postales ne sont pas considérées comme des adresses physiques à part entière.

<country> Required string Pays dans lequel se trouve l'établissement. La valeur doit être un code pays à deux lettres. Exemples : "US" pour les États-Unis ou "CA" pour le Canada. Exemple :
<country>US</country>
<latitude> Required* float Latitude de l'emplacement de l'hôtel. Exemple :
<latitude>37.423738</latitude>

Cette valeur peut être générée avec des outils de géocodage tels que l'API Google Maps.

<longitude> Required* float Longitude de l'emplacement de l'hôtel. Exemple :
<longitude>-122.090101</longitude>

Cette valeur peut être générée avec des outils de géocodage tels que l'API Google Maps.

<location_precision> Optional integer Précision de l'emplacement de l'établissement envoyée en mètres lorsque la latitude et la longitude de l'établissement sont obscurcies. La valeur zéro (0) signifie qu'il n'y a pas d'obscurcissement et qu'il s'agit de l'emplacement exact. Remarque : Cet élément ne s'applique qu'aux locations de vacances.
<phone> Required* string

Un ou plusieurs numéros de téléphone pour l'hôtel. S'il s'agit d'une succursale, veuillez fournir le numéro de téléphone propre à cette succursale (et non celui du siège social).

L'attribut type peut être l'un des éléments suivants:

  • fax: numéro de fax.
  • main: numéro de téléphone principal.
  • mobile: numéro de téléphone mobile.
  • tdd: numéro de téléphone pour les sourds et malentendants.
  • tollfree: numéro de téléphone sans frais.

Exemple :

<!-- Singapore (country code +65) -->
<phone type="main">+65 6722-2323</phone>
<!-- U.S. (country code +1) -->
<phone type="fax">+1 408-555-1111</phone>

Vous devez au minimum fournir un type main.

<category> Optional string Type d'établissement, par exemple un hôtel. Les partenaires peuvent utiliser les catégories internes dont ils disposent pour décrire leur établissement, comme "hôtels d'affaires", "complexes hôteliers", "motels" et autres.
<content> Optional <content> Informations facultatives utilisées dans la fiche, telles qu'une description, des notes et des caractéristiques de l'établissement.

* Vous devez indiquer un numéro de téléphone ou une latitude/longitude. Nous vous recommandons de définir les deux.

Exemples

Adresse structurée

L'exemple suivant présente une liste d'hôtels partielle avec une adresse structurée:

<?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>
    <!-- The value of <id> must be unique to your site for all time. Do NOT reuse IDs. -->
    <id>123abc</id>
    <name>Belgrave House</name>
    <address format="simple">
      <component name="addr1">6 Acacia Ave</component>
      <component name="addr2">Floor 5</component>
      <component name="city">London</component>
      <component name="province">Greater London</component>
      <component name="postal_code">SW1W 9TQ</component>
    </address>
    <country>GB</country>
    <latitude>35.070374</latitude>
    <longitude>-106.213648</longitude>
    <phone type="main">123-456-7890</phone>
    <category>hotel</category> <!-- You can use whatever property type categories you wish -->
  </listing>
  ...
</listings>

Adresse à format libre

L'exemple suivant présente une liste d'hôtels partielle avec une adresse au format libre:

<?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>
    <!-- The value of <id> must be unique to your site for all time. Do NOT reuse IDs. -->
    <id>123abc</id>
    <name>Belgrave House</name>
    <address>6 Elm Ave, Boston, MA, 02472</address>
    <country>US</country>
    <latitude>35.070374</latitude>
    <longitude>-106.213648</longitude>
    <phone type="main">123-456-7890</phone>
    <category>hotel</category> <!-- You can use whatever property type categories you wish -->
  </listing>
  ...
</listings>

Contenu facultatif

L'exemple suivant présente une liste d'hôtels partielle avec une fiche contenant un élément <content> facultatif:

<?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>

<content>

Ajoute des informations sur une fiche, telles que des notes et des avis, les services proposés et d'autres détails. L'élément <content> est facultatif. Dans <content>, tous les éléments enfants sont facultatifs.

L'élément <content> apparaît à l'emplacement suivant dans la hiérarchie XML du flux Hotel List Feed:

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

Syntaxe

L'élément <content> utilise la syntaxe suivante :

<?xml version="1.0" encoding="UTF-8"?>
<listings ... >
  <listing>
    <content>
      <!-- Specify <text>'s child elements in the order shown below. -->
      <text type="description">
        <link>listing_link</link>
        <title>listing_title</title>
        <author>listing_author</author>
        <body>listing_description</body>
        <date month="MM" day="DD" year="YYYY"/>
      </text>
      <!-- 0 or more reviews: -->
      <review type="[editorial|user]">
        ...
      </review>
      <!-- 0 or more attributes: -->
      <attributes>
        <website>https://hotel.example.com</website>
        <client_attr name="alternate_hotel_id">alternate_hotel_id</client_attr>
        <client_attr name="custom_0">custom_attribute_0</client_attr>
        <client_attr name="custom_1">custom_attribute_1</client_attr>
        <client_attr name="custom_2">custom_attribute_2</client_attr>
        <client_attr name="custom_3">custom_attribute_3</client_attr>
        <client_attr name="custom_4">custom_attribute_4</client_attr>
        <client_attr name="hotel_brand">hotel_brand</client_attr>
        <client_attr name="num_reviews">number_of_reviews</client_attr>
        <client_attr name="rating">aggregate_rating</client_attr>
      </attributes>
      <!-- a picture of the hotel or property-->
      <image type="photo" url="https://image_url">
        <link>https://image_url</link>
        <title>Main Hotel Picture</title>
      </image>
    </content>
  </listing>
  ...
</listings>

Attributs

L'élément <content> ne comporte aucun attribut.

Éléments enfants

L'élément <content> comporte les éléments enfants suivants :

Élément enfant Obligatoire ? Type Description
<text type="description"> Optional Object

Page Web associée à la fiche du fournisseur. associé aux éléments enfants suivants :

  • <link>: lien vers la description. Incluez "http://" ou
    "https://" dans cet élément (facultatif).
  • <title>: titre de la description (facultatif).
  • <author>: auteur de la description (facultatif).
  • <body>: corps de la description (obligatoire).
  • <date>: date de la description (facultatif).
  • Remarque: Ces éléments doivent apparaître dans l'ordre ci-dessus.

<review type="[editorial|user]"> Optional <review>

Contient un avis d'utilisateur ou de rédaction sur la fiche. Votre fiche peut contenir un nombre illimité d'avis, quel que soit leur type.

Vous n'avez pas besoin d'inclure tous les avis sur un établissement dans votre élément <listing>. Cet élément vous permet d'inclure une sélection d'avis qui illustrent les caractéristiques ou la qualité de cette fiche.

<attributes> Optional Object

Contient 0, un ou plusieurs éléments enfants <client_attr> qui fournissent des informations sur l'établissement. Les éléments enfants utilisent la syntaxe suivante:

<client_attr name="attribute_name">attribute_value<client_attr>

Pour obtenir la liste et la description des éléments enfants, consultez <attributes>.

Tous les éléments <client_attr> sont facultatifs.

S'il existe un élément enfant <website>, il doit être positionné avant tout élément <client_attr>.

<image> Optional Object Tag répété contenant des informations détaillées sur l'image.

Exemple

L'exemple suivant présente une liste d'hôtels partielle incluant l'élément <content>:

<?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>

<review>

Contient un avis d'utilisateur ou de rédaction. Vous n'avez pas besoin d'inclure tous les avis concernant une fiche dans votre élément <listing>. Cet élément vous permet d'inclure des avis sélectionnés qui reflètent les caractéristiques ou la qualité de cette fiche.

L'élément <review> apparaît à l'emplacement suivant dans la hiérarchie XML du flux Hotel List Feed:

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

Syntaxe

L'élément <review> utilise la syntaxe suivante :

<?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>

Attributs

L'élément <review> comporte les attributs suivants :

Attribute nécessaire Description
type Required Type d'avis. Définissez l'une des valeurs suivantes :
  • editorial: avis publié par un site Web ou une autre autorité d'évaluation
  • user: avis d'un utilisateur final

Éléments enfants

L'élément <review> comporte les éléments enfants suivants :

Élément enfant Obligatoire ? Type Description
<link> Optional string Lien vers l'avis. Incluez "http://" ou "https://" dans cet élément.
<title> Optional string (Avis de journalistes uniquement) Titre de l'avis.
<author> Optional string Auteur de l'avis (par exemple, "Susan von Trapp"). Il peut également s'agir du nom d'un site Web ou d'une publication sur lesquels l'avis apparaît s'il n'est pas mentionné.
<rating> Optional string Nombre à virgule flottante compris entre 0 et 10 (inclus) représentant la note de l'avis. Exemple : "8.9".
<body> Optional string Texte de l'avis. Cet élément ne doit pas contenir de code HTML.
<date month="MM" day="DD" year="YYYY"/> Optional Object (Avis des utilisateurs uniquement) Date de l'avis, que vous spécifiez avec les attributs suivants de cet élément :
  • day: jour du mois (par exemple, "7").
  • month: mois, où 1 = janvier ... 12 = décembre.
  • year: année à quatre chiffres, par exemple "2023".

Par exemple, le 7 juin 2023 s'écrit comme suit:

<date month="6" day="7" year="2023"/>
<servicedate month="MM" day="DD" year="YYYY"/> Optional Object (Avis des utilisateurs uniquement) Date à laquelle le contributeur a consulté la fiche en cours d'examen. Le format est le même que pour <date> ci-dessus.

Par exemple, le 7 juin 2023 s'écrit comme suit:

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

Les avis pour lesquels vous n'avez pas renseigné au moins le mois et l'année de <servicedate> risquent de ne pas être affichés. Le jour n'est pas obligatoire.

Notez que <title> n'est un élément enfant valide de <review> que si la valeur type de l'avis est editorial, et que <date> n'est valide que si type est user.

Exemple

L'exemple suivant présente une liste d'hôtels partielle avec une fiche contenant un commentaire éditorial et un avis d'utilisateur:

<?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>

<attributes>

La balise <attributes> permet de décrire les services de l'établissement, et de classer les notes et avis sur celui-ci.

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

Éléments enfants

Élément enfant Obligatoire ? Description
<website> Optional Site Web principal de l'hôtel. S'il est présent, il doit être positionné avant le premier élément <client_attr>. Exemple:
<website>https://hotel.example.com</website>
<client_attr name="attribute_name"> Optional Caractéristique supplémentaire ou "attribut" de l'établissement qui peut être spécifié à l'aide des valeurs attribute_name ou attribute_name pour les locations de vacances acceptées.

Valeurs de l'espace réservé attribute_name

Le tableau suivant répertorie les valeurs valides pour attribute_name dans l'élément <client_attr name="attribute_name">.

Valeurs pour attribute_name Description Valeurs de contenu valides
alternate_hotel_id Autre identifiant de votre établissement. Il peut être utile d'avoir des identifiants distincts si vous avez besoin d'un identifiant d'établissement pour les informations de votre flux et d'un autre pour votre moteur de réservation. N'importe quelle valeur de chaîne
custom_[0-4] Tout attribut personnalisé de type chaîne. Les utilisateurs ne les verront pas. N'importe quelle valeur de chaîne
hotel_brand Marque de l'hôtel. Par exemple, "Marriott" ou "Hilton". Les utilisateurs ne peuvent pas le voir, mais il peut servir à regrouper des hôtels. N'importe quelle valeur de chaîne
lodging Représentation encodée de tous les champs disponibles dans le proto Lodging. Chaîne du proto Lodging encodé, encodée en base64
num_reviews Nombre d'avis sur la fiche. Tout entier non négatif.
rating Nombre à virgule flottante représentant la note globale de l'établissement. Ce nombre est généralement compris entre 0 et 5, entre 0 et 10 ou entre 0 et 100, mais vous pouvez utiliser n'importe quelle fourchette représentant votre système de classification.

Valeurs de l'espace réservé "attribute_name" pour les locations de vacances

Reportez-vous à l'exemple de code XML et les attributs spécifiques aux locations de vacances.

<image>

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

Les images permettent d'afficher l'établissement dans l'ID de la fiche. Toutes les images utilisées doivent respecter les consignes suivantes:

  • Le format recommandé pour les images est 4:3.
  • Le robot d'exploration d'images Googlebot doit pouvoir accéder à l'URL de l'image.
  • Si votre site inclut un fichier robots.txt au niveau racine, vérifiez qu'il contient l'une des deux options ci-dessous:

    1. Permet au robot d'exploration Googlebot d'explorer le contenu de votre site, y compris les images.

      • User-agent: Googlebot
      • Allow: /
    2. Permet au robot d'exploration d'images Googlebot d'explorer les images de votre site.

      • User-agent: Googlebot-Image
      • Allow: /
  • Les captures d'écran d'images ou de sites Web ne sont pas autorisées. Les images doivent être originales et réelles.

Attributs

  • "ad" si l'image est une publicité
  • "menu" si l'image est un menu de restaurant
  • "photo" si l'image est une photo de l'établissement
Nom de l'attribut Obligatoire ? Format Description
type Required Text

Votre image doit correspondre à l'un des formats suivants:

url Required Text URL de l'image en taille réelle. Utilisez l'attribut "url" pour spécifier l'image à utiliser sur cette page.
width Required A non-negative integer Largeur de l'image en pixels (une hauteur supérieure à 720 pixels est recommandée)
height Required A non-negative integer Hauteur de l'image en pixels (une hauteur supérieure à 720 pixels est recommandée)

Éléments enfants

Élément enfant Obligatoire ? Description
<link> Demandé, mais obligatoire pour les fiches photo locales. Cette balise contient l'URL valide et à jour de la page de votre site sur laquelle se trouve l'image en question. Il ne contient pas l'URL de l'image elle-même. Exemple:
<link><http://www.example.com/magic_pizza/></link>
<title> Demandée Cette balise contient le titre de l'image. Exemple:
<title>"Luxury Apartment"</title>
<author> Non requises Nom de l'auteur du contenu. Cette valeur peut être un nom d'utilisateur ou un nom complet au format "Prénom Nom".
<date> Obligatoire

Cette balise identifie la date à laquelle l'élément de contenu a été créé. Vous devez saisir une année, un mois et un jour, comme dans l'exemple suivant:

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

Exemple

L'exemple suivant présente une liste partielle d'hôtels avec des tags d'image:

<?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>
    <content>
      <review>
      </review>
      <attributes>
      </attributes>
      <image type="photo" url="https://image_url" width="400" height="300">
        <link>https://image_url</link>
        <title>Apartment at Sandstone</title>
        <author>Jessica Landlord</author>
        <date month="6" day="7" year="2023"/>
      </image>
    </content>
  </listing>
  ...
</listings>

Consignes de syntaxe

Lorsque vous créez une liste d'hôtels XML, suivez les consignes ci-dessous:

  • Validez vos fichiers XML de liste d'hôtels à l'aide du schéma XSD de Google.

  • Utilisez l'encodage UTF-8. Spécifiez ce schéma d'encodage en incluant l'attribut encoding dans votre balise XML, comme indiqué dans les exemples ci-dessous.

  • Vous pouvez spécifier des valeurs de données dans votre flux à l'aide des sections "CDATA". Si vous utilisez des sections CDATA, n'échappez pas les caractères spéciaux.

  • Utilisez des codes d'échappement pour les valeurs de données qui ne se trouvent pas dans les sections CDATA, y compris les URL. Vous pouvez utiliser le code d'entité ou le code du caractère pour représenter ces caractères spéciaux. Le tableau suivant répertorie les codes d'entité et de caractère courants que vous pouvez utiliser:

    Caractère Entité Code du caractère
    Esperluette (&) &amp; &#38;
    Guillemet simple (') &apos; &#39;
    Guillemet double (") &quot; &#34
    Supérieur à (>) &gt; &#62
    Inférieur à (<) &lt; &#60;
  • Omettez les éléments XML qui ne contiennent pas de données. Par exemple, si vous ne disposez pas de la latitude ni de la longitude d'un hôtel, vous ne devez pas inclure d'éléments <latitude/> et <longitude/> vides.

  • N'utilisez le code HTML dans vos éléments XML en aucun cas (même avec échappement).

  • Pour valider votre flux avant de l'importer, vous pouvez utiliser le fichier XSD du flux local http://www.gstatic.com/localfeed/local_feed.xsd.

  • Pour utiliser des commentaires dans votre flux, encapsulez-les entre les balises <!-- et -->, comme le montre l'exemple suivant:

    <!-- This is a comment -->
    
  • Veillez à fermer l'élément <date> dans un <review> utilisateur. Exemple :

    <date day="2" month="12" year="2017"/>