ホテル料金の構造化データ リファレンス

このページでは、ホテルの料金データに構造化データのマークアップを追加するためのリファレンスを紹介します。

概要

ホテル料金構造化データは、ユーザー インターフェースに関係なく、ウェブサイトに記載されているホテル料金の詳細について説明、検証、表示するために使用されます。これには、基本料金、料金、客室、料金、税金、料金に関連するフィールドも含まれます。

Google では、ウェブページから料金を正確に取得するため、クローラーが機械で読み取り可能な標準構造化データ(schema.org 提供)を使用してウェブページにアノテーションを付けることをパートナー様におすすめしています。

これにより、クローラーの信頼性が向上し、料金精度の検証がスケーリングされます。これには、料金精度検証の回数が増えること、料金精度の問題を直接デバッグできること、料金精度スコアが一貫していることなどのメリットがあります。

構造化データを初めて使用する場合は、構造化データの語彙と形式をご覧ください。

ウェブページにアノテーションを付けるには JSON-LD 形式を使用することをおすすめします。他の使用可能な形式について詳しくは、サポートされている形式をご覧ください。このドキュメントでは、ホテルでの構造化データの実装に固有のリファレンス コンテンツについて詳しく説明します。

Hotel 構造化データは、ウェブページ内のホテル固有のフィールドにアノテーションを付けるために使用されます。Hotel 構造化データには次のプロパティがあります。

HotelRoom 構造化データは、ウェブページ内の客室固有のフィールドにアノテーションを付けるために使用されます。

HotelRoom 構造化データには次のプロパティがあります。

ホテルの構造化データ

name プロパティと address プロパティ

name プロパティと address プロパティは、ホテルの名前と場所にアノテーションを付けるために使用されます。name プロパティと address プロパティは次のとおりです。

  "@type": "Hotel",
    "name": "hotel-name",
    "identifier": "hotel-id-1234",
    "address": {
      "@type": "PostalAddress",
      "addressCountry": "XX",
      "addressLocality": "City Name",
      "addressRegion": "State Name",
      "postalCode": "01234",
      "streetAddress": "1234 Main St."
    },

構文

name プロパティと address プロパティでは、次の構文を使用します。

JSON-LD

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  "name": "hotel-name",
  "identifier": "hotel-id-1234",
  "address": {
    "@type": "PostalAddress",
    "addressCountry": "XX",
    "addressLocality": "City Name",
    "addressRegion": "State Name",
    "postalCode": "01234",
    "streetAddress": "1234 Main St."
  },
  "makesOffer": {
    "@type": ["Offer", "LodgingReservation"]
    ...
  }
}

プロパティ

name プロパティと address プロパティは次のとおりです。

プロパティ 必須 / 任意 タイプ 説明
Hotel.name Required string ホテルの名前
Hotel.identifier Required string

パートナーのホテル ID。

識別子はホテルごとに一意の文字列で、料金フィードで使用される文字列と完全に一致している必要があります。

Hotel.address Optional PostalAddress ホテルの住所または場所。

名前と住所

name アノテーションと address アノテーションを追加する基本的な例を次に示します。

{
"@context": "https://schema.org",
"@type": "Hotel",
"name": "Mountain Hotel",
"identifier": "hotel-id-1234",
"address": {
  "@type": "PostalAddress",
  "addressCountry": "AT",
  "addressLocality": "Innsbruck",
  "addressRegion": "Tyrol",
  "postalCode": "6020",
  "streetAddress": "Technikerstrasse 21"
},
"makesOffer": {
  "@type": ["Offer", "LodgingReservation"],
  "checkinTime": "2023-03-10 15:00:00",
  "checkoutTime": "2023-03-16 10:00:00",
  "priceSpecification": {
    "@type": "CompoundPriceSpecification",
    "price": 1222.74,
    "priceCurrency": "USD"
  }
}
}

makesOffer 件の宿泊施設

makesOffer アノテーションは、ホテル宿泊プランのマークアップに使用されます。

  "makesOffer": {
    "@type": ["Offer", "LodgingReservation"],
    "checkinTime": "YYYY-MM-DD[THH:mm:ss]",
    "checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
    "availability": "https://schema.org/InStock",
    ...
  }

構文

makesOffer プロパティの構文は次のとおりです。

JSON-LD

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  "name": "hotel-name",
  "identifier": "hotel-id-1234",
  "address": { ... },
  "makesOffer": {
    "@type": ["Offer", "LodgingReservation"],
    "checkinTime": "YYYY-MM-DD[THH:mm:ss]",
    "checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
    "availability": "https://schema.org/InStock",
    "priceSpecification": { ... }
  }
}

プロパティ

makesOffer プロパティは次のとおりです。

プロパティ 必須 / 任意 タイプ 説明
makesOffer Required Offer and LodgingReservation

指定された宿泊プランのホテル特典。

makesOffer プロパティには、クーポンの配列を含めることができます。

LodgingReservation.checkinTime Required DateTime

ユーザーのタイムゾーンでのチェックイン時間。タイムゾーンが指定されていない場合、ホテルのタイムゾーンが考慮されます。

LodgingReservation.checkoutTime Required DateTime

ユーザーのタイムゾーンでのチェックアウト時間。タイムゾーンが指定されていない場合、ホテルのタイムゾーンが考慮されます。

makesOffer

以下は、ホテルの特典にアノテーションを付ける基本的な例です。1 つの旅行プランに複数のオファーを指定できますが、最初に Google に表示される料金を指定し、次に他の料金を指定する必要があります。指定された価格には、適用されるすべての税金が含まれます。

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  "name": "Mountain Hotel",
  "identifier": "hotel-id-1234",
  "address": { ... },
  "makesOffer": [
    {
      "@type": ["Offer", "LodgingReservation"],
      "checkinTime": "2023-03-10 15:00:00",
      "checkoutTime": "2023-03-16 10:00:00",
      "priceSpecification": {
        "@type": "CompoundPriceSpecification",
        "price": 1222.74,
        "priceCurrency": "USD"
      }
    },
    {
      "@type": ["Offer", "LodgingReservation"],
      "checkinTime": "2023-03-10 15:00:00",
      "checkoutTime": "2023-03-16 10:00:00",
      "priceSpecification": {
        "@type": "CompoundPriceSpecification",
        "price": 1200.74,
        "priceCurrency": "USD"
      }
    }
  ]
}

Hotel priceSpecification 件の宿泊施設

このプロパティは、ホテルやホテルの客室の料金情報にアノテーションを付けるために使用されます。価格と税金にアノテーションを付けるには、さらに 2 つのプロパティが必要です。CompoundPriceSpecification を使用して、基本料金、税金、割引などの合計料金情報を指定する必要があります。追加の税金や特別なタイプの料金(ResortFeeGenericTaxServiceFee など)を指定するには、UnitPriceSpecification を使用します。priceSpecification プロパティは、Offer プロパティとバンドルされています。

  {
    ...
    "priceSpecification": {
      "@type": "CompoundPriceSpecification",
      "price": "float",
      "priceCurrency": "currency",
      "priceComponent": [
        {
          "@type": "UnitPriceSpecification",
          "name": "GenericTax",
          "price": "float",
          "priceCurrency": "currency"
        },
        ...
      ]
    }
  }

