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

Une liste d'hôtels se compose d'un ou de plusieurs fichiers XML répertoriant tous les hôtels pour lesquels vous fournissez des informations tarifaires. Le fichier de liste d'hôtels ne contient pas d'informations tarifaires.

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

Vous créez une liste d'hôtels dans le cadre de votre implémentation initiale, puis vous y ajoutez ou supprimez des hôtels au cours 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 dans Google à l'aide de Hotel Center ou l'héberger sur votre serveur.

Identifier et résoudre 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 pouvoir participer au programme Google Hotel Ads, chaque établissement présent sur 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 cabanes de camping et autres établissements de camping avec murs fixes, plomberie et contrôle de la température (y compris les poêles à bois et les radiateurs au propane) sont éligibles. Les hébergements de plein air qui ne sont pas éligibles incluent:

  • Emplacements de camping où les clients dorment en tente
  • Aires 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 Requis ? Type Description
<language> Required string Langue dans laquelle votre flux est rédigé. 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 plan de référence géodésique ou le modèle de référence pour les coordonnées de latitude/longitude fournies dans le flux. Si aucune valeur de plan de référence n'est fournie, la valeur par défaut de cet élément est WGS84, qui est utilisé par la plupart des appareils GPS récents. Le plan de référence de Tokyo ne s'applique 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 de 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 posséder un identifiant propre à votre site et que cet identifiant 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 au 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 Unit 3, 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 Requis ? Type Description
<id> Required string Identifiant unique de l'hôtel.

Remarque: Cette valeur doit toujours être unique à votre site. Ne réutilisez pas les ID, car cela pourrait poser problème 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 accepte 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 et le code postal de l'hôtel. Utilisez les é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>

Bien que cela ne soit pas recommandé, vous pouvez également fournir une adresse au format libre. Exemple :

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

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

<country> Required string Pays dans lequel se trouve cette fiche. La valeur doit correspondre à un code pays à deux lettres. Exemples : "US" pour les États-Unis ou "CA" pour le Canada. Par 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 à l'aide d'outils de geocoding 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 à l'aide d'outils de geocoding 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 de l'hôtel. S'il s'agit d'une succursale, veuillez indiquer le numéro de téléphone de l'agence (et non celui du siège social).

L'attribut type peut avoir l'une des valeurs suivantes:

  • 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 d'appareil de télécommunications pour malentendants (TDD, Telecommunications Device for the Deaf).
  • 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 (hôtel, par exemple). Les partenaires peuvent utiliser n'importe quelle catégorie interne pour décrire leur établissement, par exemple "hôtels d'affaires", "complexes hôteliers", "motels" ou autres catégories similaires.
<content> Optional <content> Informations facultatives utilisées pour 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 des coordonnées de 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 au 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 Unit 3, 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, des services 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 Requis ? 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>

Comporte un avis d'utilisateur ou un avis éditorial sur la fiche. Votre fiche peut contenir un nombre illimité d'avis, quel que soit leur type.

Il n'est pas nécessaire d'inclure tous les avis sur un établissement dans l'élément <listing>. Cet élément vous permet d'inclure une sélection d'avis qui reflètent 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 journaliste. Vous n'avez pas besoin d'inclure tous les avis d'une fiche dans votre élément <listing>. Cet élément vous permet d'inclure une sélection d'avis 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 d'un site Web ou d'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 Requis ? 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 crédité.
<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 est é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'évaluation. Le format est identique à <date> ci-dessus.

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

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

Il est possible que les avis dont le mois et l'année n'ont pas été renseignés (<servicedate>) risquent de ne pas s'afficher. Le jour n'est pas obligatoire.

Notez que <title> n'est un élément enfant valide de <review> que si l'élément 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 avis de rédaction 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> peut être utilisée pour décrire les services de l'établissement, et pour classer les notes et les avis sur l'établissement.

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

Éléments enfants

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

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 s'avérer 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 de chaîne. Les utilisateurs ne les voient pas. N'importe quelle valeur de chaîne
hotel_brand Marque de l'hôtel. Par exemple, "Marriott" ou "Hilton". Les utilisateurs ne le voient pas, 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 protocole Lodging encodée, 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 plage qui représente votre système de notation.

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

Consultez Attributs spécifiques aux locations de vacances et exemple XML.

<image>

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

Des images sont utilisées pour 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 des images ou des photographies 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 Requis ? Format Description
type Required Text

Une image doit correspondre à l'un des éléments 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 résolution supérieure à 720 pixels est recommandée)
height Required A non-negative integer Hauteur de l'image en pixels (une résolution supérieure à 720 pixels est recommandée)

Éléments enfants

Élément enfant Requis ? 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 figure l'image concernée. Il ne contient pas l'URL de l'image elle-même. Exemple:
<link><http://www.example.com/magic_pizza/></link>
<title> Demandé(e) Ce tag contient le titre de l'image. Exemple:
<title>"Luxury Apartment"</title>
<author> Non obligatoire Nom de l'auteur du contenu. La valeur peut être un nom d'utilisateur ou un nom complet au format "Prénom Nom".
<date> Obligatoire

Cette balise identifie la date de création de l'élément de contenu. 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 les fichiers XML de vos listes 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 avec les 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 figurent pas dans les sections CDATA, y compris les URL. Vous pouvez utiliser le code de l'entité ou le code des caractères 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:

    Personnage 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 connaissez pas la latitude et la longitude d'un hôtel, vous ne devez pas inclure d'éléments <latitude/> et <longitude/> vides.

  • N'utilisez pas de code HTML dans vos éléments XML, quelles que soient les circonstances (même avec un caractère d'échappement).

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

  • Pour utiliser des commentaires dans votre flux, encapsulez-les entre des 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"/>