酒店价格结构化数据参考

此页面提供了一个参考,可帮助您向酒店的价格数据添加结构化数据标记。

概览

酒店价格结构化数据用于详细说明、验证和显示您网站上列出的酒店价格,无论用户界面如何。还包括基本价格、费率、客房、费用和税费以及与价格相关的字段。

Google 建议合作伙伴使用 schema.org 提供的可供抓取工具读取的标准化结构化数据来注释网页,以便准确地从网页中抓取价格。

这样一来,我们便可以通过提高抓取工具的可靠性来扩大价格准确性验证范围。这对您有益,因为您可以增加价格准确性验证次数,直接调试价格准确性问题,并获得一致的价格准确性得分。

如果您不熟悉结构化数据,可以详细了解结构化数据词汇和格式

Google 酒店建议使用 JSON-LD 格式来标记您的网页。如需详细了解其他可接受的格式,请参阅支持的格式。本文档提供了详细的参考内容,专门针对酒店中的结构化数据实现。

Hotel 结构化数据用于注释网页中的酒店专用字段。Hotel 结构化数据具有以下属性:

HotelRoom 结构化数据用于注释网页中的客房专用字段。

HotelRoom 结构化数据具有以下属性:

酒店结构化数据

nameaddress 属性

nameaddress 属性用于为酒店的名称和位置添加注释。以下是 nameaddress 属性:

  "@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."
    },

语法

nameaddress 属性使用以下语法:

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"]
    ...
  }
}

属性

以下是 nameaddress 属性:

属性 是否必需? 类型 说明
Hotel.name Required string 酒店名称
Hotel.identifier Required string

合作伙伴的酒店 ID。

标识符必须是每个酒店的唯一字符串,并且应与价格 Feed 中使用的字符串完全一致。

Hotel.address Optional PostalAddress 酒店的地址或位置。

示例

姓名和地址

以下是添加 nameaddress 注释的基本示例:

{
"@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

以下是一个用于注释酒店优惠的基本示例。您可以为行程指定多个优惠,但应先指定 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 个房源

此属性用于为酒店或酒店客房添加价格信息注释。您还需要添加两个额外的属性来注释价格和税费。您应使用 CompoundPriceSpecification 来指定总价格信息,例如基本费率、税费和折扣。使用 UnitPriceSpecification 指定其他税费或特殊类型的费用,例如 ResortFeeGenericTaxServiceFeepriceSpecification 属性与 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"
        }
      ]
    }
  }
}

微数据

  <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 指定价格所对应的三字母货币代码。例如:"USD"
Hotel.Offer.priceSpecification.priceComponent Optional UnitPriceSpecification[]

酒店的总价明细,包括税费和其他费用。 价格结构化数据分为两种类型:

  • CompoundPriceSpecification 提供价格明细,包括以下内容:

    • 基本房价:每晚的基本价格

    • 每次住宿的税费:含税的每晚价格。

    • 每位入住者的费用:每晚每位入住者的价格。

    • 折扣:扣减金额。

  • UnitPriceSpecification 用于指定费用类型。 您应添加 PriceComponentTypeEnumeration 值来指定额外费用。

    PriceComponentTypeEnumeration 的值如下:

    • Discount:价格的常规折扣。

    • ResortFee:这是必须在酒店支付的额外费用。具体费用可能因住宿房源类型而异。

    • GenericTax:这是一种额外的杂项税费。

    • ServiceFee:这是预订渠道收取的额外费用。

    • TransferFee:这是前往酒店的交通费用,由酒店或预订渠道收取,实际上是强制性费用。

您必须在 priceComponentType 属性中设置值。如果您选择添加 UnitPriceSpecification,则必须提供所有值,并且必须在 UnitPriceSpecification 属性中指定这些值。

Hotel.Offer.priceSpecification.priceComponent. potentialAction Optional PayAction

酒店付款点。酒店付款流程包括在预订网站上退房时以及在酒店入住时收取的费用。

您应使用与 PayAction 的“recipient”字段捆绑在一起的 potentialAction 属性来指明付款点。请参阅 PayAction,详细了解 recipient 属性。

Google 支持为 PayAction 的收件人设置以下两种值:

  • recipient.@type = "OnlineBusiness" 是指在线商家在预订时收取的款项。如果未指定 potentialAction,则此值为默认设置。

  • recipient.@type = "Hotel" 指的是在酒店收取的款项。

示例

JSON-LD 示例

价格

以下是一个向网页添加价格结构化数据的基本示例。makesOffer 属性中可以包含多个酒店级优惠。