構文

Hotel priceSpecification プロパティの構文は次のとおりです。

JSON-LD

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  ...
  "makesOffer": {
    "@type": ["Offer", "LodgingReservation"],
    ...
    "priceSpecification": {
      "@type": "CompoundPriceSpecification",
      "price": "float",
      "priceCurrency": "currency",
      "priceComponent": [
        {
          "@type": "UnitPriceSpecification",
          "name": "",
          "price": "float",
          "priceCurrency": "currency"
        },
        {
          "@type": "UnitPriceSpecification",
          "name": "GenericTax",
          "price": "float",
          "priceCurrency": "currency",
          "priceComponentType": "GenericTax",
          "potentialAction": {
            "@type": "https://schema.org/PayAction",
            "recipient": {
              "@type": "OnlineBusiness",
              "name": "name-of-the-business"
            }
          }
        },
        {
          "@type": "UnitPriceSpecification",
          "name": "Discount",
          "price": "float",
          "priceCurrency": "currency",
          "priceComponentType": "Discount"
        }
      ]
    }
  }
}

microdata

  <div itemscope itemtype="https://schema.org/Hotel">
    <meta itemprop="name" content="hotel-name"/>
    ...
    <div itemscope itemtype="https://schema.org/Offer https://schema.org/LodgingReservation" itemprop="makesOffer">
      ...
      <div itemscope itemtype="https://schema.org/CompoundPriceSpecification" itemprop="priceSpecification">
        <meta itemprop="price" content="float"/>
        <meta itemprop="priceCurrency" content="currency"/>
        <div itemscope itemtype="https://schema.org/UnitPriceSpecification" itemprop="priceComponent">
          <meta itemprop="name" content=""/>
          <meta itemprop="price" content="float"/>
          <meta itemprop="priceCurrency" content="currency"/>
        </div>
        <div itemscope itemtype="https://schema.org/UnitPriceSpecification" itemprop="priceComponent">
          <meta itemprop="name" content="GenericTax" />
          <meta itemprop="price" content="float"/>
          <meta itemprop="priceCurrency" content="currency"/>
          <meta itemprop="priceComponentType" content="GenericTax"/>
        </div>
        <div itemscope itemtype="https://schema.org/UnitPriceSpecification" itemprop="priceComponent">
          <meta itemprop="name" content="Discount"/>
          <meta itemprop="price" content="float"/>
          <meta itemprop="priceCurrency" content="currency"/>
          <meta itemprop="priceComponentType" content="Discount"/>
        </div>
      </div>
    </div>
  </div>

プロパティ

hotel priceSpecification プロパティは次のとおりです。

プロパティ 必須 / 任意 タイプ 説明
Hotel.Offer.priceSpecification.price Required float

ホテルの税金と手数料を含む合計金額。

ランディング ページには、Google の料金とすべての料金の詳細が必ず明記されます。料金の詳細にアノテーションを付けると、料金精度の確認を完了できます。Google では、ホテルレベルと客室レベルの料金の両方を使用できます。

Hotel.Offer.priceSpecification.priceCurrency Required currency 指定された価格の 3 文字の通貨コード。(例: "USD" )。
Hotel.Offer.priceSpecification.priceComponent Optional UnitPriceSpecification[]

ホテルの税金と手数料を含む合計料金の内訳。 価格の構造化データには次の 2 種類があります。

  • CompoundPriceSpecification には、次のような料金内訳が表示されます。

    • 基本料金: 1 泊の基本料金

    • 宿泊税: 税込みの 1 泊の料金。

    • 宿泊人数あたりの料金: 宿泊人数 1 名あたりの 1 泊の料金。

    • 割引: 差し引き額。

  • UnitPriceSpecification は、請求のタイプを指定するために使用されます。追加料金を指定するには、PriceComponentTypeEnumeration 値を含める必要があります。

    PriceComponentTypeEnumeration の値は次のとおりです。

    • Discount: 料金に対する一般的な割引。

    • ResortFee: ホテルで別途支払う必要がある料金です。宿泊施設の種類によって異なる場合があります。

    • GenericTax: 追加税です。

    • ServiceFee: 予約チャネルによって請求される追加料金です。

    • TransferFee: ホテルへの移動にかかる事実上の必須料金で、ホテルまたは予約チャネルが徴収します。

priceComponentType プロパティに値を設定する必要があります。UnitPriceSpecification を含める場合はすべての値が必要であり、UnitPriceSpecification プロパティで指定する必要があります。

Hotel.Offer.priceSpecification.priceComponent. potentialAction Optional PayAction

ホテルの支払いフローには、予約サイトでのチェックアウト時間およびチェックイン時にホテルで請求される料金が含まれます。

決済場所を示すには、PayAction の「recipient」フィールドにバンドルされている potentialAction プロパティを使用する必要があります。recipient プロパティの詳細については、PayAction をご覧ください。

Google では、PayAction さんの受信者について、次の 2 つの設定をサポートしています。

  • recipient.@type = "OnlineBusiness" は、オンライン販売者が予約時に徴収する支払いです。potentialAction が指定されていない場合は、これがデフォルト設定です。

  • recipient.@type = "Hotel" は、ホテルで徴収される支払いを指します。

JSON-LD の例

Price

ウェブページに価格構造化データを追加する基本的な例を次に示します。makesOffer プロパティには、複数のホテルレベルの特典を含めることができます。

address プロパティを指定する場合、addressCountrypostalCodestreetAddress などの PostalAddress 型とその他のフィールドは必須です。Google が表示する料金は、makesOffer プロパティの先頭に配置します。指定された価格には、該当するすべての税金が含まれます。

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  "name": "ACME Hotel",
  "identifier": "hotel-id-1234",
  "address": {
    "@type": "PostalAddress",
    "addressCountry": "AT",
    "addressLocality": "Innsbruck",
    "addressRegion": "Tyrol",
    "postalCode": "6020",
    "streetAddress": "Technikerstrasse 21"
  },
  "makesOffer": [
    {
      "@type": ["Offer", "LodgingReservation"],
      "checkinTime": "2023-03-10 15:00:00",
      "checkoutTime": "2023-03-16 10:00:00",
      "priceSpecification": {
        "@type": "CompoundPriceSpecification",
        "price": 1222.74,
        "priceCurrency": "USD"
      }
    },
    {
      "@type": ["Offer", "LodgingReservation"],
      "checkinTime": "2023-03-10 15:00:00",
      "checkoutTime": "2023-03-16 10:00:00",
      "priceSpecification": {
        "@type": "CompoundPriceSpecification",
        "price": 1200.74,
        "priceCurrency": "USD"
      }
    },
    ...
  ]
}

価格の詳細

以下に、priceSpecification プロパティと価格内訳の例を示します。基本料金、一般的な税金や割引などの税金は、UnitPriceSpecification コンポーネントを使用して定義します。priceComponentType フィールドには、UnitPriceSpecification コンポーネントに対応する値を必ず設定します。

滞在日数の合計料金は、CompoundPriceSpecification プロパティで指定する必要があります。価格内訳は priceComponent プロパティで指定する必要があります。

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  "name": "ACME Hotel",
  "identifier": "hotel-id-1234",
  "address": {...},
  "makesOffer": {
    "@type": ["Offer", "LodgingReservation"],
    "checkinTime": "2023-03-10 15:00:00",
    "checkoutTime": "2023-03-16 10:00:00",
    "priceSpecification": {
      "@type": "CompoundPriceSpecification",
      "price": 1222.74,
      "priceCurrency": "USD",
      "priceComponent": [
        {
          "@type": "UnitPriceSpecification",
          "name": "",
          "price": 1150,
          "priceCurrency": "USD"
        },
        {
          "@type": "UnitPriceSpecification",
          "name": "GenericTax",
          "price": 172.74,
          "priceCurrency": "USD",
          "priceComponentType": "GenericTax"
        },
        {
          "@type": "UnitPriceSpecification",
          "name": "Discount",
          "price": -100,
          "priceCurrency": "USD",
          "priceComponentType": "Discount"
        }
      ]
    }
  }
}

決済ポイント

PayAction の受信者タイプを使用する potentialAction 仕様の例を次に示します。

パッケージの合計金額は $1,170 で、オンライン ウェブサイトは合計料金の一部("@type": "OnlineBusiness" を使用して予約時に $1,150)を請求し、ユーザーは @type": "Hotel" で指定されたホテルでチェックイン時に残りの $20 を支払う必要があります。

予約時とホテルで支払いを分類するには、potentialAction コンポーネントを指定する必要があります。指定されていない場合、payAction は予約時の支払いをデフォルトのお支払い方法と解釈します。

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  "name": "ACME Hotel",
  "identifier": "hotel-id-1234",
  "makesOffer": {
    "@type": ["Offer", "LodgingReservation"],
    "checkinTime": "2023-03-10 15:00:00",
    "checkoutTime": "2023-03-16 10:00:00]",
    "priceSpecification": {
      "@type": "CompoundPriceSpecification",
      "price": 1170,
      "priceCurrency": "USD",
      "priceComponent": [
        {
          "@type": "UnitPriceSpecification",
          "price": 1150,
          "priceCurrency": "USD",
          "potentialAction": {
            "@type": "https://schema.org/PayAction",
            "recipient": {
              "@type": "OnlineBusiness",
              "name": "myonlinebusiness"
            }
          }
        },
        {
          "@type": "UnitPriceSpecification",
          "price": 20,
          "priceCurrency": "USD",
          "potentialAction": {
            "@type": "https://schema.org/PayAction",
            "recipient": {
              "@type": "Hotel",
              "name": "The Langham, Boston",
              "address": { ... }
            }
          }
        }
      ]
    }
  }
}

microdata の例

価格の詳細

以下に、priceSpecification プロパティと価格内訳の例を示します。基本料金、一般的な税金や割引などの税金は、UnitPriceSpecification コンポーネントを使用して定義します。name プロパティには、必ず UnitPriceSpecification コンポーネントに対応する値を設定してください。

滞在日数の合計料金は、CompoundPriceSpecification プロパティで指定する必要があります。価格内訳は priceComponent プロパティで指定する必要があります。

<div itemscope itemtype="https://schema.org/Hotel">
  <meta itemprop="name" content="ACME Hotel"/>
  <meta itemprop="identifier" content="hotel-id-1234"/>
  <div itemscope itemtype="https://schema.org/PostalAddress" itemprop="address">
    <meta itemprop="addressCountry" content="US" />
    <meta itemprop="addressLocality" content="Mountain View" />
    <meta itemprop="addressRegion" content="Santa Clara" />
    <meta itemprop="postalCode" content="94040" />
    <meta itemprop="streetAddress" content="123 Main street" />
  </div>
  <div itemscope itemtype="https://schema.org/Offer   https://schema.org/LodgingReservation"  itemprop="makesOffer">
    <meta itemprop="checkinTime" content="2023-03-10 15:00:00" />
    <meta itemprop="checkoutTime" content="2023-03-16 10:00:00"/>
    <div itemscope itemtype="https://schema.org/CompoundPriceSpecification"   itemprop="priceSpecification">
    <meta itemprop="price" content="1222.74" />
    <meta itemprop="priceCurrency" content="USD" />
      <div itemscope itemtype="https://schema.org/UnitPriceSpecification"    itemprop="priceComponent">
        <meta itemprop="name" content="" />
        <meta itemprop="price" content="1150" />
        <meta itemprop="priceCurrency" content="USD" />
      </div>
      <div itemscope itemtype="https://schema.org/UnitPriceSpecification"  itemprop="priceComponent">
        <meta itemprop="name" content="GenericTax" />
        <meta itemprop="price" content="172.74" />
        <meta itemprop="priceCurrency" content="USD" />
        <meta itemprop="priceComponentType" content="GenericTax" />
      </div>
      <div itemscope itemtype="https://schema.org/UnitPriceSpecification"   itemprop="priceComponent">
        <meta itemprop="name" content="Discount" />
        <meta itemprop="price" content="-100" />
        <meta itemprop="priceCurrency" content="USD" />
        <meta itemprop="priceComponentType" content="Discount" />
      </div>
    </div>
  </div>
</div>

hasMerchantReturnPolicy 件の宿泊施設

このプロパティは、旅行プランの販売者の払い戻しポリシーにアノテーションを付けるために使用されます。

    "hasMerchantReturnPolicy": {
      "@type": "MerchantReturnPolicy",
      "returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
      "refundType": "https://schema.org/FullRefund",
      "merchantReturnDays": "YYYY-MM-DD[THH:mm:ss]",
      "restockingFee": 0
    }

構文

hasMerchantReturnPolicy の構文は次のとおりです。

JSON-LD

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  ...
  "makesOffer": {
    "@type": ["Offer", "LodgingReservation"],
    "checkinTime": "YYYY-MM-DD[THH:mm:ss]",
    "checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
    "priceSpecification": { ... },
    "hasMerchantReturnPolicy": {
      "@type": "MerchantReturnPolicy",
      "returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
      "refundType": "https://schema.org/FullRefund",
      "merchantReturnDays": "YYYY-MM-DD[THH:mm:ss]",
      "restockingFee": 0
    }
  }
}

プロパティ

hasMerchantReturnPolicy プロパティは次のとおりです。