如果您选择指定 address 属性,则必须指定 PostalAddress 类型(例如 addressCountrypostalCodestreetAddress)和其他字段。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 组件定义。请务必使用与 UnitPriceSpecification 组件对应的值设置 priceComponentType 字段。

住宿期限的总价应在 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

套餐总价为 1170 美元,在线网站会在预订时收取部分总价(即 1150 美元),这部分价格使用 "@type": "OnlineBusiness" 指定,而用户必须在酒店入住时支付剩余的 20 美元,这部分价格使用 @type": "Hotel" 指定。

您必须指定 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": { ... }
            }
          }
        }
      ]
    }
  }
}

微数据示例

价格明细

以下是包含价格细分的 priceSpecification 属性示例。基本费率、税费(例如一般税费)和折扣使用 UnitPriceSpecification 组件定义。请务必使用与 UnitPriceSpecification 组件对应的值设置 name 属性。

住宿期限的总价应在 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 注释用于标记房间行程。您应使用 offers 属性来指定 HotelRoom

"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"
    }
  }
}

bedoccupancy 属性

bed 属性用于注释房间内的床位类型和床位数量。occupancy 属性用于注释房间内的房客人数。可以使用 HotelRoom 属性指定 bedoccupancy 属性。

"@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"
  }
}

语法

bedoccupancy 属性的语法如下:

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"
        },
        ...
      }
    }
  }
}

bedoccupancy 属性只能使用 HotelRoom 属性进行设置。通过 containsPlace 属性,可以将客房级价格等客房专用信息添加到 Hotel 属性中。请参阅 HotelHotelRoom 规范示例

属性

以下是 bedoccupancy 属性:

属性 是否必需? 类型 说明
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

用于注释与特定客房关联的客房级房价。它还可用于指定客房内的设施。

详细了解如何在 amenityFeature 属性中使用 containsPlace

示例

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

以下示例展示了如何为 HotelHotelRoom 属性以及 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 个房源

酒店客房价格规范与酒店价格规范类似。不同之处在于,客房价格是使用 Product.offers 属性(而非 Hotel.makesOffer 属性)指定的。

"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 的税费及其他费用。

Google 房价应始终在着陆页上显示,同时附上完整的房价详情。通过添加费率详细信息注释,您可以完成价格准确性检查。Google 既接受酒店级价格,也接受客房级价格。

Hotel.Offer.priceSpecification.priceCurrency Required currency 指定价格所对应的三字母货币代码。例如:"USD"
Hotel.Offer.priceSpecification.priceComponent Optional UnitPriceSpecification[]

酒店客房的总价明细,包括税费和其他费用,以及与 HotelRoomProduct 关联的优惠对应的入住人数。 价格结构化数据分为两种类型:

  • CompoundPriceSpecification 提供价格明细,包括以下内容:

    • 基本房价:每晚的基本价格

    • 每次住宿的税费:含税的每晚价格。

    • 每位入住者的费用:每晚每位入住者的价格。

      occupancyHotelRoom 的显式属性,而不是特定 Offer 的属性。 应仅针对所请求的入住人数标记房价。

    • 折扣:扣减金额。

  • UnitPriceSpecification 用于指定费用类型。 您应添加 PriceComponentTypeEnumeration 值来指定额外费用。

    PriceComponentTypeEnumeration 的值如下:

    • Discount:价格的常规折扣。

    • ResortFee:这是必须在酒店支付的额外费用。具体费用可能因住宿房源类型而异。

    • GenericTax:这是一种额外的杂项税费。

    • ServiceFee:这是预订渠道收取的额外费用。

    您必须在 UnitPriceSpecificationname 属性中设置值。如果您选择添加价格明细,则所有值都是必需的,并且必须在 UnitPriceSpecification 组件中指定。

示例

客房总价

以下是一个基本示例,展示了如何定义住宿时段的总价和每位入住者的价格。

{
  "@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"
    }
  },
  ...
}

房价明细

以下是每间客房或每个方案的价格示例。价格明细是针对客房类型(例如 Deluxe 客房)以及 bedoccupancy 类型(例如 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 个房源

此属性用于注释酒店或客房内提供的特定房价服务,例如餐点选项和代客泊车服务。您可以在 HotelHotelRoom 属性中对 includesObject 进行注释。

{
  "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/Hotelschema.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 属性以 HotelHotelRoom 类型指定设施。您应使用 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
      }
    ]
  }
}

语法

amenityFeaturecontainsPlace 属性具有以下语法:

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 属性值指定。

可以在 HotelHotelRoom 级别指定设施。

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"
      }
    }
  }
}