属性 必須かどうか タイプ 説明
Offer.hasMerchantReturnPolicy Optional MerchantReturnPolicy

販売者の払い戻しポリシー。パートナーは MerchantReturnPolicy.restockingFee を使用して、滞在日数に応じた全額が払い戻されないキャンセル ポリシーを示す必要があります。

hasMerchantReturnPolicy が指定されていないか空の場合、金額は払い戻し不可とみなされます。returnPolicyCategory: MerchantReturnNotPermitted プロパティを使用して、払い戻し不可のポリシーを指定できます。

返品に関するポリシー

客室の詳細と合計料金(税、サービス料込み)を含む、ホテルの構造化データの基本的な例を以下に示します。この例では、2023 年 12 月 18 日午後 11 時(UTC)まで料金なしでキャンセルできる宿泊を指定しています。パートナーは "MerchantReturnPolicy.restockingFee" を使用して、宿泊料金の全額が払い戻されないキャンセル ポリシーを示す必要があります。restockingFee のデフォルトは $0 です。

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  "name": "ACME Hotel",
  "identifier": "hotel-id-1234",
  "description": "Beautiful resort in the outskirts of the city",
  "address": {...},
  "makesOffer": {
    "@type": ["Offer", "LodgingReservation"],
    "checkinTime": "2023-12-15 16:00:00",
    "checkoutTime": "2023-12-20 11:00:00",
    "priceSpecification": {...},
    "hasMerchantReturnPolicy": {
      "@type": "MerchantReturnPolicy",
      "returnPolicyCategory": "https://schema.org/MerchantReturnFiniteReturnWindow",
      "refundType": "https://schema.org/FullRefund",
      "merchantReturnDays": "2023-12-18 23:00:00",
      "restockingFee": 0
    }
  }
}

eligibleCustomerType 件の宿泊施設

このプロパティは、ホテルの会員向けの特典プログラムにアノテーションを付けるために使用できます。

"eligibleCustomerType": "RewardsMember",
"priceSpecification": {
    "@type": "CompoundPriceSpecification",
    "price": "float",
    "priceCurrency": "currency"
 }

構文

eligibleCustomerType プロパティの構文は次のとおりです。

JSON-LD

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  ...
  "makesOffer": {
    "@type": ["Offer", "LodgingReservation"],
    "checkinTime": "YYYY-MM-DD[THH:mm:ss]",
    "checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
    "eligibleCustomerType": "RewardsMember",
    "priceSpecification": { ... }
  }
}

プロパティ

eligibleCustomerType プロパティは次のとおりです。

属性 必須かどうか タイプ 説明
Offer.eligibleCustomerType Optional BusinessEntityType

顧客に提供されるポイント プログラムまたはメンバー特典。

多くのホテルのページでは、メンバー料金と公開料金を表示して、ユーザーにポイント プログラムへの登録を促しています。メンバー料金など、特定のオーディエンスに限定された料金を指定するには、Offer.eligibleCustomerType プロパティを設定します。

メンバー料金

以下は、ポイント プログラムのメンバー料金または限定料金の仕様の基本的な例です。この顧客はホテルの「特典メンバー」です。

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  "name": "ACME Hotel",
  "identifier": "hotel-id-1234",
  "address": {...},
  "makesOffer": {
    "@type": ["Offer", "LodgingReservation"],
    "name": "RewardsMember",
    "checkinTime": "2023-12-15 16:00:00",
    "checkoutTime": "2023-12-20 11:00:00",
    "eligibleCustomerType": "RewardsMember",
    "priceSpecification": {
      "@type": "CompoundPriceSpecification",
      "price": 1342.74,
      "priceCurrency": "USD",
      "priceComponent": [
        {
          "@type": "UnitPriceSpecification",
          "name": "Base rate",
          "price": 1069.98,
          "priceCurrency": "USD"
        },
        {
          "@type": "UnitPriceSpecification",
          "name": "GenericTax",
          "price": 172.74,
          "priceCurrency": "currency"
        },
        {
          "@type": "UnitPriceSpecification",
          "name": "ResortFee",
          "price": 100,
          "priceCurrency": "USD"
        }
      ]
    }
  }
}

メンバー料金と通常料金

これは、通常価格とメンバー料金の両方のアノテーションの例です。メンバー価格が最初に記載され、その後に通常価格が続きます。

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  "name": "ACME Hotel",
  "identifier": "hotel-id-1234",
  "address": {...},
  "makesOffer": [
    {
      "@type": ["Offer", "LodgingReservation"],
      "name": "RewardsMember",
      "checkinTime": "2023-12-15 16:00:00",
      "checkoutTime": "2023-12-20 11:00:00",
      "eligibleCustomerType": "RewardsMember",
      "priceSpecification": {
        "@type": "CompoundPriceSpecification",
        "price": 1342.74,
        "priceCurrency": "USD",
        "priceComponent": [
          {
            "@type": "UnitPriceSpecification",
            "name": "Base rate",
            "price": 1069.98,
            "priceCurrency": "USD"
          },
          {
            "@type": "UnitPriceSpecification",
            "name": "GenericTax",
            "price": 172.74,
            "priceCurrency": "currency"
          },
          {
            "@type": "UnitPriceSpecification",
            "name": "ResortFee",
            "price": 100,
            "priceCurrency": "USD"
          }
        ]
      }
    },
    {
      "@type": ["Offer", "LodgingReservation"],
      "name": "regularRate",
      "checkinTime": "2023-12-15 16:00:00",
      "checkoutTime": "2023-12-20 11:00:00",
      "priceSpecification": {
        "price": 1572.24,
        "priceCurrency": "USD",
        "priceComponent": [
          {
            "@type": "UnitPriceSpecification",
            "name": "Base rate",
            "price": 1369.98,
            "priceCurrency": "USD"
          },
          {
            "@type": "UnitPriceSpecification",
            "name": "GenericTax",
            "price": 202.26,
            "priceCurrency": "currency"
          },
          {
            "@type": "UnitPriceSpecification",
            "name": "ResortFee",
            "price": 100,
            "priceCurrency": "USD"
          }
        ]
      }
    }
  ]
}

HotelRoom の構造化データ

offers 件の宿泊施設

offers アノテーションは、客室宿泊プランをマークアップするために使用します。HotelRoom 仕様には offers プロパティを使用する必要があります。

"offers": {
  "@type": ["Offer", "LodgingReservation"],
  "identifier": "hotel-room-id-1234",
  "checkinTime": "YYYY-MM-DD[THH:mm:ss]",
  "checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
  "priceSpecification": {...}
}

構文

offers プロパティの構文は次のとおりです。

JSON-LD

{
  "@context": "https://schema.org",
  "@type": "HotelRoom",
  "identifier": "hotel-room-id-1234",
  "offers": {
    "@type": ["Offer", "LodgingReservation"],
    "checkinTime": "YYYY-MM-DD[THH:mm:ss]",
    "checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
    "priceSpecification": {
      "@type": "CompoundPriceSpecification",
      "price": "float",
      "priceCurrency": "currency",
      ...
    }
  }
}

プロパティ

offers プロパティは次のとおりです。

プロパティ 必須 / 任意 タイプ 説明
offers Required Offer and LodgingReservation

所定の旅行プランの客室料金の仕様。

offers プロパティには、クーポンの配列を含めることができます。

LodgingReservation.checkinTime Required DateTime

ユーザーのタイムゾーンでのチェックイン時間。タイムゾーンが指定されていない場合、ホテルのタイムゾーンが考慮されます。

LodgingReservation.checkoutTime Required DateTime

ユーザーのタイムゾーンでのチェックアウト時間。タイムゾーンが指定されていない場合、ホテルのタイムゾーンが考慮されます。

表示

HotelRoom プロパティで offers を指定する基本的な例を次に示します。

{
  "@context": "https://schema.org",
  "@type": "HotelRoom",
  "identifier": "hotel-room-id-1234",
  "offers": {
    "@type": ["Offer", "LodgingReservation"],
    "identifier": "rate-plan-id-of-member-rate",
    "checkinTime": "2023-03-10 15:00:00",
    "checkoutTime": "2023-03-16 10:00:00",
    "priceSpecification": {
      "@type": "CompoundPriceSpecification",
      "price": 1222.74,
      "priceCurrency": "USD"
    }
  }
}

bed プロパティと occupancy プロパティ

bed プロパティは、客室のベッドタイプとベッド数にアノテーションを付けるために使用されます。occupancy プロパティは、客室の宿泊客数にアノテーションを付けるために使用されます。bed プロパティと occupancy プロパティは、HotelRoom プロパティを使用して指定できます。

"@type": "Hotel",
"identifier": "hotel-id-1234",
"containsPlace": {
    "@type": ["HotelRoom", "Product"],
    "identifier": "hotel-room-id",
  "bed": {
    "@type": "BedDetails",
    "numberOfBeds": "integer",
    "typeOfBed": "KING"
  },
  "occupancy": {
    "@type": "QuantitativeValue",
    "value": "integer"
  }
}

構文

bed プロパティと occupancy プロパティの構文は次のとおりです。

JSON-LD

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  "name": "hotel-name",
  "identifier": "hotel-id-1234",
  "containsPlace": {
    "@type": ["HotelRoom", "Product"],
    "name": "room-name",
    "identifier": "hotel-room-id-1234",
    "bed": {
      "@type": "BedDetails",
      "numberOfBeds": "integer",
      "typeOfBed": "KING"
    },
    "occupancy": {
      "@type": "QuantitativeValue",
      "value": "integer"
    },
    "offers": {
      "@type": ["Offer", "LodgingReservation"],
      "identifier": "rate-plan-id-of-member-rate",
      "checkinTime": "YYYY-MM-DD[THH:mm:ss]",
      "checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
      "priceSpecification": {
        "@type": "CompoundPriceSpecification",
        "price": "float",
        "priceCurrency": "currency",
        "priceComponent": {
          "@type": "UnitPriceSpecification",
          "name": "",
          "price": "float",
          "priceCurrency": "currency"
        },
        ...
      }
    }
  }
}

bed プロパティと occupancy プロパティは、HotelRoom プロパティを使用する場合のみ設定できます。客室レベルの料金など、客室固有の情報は、containsPlace プロパティを使用して Hotel プロパティに指定できます。HotelHotelRoom の仕様例をご覧ください。

プロパティ

bed プロパティと occupancy プロパティは次のとおりです。

プロパティ 必須 / 任意 タイプ 説明
HotelRoom.bed Optional (Recommended) bed

宿泊施設に含まれるベッドの種類と客室の宿泊人数。

サポートされている値は次の通りです。

  • CALIFORNIA_KING
  • KING
  • QUEEN
  • FULL
  • DOUBLE
  • SEMI_DOUBLE
  • SINGLE
HotelRoom.occupancy Optional (Recommended) QuantitativeValue

ホテルの客室の宿泊客数。宿泊人数のタイプは QuantitativeValue です。

占有率は HotelRoom の明示的なプロパティであり、特定の Offer のプロパティではありません。料金は、リクエストした宿泊人数に対してのみタグ付けする必要があります。

containsPlace Optional (Recommended) LocationFeatureSpecification

特定の客室に関連付けられた客室レベルの料金にアノテーションを付けるために使用されます。客室の設備を指定するためにも使用できます。

containsPlace の使用方法の詳細については、 amenityFeature プロパティでをご覧ください。

HotelRoom

以下は、客室仕様におけるベッドと占有率の基本的な例です。

{
  "@context": "https://schema.org",
  "@type": ["HotelRoom", "Product"],
  "name": "Deluxe Room, 1 King Bed",
  "identifier": "hotel-room-id-1234",
  "bed": [
    {
      "@type": "BedDetails",
      "numberOfBeds": 1,
      "typeOfBed": "KING"
    },
    {
      "@type": "BedDetails",
      "numberOfBeds": 1,
      "typeOfBed": "SINGLE"
    }
  ],
  "occupancy": {
    "@type": "QuantitativeValue",
    "value": 2
  },
  "offers": {
    "@type": ["Offer", "LodgingReservation"],
    "identifier": "rate-plan-id-of-member-rate",
    "checkinTime": "2023-03-10 15:00:00",
    "checkoutTime": "2023-03-16 10:00:00",
    "priceSpecification": {
      "@type": "CompoundPriceSpecification",
      "price": 1222.74,
      "priceCurrency": "USD"
    }
  }
}

Hotel と HotelRoom

次の例では、Hotel プロパティと HotelRoom プロパティに、bedoccupancypriceSpecification とアノテーションを付けています。

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  "name": "hotel-name",
  "identifier": "hotel-id-1234",
  "containsPlace": {
    "@type": ["HotelRoom", "Product"],
    "name": "Deluxe Room, 1 King Bed",
    "identifier": "hotel-room-id",
    "bed": {
      "@type": "BedDetails",
      "numberOfBeds": 1,
      "typeOfBed": "KING"
    },
    "occupancy": {
      "@type": "QuantitativeValue",
      "value": 2
    },
    "amenityFeature": {
      "@type": "LocationFeatureSpecification",
      "name": "Minibar",
      "value": true
    },
    "offers": {
      "@type": ["Offer", "LodgingReservation"],
      "identifier": "rate-plan-id-of-member-rate",
      "checkinTime": "2023-03-10 15:00:00",
      "checkoutTime": "2023-03-16 10:00:00",
      "priceSpecification": {
        "@type": "CompoundPriceSpecification",
        "price": 1222.74,
        "priceCurrency": "USD"
      }
    }
  }
}

HotelRoom priceSpecification 件の宿泊施設

ホテルの客室料金の仕様は、ホテルの料金の仕様と似ています。違いは、客室料金は Hotel.makesOffer プロパティではなく Product.offers プロパティを使用して指定されるという点です。

"priceSpecification": {
  "@type": "CompoundPriceSpecification",
  "price": "float",
  "priceCurrency": "currency",
  "priceComponent": {
    "@type": "UnitPriceSpecification",
    "name": "GenericTax",
    "price": "float",
    "priceCurrency": "currency"
  }
  ...
}

構文

ホテルの客室の priceSpecification プロパティの構文は次のとおりです。

JSON-LD

{
  "@context": "https://schema.org",
  "@type": ["HotelRoom", "Product"],
  ...
  "bed": {
    "@type": "BedDetails",
    "numberOfBeds": "integer",
    "typeOfBed": "KING"
  },
  "occupancy": {
    "@type": "QuantitativeValue",
    "value": "integer"
  },
  "offers": {
    "@type": ["Offer", "LodgingReservation"],
    ...
    "priceSpecification": {
      "@type": "CompoundPriceSpecification",
      "price": "float",
      "priceCurrency": "currency",
      "priceComponent": [
        {
          "@type": "UnitPriceSpecification",
          "name": "",
          "price": "float",
          "priceCurrency": "currency"
        },
        {
          "@type": "UnitPriceSpecification",
          "name": "GenericTax",
          "price": "float",
          "priceCurrency": "currency",
          "priceComponentType": "GenericTax"
        },
        {
          "@type": "UnitPriceSpecification",
          "name": "Discount",
          "price": "float",
          "priceCurrency": "currency",
          "priceComponentType": "Discount"
        }
      ]
    }
  }
}

プロパティ

HotelRoom priceSpecification プロパティは次のとおりです。

プロパティ 必須 / 任意 タイプ 説明
Hotel.Offer.priceSpecification.price Required float

Product の 1 室あたりの税金と手数料を含む料金。

ランディング ページには、Google の料金とすべての料金の詳細が必ず明記されます。料金の詳細にアノテーションを付けると、料金精度の確認を完了できます。Google では、ホテルレベルと客室レベルの料金の両方を使用できます。

Hotel.Offer.priceSpecification.priceCurrency Required currency 指定された価格の 3 文字の通貨コード。(例: "USD" )。
Hotel.Offer.priceSpecification.priceComponent Optional UnitPriceSpecification[]

HotelRoomProduct にリンクされた、特典付きのホテルの客室と宿泊人数(税金、手数料を含む)の合計料金の内訳。価格の構造化データには次の 2 種類があります。

  • CompoundPriceSpecification には、次のような料金内訳が表示されます。

    • 基本料金: 1 泊の基本料金

    • 宿泊税: 税込みの 1 泊の料金。

    • 宿泊人数あたりの料金: 宿泊人数 1 名あたりの 1 泊の料金。

      occupancy は、特定の Offer ではなく、HotelRoom の明示的なプロパティです。料金は、リクエストした宿泊人数に対してのみタグ付けする必要があります。

    • 割引: 差し引き額。

  • UnitPriceSpecification は、請求のタイプを指定するために使用されます。追加料金を指定するには、PriceComponentTypeEnumeration 値を含める必要があります。

    PriceComponentTypeEnumeration の値は次のとおりです。

    • Discount: 料金に対する一般的な割引。

    • ResortFee: ホテルで別途支払う必要がある料金です。宿泊施設の種類によって異なる場合があります。

    • GenericTax: 追加税です。

    • ServiceFee: 予約チャネルによって請求される追加料金です。

    UnitPriceSpecificationname プロパティに値を設定する必要があります。価格の内訳を含める場合は、すべての値が必要で、UnitPriceSpecification コンポーネントで指定する必要があります。

客室料金の合計金額

以下は、滞在日数の合計料金と 1 人あたりの料金を定義する基本的な例です。

{
  "@context": "https://schema.org",
  "@type": ["HotelRoom", "Product"],
  "name": "Deluxe Room King, 1 Single Bed",
  "identifier": "hotel-room-id-1234",
  "bed": [
    {
      "@type": "BedDetails",
      "numberOfBeds": 1,
      "typeOfBed": "KING"
    },
    {
      "@type": "BedDetails",
      "numberOfBeds": 1,
      "typeOfBed": "SINGLE"
    }
  ],
  "occupancy": {
    "@type": "QuantitativeValue",
    "value": 2
  },
  "offers": {
    "@type": ["Offer", "LodgingReservation"],
    "checkinTime": "2023-03-10 15:00:00",
    "checkoutTime": "2023-03-16 10:00:00",
    "priceSpecification": {
      "@type": "CompoundPriceSpecification",
      "price": 1232.74,
      "priceCurrency": "USD"
    }
  },
  ...
}

客室料金の内訳

以下は、1 部屋または 1 つのプランあたりの料金の例です。料金内訳は、客室タイプ(Deluxe の部屋など)、bed および occupancy タイプ(KINGSINGLE のベッドなど)、定員 2 名に対して定義されます。

{
  "@context": "https://schema.org",
  "@type": ["HotelRoom", "Product"],
  "name": "Deluxe Room King, 1 Single Bed",
  "identifier": "hotel-room-id-1234",
  "offers": {
    "@type": ["Offer", "LodgingReservation"],
    "identifier": "rate-plan-id-of-member-rate",
    "checkinTime": "2023-03-10 15:00:00",
    "checkoutTime": "2023-03-16 10:00:00",
    "bed": [
      {
        "@type": "BedDetails",
        "numberOfBeds": 1,
        "typeOfBed": "KING"
      },
      {
        "@type": "BedDetails",
        "numberOfBeds": 1,
        "typeOfBed": "SINGLE"
      }
    ],
    "occupancy": {
      "@type": "QuantitativeValue",
      "value": 2
    },
    "priceSpecification": {
      "@type": "CompoundPriceSpecification",
      "price": 1222.74,
      "priceCurrency": "USD",
      "priceComponent": [
        {
          "@type": "UnitPriceSpecification",
          "name": "Base rate",
          "price": 1150,
          "priceCurrency": "USD"
        },
        {
          "@type": "UnitPriceSpecification",
          "name": "GenericTax",
          "price": 172.74,
          "priceCurrency": "USD",
          "priceComponentType": "GenericTax"
        },
        {
          "@type": "UnitPriceSpecification",
          "name": "Discount",
          "price": -100,
          "priceCurrency": "USD",
          "priceComponentType": "Discount"
        }
      ]
    }
  }
}

includesObject 件の宿泊施設

このプロパティは、食事のオプションや係員サービスなど、ホテルや客室で提供される料金固有のサービスにアノテーションを付けるために使用されます。includesObject には、Hotel または HotelRoom のいずれかのプロパティでアノテーションを付けることができます。

{
  "includesObject": [
    {
      "@type": "TypeAndQuantityNode",
      "typeOfGood": {
        "@type": "Service",
        "name": "Valet"
      }
    },
    {
      "@type": "TypeAndQuantityNode",
      "amountOfThisGood": "float",
      "unitText": "currency",
      "typeOfGood": {
        "@type": "FoodService",
        "name": "MealCredit"
      }
    }
  ]
}

構文

includesObject には、客室内で利用できる料金固有のサービスに対して次の構文があります。

JSON-LD

{
  "@context": "https://schema.org",
  ...
  "@type": ["HotelRoom", "Product"],
  ...
  "offers": {
    "@type": ["Offer", "LodgingReservation"],
    ...
    "priceSpecification": {
      "@type": "CompoundPriceSpecification",
      "price": "float",
      "priceCurrency": "currency"
    },
    "includesObject": [
      {
        "@type": "TypeAndQuantityNode",
        "typeOfGood": {
          "@type": "Service",
          "name": "Valet"
        }
      },
      {
        "@type": "TypeAndQuantityNode",
        "amountOfThisGood": "float",
        "unitText": "currency",
        "typeOfGood": {
          "@type": "FoodService",
          "name": "MealCredit"
        }
      }
    ]
  }
}

プロパティ

includesObject には次のプロパティがあります。

属性 必須かどうか タイプ 説明
Offer.includesObject Optional TypeAndQuantityNode

ホテルや客室で提供されるサービス。

料金固有の機能は includesObject プロパティに含まれています。"TypeAndQuantityNode.typeOfGood" の name フィールドは、係員や食事サービスなどのサービスの種類を示すために使用します。

料金固有の機能は、基本レベルの特典に含めることも、追加料金でアドオンとして指定することもできます。

includesObject には、次のように TypeAndQuantityNode 型の値が必要です。

  • BreakfastIncluded
  • DinnerIncluded
  • Valet
  • MealCredit

サービス

以下は、バレー パーキングとフードサービスの料金固有の機能の基本的な例です。料金固有の特徴は、"Offer.includesObject" プロパティで指定する必要があります。"TypeAndQuantityNode.typeOfGood" の name フィールドは、サービスのタイプを示すために使用します。

{
  "@context": "https://schema.org",
  "@type": ["HotelRoom", "Product"],
  "name": "Deluxe Room, 1 King Bed",
  "identifier": "hotel-room-id-1234",
  "offers": {
    "@type": ["Offer", "LodgingReservation"],
    "identifier": "rate-plan-id-of-member-rate",
    "checkinTime": "2023-03-10 15:00:00",
    "checkoutTime": "2023-03-16 10:00:00",
    "priceSpecification": {
      "@type": "CompoundPriceSpecification",
      "price": 1222.74,
      "priceCurrency": "USD"
    },
    "includesObject": [
      {
        "@type": "TypeAndQuantityNode",
        "typeOfGood": {
          "@type": "Service",
          "name": "Valet"
        }
      },
      {
        "@type": "TypeAndQuantityNode",
        "amountOfThisGood": 50,
        "unitText": "USD",
        "typeOfGood": {
          "@type": "FoodService",
          "name": "MealCredit"
        }
      }
    ]
  }
}

availability 件の宿泊施設

offer.availability プロパティは、ホテルの客室の完売した旅行プランにアノテーションを付けるために使用されます。

"offers": {
    "@type": ["Offer", "LodgingReservation"],
    "checkinTime": "YYYY-MM-DD[THH:mm:ss]",
    "checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
    "availability": "https://schema.org/SoldOut"
}

構文

availability プロパティの構文は次のとおりです。

JSON-LD

{
  "@context": "https://schema.org",
  ...
  "@type": ["HotelRoom", "Product"],
  "name": "room-type",
  "identifier": "hotel-room-id-1234",
  "bed": {
    "@type": "BedDetails",
    "numberOfBeds": "integer",
    "typeOfBed": "KING"
  },
  "occupancy": {
    "@type": "QuantitativeValue",
    "value": "integer"
  },
  "offers": {
    "@type": ["Offer", "LodgingReservation"],
    "checkinTime": "YYYY-MM-DD[THH:mm:ss]",
    "checkoutTime": "YYYY-MM-DD[THH:mm:ss]",
    "availability": "https://schema.org/SoldOut"
  }
}

プロパティ

availability プロパティは次のとおりです。

属性 必須かどうか タイプ 説明
Offer.availability Optional ItemAvailability

ホテルや部屋の空室状況。

料金は schema.org/Offer から抽出されます。料金情報は schema.org/Hotel または schema.org/HotelRoom を使用して作成されません。つまり、完売した旅行プランにも特典を用意する必要があるということです。

priceSpecification のないオファーは、購入不可とみなされます。利用できない特典は "Offer.availability= https://schema.org/SoldOut" として指定する必要があります。

クーポンに有効な priceSpecification. アノテーションが付いている場合、Offer.availability を指定する必要はありません。

可用性

以下は、ホテルの空室状況を示す基本的な例です。指定された部屋のベッドタイプ、ベッド数、利用人数の詳細を含める必要があります。

{
  "@context": "https://schema.org",
  "@type": ["HotelRoom", "Product"],
  "name": "Deluxe Room, 1 King Bed",
  "identifier": "hotel-room-id-1234",
  "bed": [
    {
      "@type": "BedDetails",
      "numberOfBeds": 1,
      "typeOfBed": "KING"
    },
    {
      "@type": "BedDetails",
      "numberOfBeds": 1,
      "typeOfBed": "SINGLE"
    }
  ],
  "occupancy": {
    "@type": "QuantitativeValue",
    "value": 2
  },
  "offers": {
    "@type": ["Offer", "LodgingReservation"],
    "checkinTime": "2023-03-10 15:00:00",
    "checkoutTime": "2023-03-16 10:00:00",
    "availability": "https://schema.org/SoldOut",
    "priceSpecification": {...}
  }
}

amenityFeature 件の宿泊施設

設備は、amenityFeature プロパティを使用して Hotel または HotelRoom タイプで指定できます。containsPlace プロパティを使用して、客室のアメニティ情報を指定する必要があります。

{
  "@type": "Hotel",
  "amenityFeature": [
    {
      "@type": "LocationFeatureSpecification",
      "name": "HotTub",
      "hoursAvailable": {
        "@type": "OpeningHoursSpecification",
        "opens": "HH:mm:ss",
        "closes": "HH:mm:ss"
      }
    },
    {
      "@type": "LocationFeatureSpecification",
      "name": "GymFitnessEquipment",
      "value": "boolean"
    }
  ],
  "containsPlace": {
    "@type": "HotelRoom",
    "amenityFeature": [
      {
        "@type": "LocationFeatureSpecification",
        "name": "Minibar",
        "value": true
      },
      {
        "@type": "LocationFeatureSpecification",
        "name": "Smoking",
        "value": false
      }
    ]
  }
}

構文

amenityFeature プロパティと containsPlace プロパティの構文は次のとおりです。

JSON-LD

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  ...
  "amenityFeature": {
    "@type": "LocationFeatureSpecification",
    "name": "HotTub",
    "hoursAvailable": {
      "@type": "OpeningHoursSpecification",
      "opens": "HH:mm:ss",
      "closes": "HH:mm:ss"
    }
  },
  "containsPlace": {
    "@type": "HotelRoom",
    "amenityFeature": {
      "@type": "LocationFeatureSpecification",
      "name": "Minibar",
      "value": "boolean"
    }
  }
}

設備

name プロパティで許可され、定義されている設備は以下のとおりです。

属性 必須かどうか タイプ 説明
amenityFeature.AC Optional boolean 宿泊施設にエアコンがあるかどうか。
amenityFeature.AirportShuttle Optional boolean ホストが空港やその他のターミナルとの間の移動手段を提供しているかどうか。
amenityFeature.Balcony Optional boolean 宿泊施設にバルコニーがあるかどうか。
amenityFeature.BeachAccess Optional boolean 宿泊施設の近くに公共のビーチがあるかどうか。
amenityFeature.ChildFriendly Optional boolean 宿泊施設がお子様に適しているかどうか。
amenityFeature.Crib Optional boolean 宿泊施設にベビーベッドが用意されているかどうか。
amenityFeature.Elevator Optional boolean 宿泊施設にエレベーターがあるかどうか。
amenityFeature.FirePlace Optional boolean 宿泊施設に暖炉があるかどうか。
amenityFeature.FreeBreakfast Optional boolean 宿泊施設の宿泊者全員分の朝食が無料かどうか。料金プランを使用して、特定の料金プランにのみ朝食が含まれるかどうかを指定します。
amenityFeature.GymFitnessEquipment Optional boolean 宿泊施設にジムやフィットネス設備があるかどうか。
amenityFeature.Heating Optional boolean 宿泊施設に暖房があるかどうか。
amenityFeature.HotTub Optional boolean 宿泊施設に温水浴槽があるかどうか。
amenityFeature.InstantBookable Optional boolean 宿泊施設の決済手続きが即時予約可能かどうか。代替手段は承認待ちです。
amenityFeature.IroningBoard Optional boolean 宿泊施設でアイロン台を利用できるかどうか。
amenityFeature.Kitchen Optional boolean 宿泊施設にキッチンがあるかどうか。
amenityFeature.Microwave Optional boolean 宿泊施設で電子レンジを利用できるかどうか。
amenityFeature.OpenAirBath(Hotels only) Optional boolean 宿泊施設に露天風呂が付いているかどうか。客室レベルで指定する場合、浴室は入居者専用にする必要があります。
amenityFeature.OutdoorGrill Optional boolean 宿泊施設にグリルがあるかどうか。
amenityFeature.OvenStove Optional boolean 宿泊施設にストーブがあるかどうか。
amenityFeature.Patio Optional boolean 宿泊施設にテラスがあるかどうか。
amenityFeature.Pool Optional boolean 宿泊施設にプールがあるかどうか。
amenityFeature.PrivateBeachAccess Optional boolean 宿泊施設に専用のプライベート ビーチがあるかどうか。
amenityFeature.SelfCheckinCheckout Optional boolean 宿泊施設がセルフ チェックイン / チェックアウトに対応しているかどうか。
amenityFeature.WasherDryer Optional boolean 宿泊施設に洗濯機があるかどうか。
amenityFeature.Wifi Optional boolean 宿泊施設で Wi-Fi が利用できるかどうか。
amenityFeature.Smoking Optional boolean 宿泊施設で喫煙が許可されているかどうか。
amenityFeature.InternetType Optional Enum

宿泊施設で利用できるインターネットの種類。

サポートされている値は次のとおりです。

  • FREE
  • PAID
  • NONE
amenityFeature.ParkingType Optional Enum

宿泊施設で利用できる駐車場の種類。

サポートされている値は次のとおりです。

  • FREE
  • PAID
  • NONE
amenityFeature.PoolType Optional Enum

宿泊施設で利用できるプールの種類。

サポートされている値は次のとおりです。

  • INDOOR
  • OUTDOOR
  • NONE
amenityFeature.RoomStyle Optional Enum

客室が和風デザインかどうかを示します。

サポートされている値は次のとおりです。

  • WESTERN
  • JAPANESE
  • JAPANESE_WESTERN
amenityFeature.LicenseNum Required string

世界の特定の地域で施設に表示されるビジネスの営業許可番号。これは繰り返すことができます。複数のライセンスが存在する場合は、ライセンスの所有者または権限を追加することをおすすめします。例: "Paris: 123456ABC"

プロパティ

amenityFeature プロパティは次のとおりです。

プロパティ 必須 / 任意 タイプ 説明
amenityFeature Optional LocationFeatureSpecification

ホテルや客室で提供される設備。これは、amenityFeature プロパティを使用して指定できます。選択した料金プランに関係なく、ホテルのすべての宿泊客がアメニティを利用できるようにする必要があります。amenityFeature は、LocationFeatureSpecification プロパティ値を使用して指定されます。

設備は Hotel または HotelRoom レベルで指定できます。

containsPlace Optional LocationFeatureSpecification

ホテルまたは客室で宿泊客全員に提供される設備。これは、amenityFeature を使用して指定できます。選択された料金プランに関係なく、ホテルの客室内のすべての宿泊客がアメニティを利用できるようにする必要があります。

Hotel.containsPlace.amenityFeature はホテルが提供する設備です。

HotelRoom.containsPlace.amenityFeature は客室内の設備です。

ホテルと客室の設備

以下は、プールが午前 10 時から午後 10 時まで営業していて、ジムが利用できない場合の例です。全室禁煙。ミニバーあり。

{
  "@context": "https://schema.org",
  "@type": "Hotel",
  "name": "ACME Hotel",
  "address": { ... },
  "amenityFeature": [
    {
      "@type": "LocationFeatureSpecification",
      "name": "HotTub",
      "hoursAvailable": {
        "@type": "OpeningHoursSpecification",
        "opens": "10:00:00",
        "closes": "22:00:00"
      }
    },
    {
      "@type": "LocationFeatureSpecification",
      "name": "GymFitnessEquipment",
      "value": false
    }
  ],
  "containsPlace": {
    "@type": "HotelRoom",
    "amenityFeature": [
      {
        "@type": "LocationFeatureSpecification",
        "name": "Minibar",
        "value": true
      },
      {
        "@type": "LocationFeatureSpecification",
        "name": "Smoking",
        "value": false
      }
    ],
    "offers": {
      "@type": ["Offer", "LodgingReservation"],
      "identifier": "rate-plan-id-of-member-rate",
      "checkinTime": "2023-03-10 15:00:00",
      "checkoutTime": "2023-03-16 10:00:00",
      "priceSpecification": {
        "@type": "CompoundPriceSpecification",
        "price": 1222.74,
        "priceCurrency": "USD"
      }
    }
  }
}