ユースケース
次のユースケースは、BusReservation
スキーマの一般的な使用例を示しています。以下の例を使用して、マークアップが正しく構造化されていることを確認してください。
基本的な予約の確認
予約確認を送信するときに、メールに次のマークアップを埋め込みます。
Google アプリに乗車当日に予約の詳細が表示され、(交通手段や交通状況などを考慮して)時間どおりにバス停に到着するための出発時刻がユーザーに通知されます。以下の例のようなチェックイン URL を提供すると、Google アプリはユーザーの移動の 24 時間前にこれを表示します。
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BusReservation",
"reservationNumber": "123456",
"underName": {
"@type": "Person",
"name": "John Smith"
},
"reservationStatus": "http://schema.org/ReservationConfirmed",
"reservationFor": {
"@type": "BusTrip",
"busCompany": {
"@type": "Organization",
"name": "Bolt NYC"
},
"departureBusStop": {
"@type": "BusStop",
"name": "Port Authority, NYC"
},
"departureTime": "2017-01-04T12:30:00-05:00",
"arrivalBusStop": {
"@type": "BusStop",
"name": "Boston South Station"
},
"arrivalTime": "2017-01-04T17:10:00-05:00"
}
}
</script>
microdata
<div itemscope itemtype="http://schema.org/BusReservation">
<meta itemprop="reservationNumber" content="123456"/>
<div itemprop="underName" itemscope itemtype="http://schema.org/Person">
<meta itemprop="name" content="John Smith"/>
</div>
<link itemprop="reservationStatus" href="http://schema.org/ReservationConfirmed"/>
<div itemprop="reservationFor" itemscope itemtype="http://schema.org/BusTrip">
<div itemprop="busCompany" itemscope itemtype="http://schema.org/Organization">
<meta itemprop="name" content="Bolt NYC"/>
</div>
<div itemprop="departureBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Port Authority, NYC"/>
</div>
<meta itemprop="departureTime" content="2017-01-04T12:30:00-05:00"/>
<div itemprop="arrivalBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Boston South Station"/>
</div>
<meta itemprop="arrivalTime" content="2017-01-04T17:10:00-05:00"/>
</div>
</div>
搭乗券とチケット
予約の確認に加えて、確認カードの搭乗券を別のメールでトリガーすることもできます。
確認カードにより、ユーザーが時間どおりにバス停に到着できるだけでなく、乗車中にチケットをユーザーに表示できます。そのためには、マークアップにいくつかの追加フィールドを含める必要があります。搭乗に必要な追加のフィールドがある場合は、additionalTicketText
フィールドに追加します。
予約席がないチケットの場合、フィールドは numSeats
、ticketNumber
、ticketToken
になります。
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BusReservation",
"reservationNumber": "123456",
"underName": {
"@type": "Person",
"name": "John Smith"
},
"reservationStatus": "http://schema.org/ReservationConfirmed",
"reservationFor": {
"@type": "BusTrip",
"busCompany": "Bolt NYC",
"departureBusStop": {
"@type": "BusStop",
"name": "Port Authority, NYC"
},
"departureTime": "2017-01-04T12:30:00-05:00",
"arrivalBusStop": {
"@type": "BusStop",
"name": "Boston South Station"
},
"arrivalTime": "2017-01-04T17:10:00-05:00"
},
"reservedTicket": {
"@type": "Ticket",
"underName": "John Smith",
"ticketNumber": "123XYZ",
"ticketToken": "aztecCode:AB34",
"additionalTicketText": "We recommend that you arrive at the station at least 30 minutes prior to your scheduled departure. Allow additional time if you need help with baggage or tickets."
}
}
</script>
microdata
<div itemscope itemtype="http://schema.org/BusReservation">
<meta itemprop="reservationNumber" content="123456"/>
<div itemprop="underName" itemscope itemtype="http://schema.org/Person">
<meta itemprop="name" content="John Smith"/>
</div>
<link itemprop="reservationStatus" href="http://schema.org/ReservationConfirmed"/>
<div itemprop="reservationFor" itemscope itemtype="http://schema.org/BusTrip">
<meta itemprop="busCompany" content="Bolt NYC"/>
<div itemprop="departureBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Port Authority, NYC"/>
</div>
<meta itemprop="departureTime" content="2017-01-04T12:30:00-05:00"/>
<div itemprop="arrivalBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Boston South Station"/>
</div>
<meta itemprop="arrivalTime" content="2017-01-04T17:10:00-05:00"/>
</div>
<div itemprop="reservedTicket" itemscope itemtype="http://schema.org/Ticket">
<meta itemprop="underName" content="John Smith"/>
<meta itemprop="ticketNumber" content="123XYZ"/>
<meta itemprop="ticketToken" content="aztecCode:AB34"/>
<meta itemprop="additionalTicketText" content="We recommend that you arrive at the station at least 30 minutes prior to your scheduled departure. Allow additional time if you need help with baggage or tickets."/>
</div>
</div>
座席を予約できるチケットの場合、フィールドは seatNumber
、seatingType
、ticketNumber
、ticketToken
になります。
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BusReservation",
"reservationNumber": "123456",
"underName": {
"@type": "Person",
"name": "John Smith"
},
"reservationStatus": "http://schema.org/ReservationConfirmed",
"reservationFor": {
"@type": "BusTrip",
"busCompany": "Bolt NYC",
"departureBusStop": {
"@type": "BusStop",
"name": "Port Authority, NYC"
},
"departureTime": "2017-01-04T12:30:00-05:00",
"arrivalBusStop": {
"@type": "BusStop",
"name": "Boston South Station"
},
"arrivalTime": "2017-01-04T17:10:00-05:00"
},
"reservedTicket": {
"@type": "Ticket",
"underName": "John Smith",
"ticketedSeat": {
"@type": "Seat",
"seatNumber": "27B",
"seatingType": "Coach"
},
"ticketNumber": "123XYZ",
"ticketToken": "aztecCode:AB34",
"additionalTicketText": "We recommend that you arrive at the station at least 30 minutes prior to your scheduled departure. Allow additional time if you need help with baggage or tickets."
}
}
</script>
microdata
<div itemscope itemtype="http://schema.org/BusReservation">
<meta itemprop="reservationNumber" content="123456"/>
<div itemprop="underName" itemscope itemtype="http://schema.org/Person">
<meta itemprop="name" content="John Smith"/>
</div>
<link itemprop="reservationStatus" href="http://schema.org/ReservationConfirmed"/>
<div itemprop="reservationFor" itemscope itemtype="http://schema.org/BusTrip">
<meta itemprop="busCompany" content="Bolt NYC"/>
<div itemprop="departureBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Port Authority, NYC"/>
</div>
<meta itemprop="departureTime" content="2017-01-04T12:30:00-05:00"/>
<div itemprop="arrivalBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Boston South Station"/>
</div>
<meta itemprop="arrivalTime" content="2017-01-04T17:10:00-05:00"/>
</div>
<div itemprop="reservedTicket" itemscope itemtype="http://schema.org/Ticket">
<meta itemprop="underName" content="John Smith"/>
<div itemprop="ticketedSeat" itemscope itemtype="http://schema.org/Seat">
<meta itemprop="seatNumber" content="27B"/>
<meta itemprop="seatingType" content="Coach"/>
</div>
<meta itemprop="ticketNumber" content="123XYZ"/>
<meta itemprop="ticketToken" content="aztecCode:AB34"/>
<meta itemprop="additionalTicketText" content="We recommend that you arrive at the station at least 30 minutes prior to your scheduled departure. Allow additional time if you need help with baggage or tickets."/>
</div>
</div>
サポートされているすべてのフィールドの例
参考として、サポートされているすべてのフィールドに値が入力された例を次に示します。
JSON-LD
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "BusReservation",
"reservationNumber": "123456",
"url": "http://boltbus.com/view/123456",
"underName": {
"@type": "Person",
"name": "John Smith",
"email": "john@mail.com"
},
"programMembership": {
"@type": "ProgramMembership",
"memberNumber": "12345",
"program": "STA"
},
"bookingAgent": {
"@type": "Organization",
"name": "Bolt Bus NYC",
"url": "http://boltbus.com/"
},
"bookingTime": "2013-01-14T13:05:00-05:00",
"modifiedTime": "2013-03-14T13:05:00-05:00",
"confirmReservationUrl": "http://boltbus.com/confirm?id=123456",
"cancelReservationUrl": "http://boltbus.com/cancel?id=123456",
"modifyReservationUrl": "http://boltbus.com/edit?id=123456",
"checkinUrl": "http://boltbus.com/checkin?id=AB3XY2",
"reservationStatus": "http://schema.org/ReservationConfirmed",
"reservationFor": {
"@type": "BusTrip",
"name": "?",
"busNumber": "63",
"busName": "Bolt Bus NY:Boston",
"busCompany": {
"@type": "Organization",
"name": "Bolt NYC"
},
"departureBusStop": {
"@type": "BusStop",
"name": "Port Authority, NYC",
"address": {
"@type": "PostalAddress",
"streetAddress": "625 8th Avenue",
"addressLocality": "New York",
"addressRegion": "NY",
"postalCode": "10018",
"addressCountry": "USA"
},
"directions": "Bus terminals are at floors 2-4 of the Port Authority building"
},
"departureTime": "2017-01-04T12:30:00-05:00",
"arrivalBusStop": {
"@type": "BusStop",
"name": "Boston South Station",
"address": {
"@type": "PostalAddress",
"streetAddress": "Summer St.",
"addressLocality": "Boston",
"addressRegion": "MA",
"postalCode": "02111",
"addressCountry": "USA"
},
"directions": "Bus stops are at thewest side of the train station."
},
"arrivalTime": "2017-01-04T17:10:00-05:00"
},
"reservedTicket": {
"@type": "Ticket",
"ticketNumber": "123XYZ",
"downloadUrl": "?",
"printUrl": "?",
"ticketToken": "qrCode:123456789",
"additionalTicketText": "?",
"price": "45.00",
"priceCurrency": "USD",
"underName": {
"@type": "Person",
"name": "Mary Smith"
},
"ticketedSeat": {
"@type": "Seat",
"seatingType": "Coach",
"seatNumber": "27",
"seatRow": "A"
}
}
}
</script>
microdata
<div itemscope itemtype="http://schema.org/BusReservation">
<meta itemprop="reservationNumber" content="123456"/>
<link itemprop="url" href="http://boltbus.com/view/123456"/>
<div itemprop="underName" itemscope itemtype="http://schema.org/Person">
<meta itemprop="name" content="John Smith"/>
<meta itemprop="email" content="john@mail.com"/>
</div>
<div itemprop="programMembership" itemscope itemtype="http://schema.org/ProgramMembership">
<meta itemprop="memberNumber" content="12345"/>
<meta itemprop="program" content="STA"/>
</div>
<div itemprop="bookingAgent" itemscope itemtype="http://schema.org/Organization">
<meta itemprop="name" content="Bolt Bus NYC"/>
<link itemprop="url" href="http://boltbus.com/"/>
</div>
<meta itemprop="bookingTime" content="2013-01-14T13:05:00-05:00"/>
<meta itemprop="modifiedTime" content="2013-03-14T13:05:00-05:00"/>
<link itemprop="confirmReservationUrl" href="http://boltbus.com/confirm?id=123456"/>
<link itemprop="cancelReservationUrl" href="http://boltbus.com/cancel?id=123456"/>
<link itemprop="modifyReservationUrl" href="http://boltbus.com/edit?id=123456"/>
<link itemprop="checkinUrl" href="http://boltbus.com/checkin?id=AB3XY2"/>
<link itemprop="reservationStatus" href="http://schema.org/ReservationConfirmed"/>
<div itemprop="reservationFor" itemscope itemtype="http://schema.org/BusTrip">
<meta itemprop="name" content="?"/>
<meta itemprop="busNumber" content="63"/>
<meta itemprop="busName" content="Bolt Bus NY:Boston"/>
<div itemprop="busCompany" itemscope itemtype="http://schema.org/Organization">
<meta itemprop="name" content="Bolt NYC"/>
</div>
<div itemprop="departureBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Port Authority, NYC"/>
<div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
<meta itemprop="streetAddress" content="625 8th Avenue"/>
<meta itemprop="addressLocality" content="New York"/>
<meta itemprop="addressRegion" content="NY"/>
<meta itemprop="postalCode" content="10018"/>
<meta itemprop="addressCountry" content="USA"/>
</div>
<meta itemprop="directions" content="Bus terminals are at floors 2-4 of the Port Authority building"/>
</div>
<meta itemprop="departureTime" content="2017-01-04T12:30:00-05:00"/>
<div itemprop="arrivalBusStop" itemscope itemtype="http://schema.org/BusStop">
<meta itemprop="name" content="Boston South Station"/>
<div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
<meta itemprop="streetAddress" content="Summer St."/>
<meta itemprop="addressLocality" content="Boston"/>
<meta itemprop="addressRegion" content="MA"/>
<meta itemprop="postalCode" content="02111"/>
<meta itemprop="addressCountry" content="USA"/>
</div>
<meta itemprop="directions" content="Bus stops are at thewest side of the train station."/>
</div>
<meta itemprop="arrivalTime" content="2017-01-04T17:10:00-05:00"/>
</div>
<div itemprop="reservedTicket" itemscope itemtype="http://schema.org/Ticket">
<meta itemprop="ticketNumber" content="123XYZ"/>
<meta itemprop="downloadUrl" content="?"/>
<meta itemprop="printUrl" content="?"/>
<meta itemprop="ticketToken" content="qrCode:123456789"/>
<meta itemprop="additionalTicketText" content="?"/>
<meta itemprop="price" content="45.00"/>
<meta itemprop="priceCurrency" content="USD"/>
<div itemprop="underName" itemscope itemtype="http://schema.org/Person">
<meta itemprop="name" content="Mary Smith"/>
</div>
<div itemprop="ticketedSeat" itemscope itemtype="http://schema.org/Seat">
<meta itemprop="seatingType" content="Coach"/>
<meta itemprop="seatNumber" content="27"/>
<meta itemprop="seatRow" content="A"/>
</div>
</div>
</div>
マークアップをテスト
マークアップは、メール マークアップ テスターツールを使用して検証できます。マークアップ コードを貼り付けて、[検証] ボタンをクリックしてコンテンツをスキャンし、エラーに関するレポートを生成します。
仕様
メールの詳細を確認し、これらの宿泊施設がバスの予約に当てはまるかどうかを確認してください。これらの追加のプロパティをマークアップすることで、Google はバスの予約に関する詳細な説明をユーザーに表示できるようになります。
プロパティ | タイプ | 説明 |
---|---|---|
reservationNumber | テキスト | (必須)予約の番号または ID。 |
URL | URL | 予約を確認できるウェブページ。 |
underName | Person または Organization | (必須)乗客。 |
underName.name | テキスト | (必須)担当者の名前。 |
underName.email | テキスト | メールアドレス。 |
programMembership | ProgramMembership | マイレージやホテルのポイント プログラムなどのメンバーシップが予約に適用されます。 |
programMembership.memberNumber | テキスト | メンバーシップの ID。 |
programMembership.program | テキスト | プログラムの名前。 |
bookingAgent | Organization または Person | 予約代理店または代理店。文字列("" など)も指定できます。 |
bookingAgent.name | テキスト | エージェント/サービスの名前。 |
bookingAgent.url | URL | エージェント/サービスのウェブサイト。 |
bookingTime | DateTime | 予約が行われた日付。 |
modifiedTime | DateTime | (確認カードや検索の回答に推奨)予約が最後に変更された時刻。 |
confirmReservationUrl | URL | 予約を確認できるウェブページ。 |
cancelReservationUrl | URL | 予約をキャンセルできるウェブページ。 |
modifyReservationUrl | URL | (確認カードや検索の回答に推奨)予約を変更できるウェブページ。 |
checkinUrl | URL | 乗客がチェックインできるウェブページ。 |
reservationStatus | ReservationStatus | (必須)予約の現在のステータス。 |
reservationFor | BusTrip | (必須)バスの旅程に関する情報。 |
reservationFor.name | テキスト | BusTrip の名前です。 |
reservationFor.busNumber | テキスト | 例:101. |
reservationFor.busName | テキスト | 例:ボルト エクスプレス。 |
reservationFor.busCompany | 組織 | (必須)。例:Bolt NYC。文字列(「Bolt NYC」など)も使用できます。 |
reservationFor.busCompany.name | テキスト | (必須)組織の名前。 |
reservationFor.departureBusStop | BusStop または BusStation | (必須)バスの出発地。 |
reservationFor.departureBusStop.name | テキスト | (必須)BusStop の名前。 |
reservationFor.departureBusStop.address | PostalAddress | 出発駅または停留所の住所。 |
reservationFor.departureBusStop.address.streetAddress | テキスト | (確認カードや検索の回答に推奨)出発するバス停の番地。 |
reservationFor.departureBusStop.address.addressLocality | テキスト | (確認カードや検索の回答に推奨)出発するバス停 / 駅の地域(都市など)。 |
reservationFor.departureBusStop.address.addressRegion | テキスト | (確認カードや検索の回答に推奨)出発するバス停 / 駅の地域(都道府県など)。 |
reservationFor.departureBusStop.address.postalCode | テキスト | (確認カードや検索の回答に推奨)出発バス停または駅の郵便番号。 |
reservationFor.departureBusStop.address.addressCountry | テキストまたは国 | (確認カードや検索の回答に推奨)出発するバスの停留所または駅の所在国。 |
reservationFor.departureBusStop.directions | テキスト | バス停までの経路。 |
reservationFor.departureTime | DateTime | (必須)バスの出発時刻。 |
reservationFor.arrivalBusStop | BusStop または BusStation | (必須)バスの到着地。 |
reservationFor.arrivalBusStop.name | テキスト | (必須)BusStop の名前。 |
reservationFor.arrivalBusStop.address | PostalAddress | 到着バス停または駅の住所。 |
reservationFor.arrivalBusStop.address.streetAddress | テキスト | (確認カードや検索の回答に推奨)到着するバス停または駅の番地。 |
reservationFor.arrivalBusStop.address.addressLocality | テキスト | (確認カードや検索の回答に推奨)到着するバス停 / 駅の地域(都市など)。 |
reservationFor.arrivalBusStop.address.addressRegion | テキスト | (確認カードや検索の回答に推奨)到着するバス停 / 駅の地域(都道府県など)。 |
reservationFor.arrivalBusStop.address.postalCode | テキスト | (確認カードや検索の回答に推奨)到着するバス停または駅の郵便番号。 |
reservationFor.arrivalBusStop.address.addressCountry | テキストまたは国 | (確認カードや検索の回答に推奨)到着したバスの停留所または駅。 |
reservationFor.arrivalBusStop.directions | テキスト | バス停までの経路。 |
reservationFor.arrivalTime | DateTime | (必須)バスの到着時刻。 |
reservedTicket | チケット | チケット情報。 |
reservedTicket.ticketNumber | テキスト | チケットの番号または ID。 |
reservedTicket.downloadUrl | URL | をタップします。 |
reservedTicket.printUrl | URL | をタップします。 |
reservedTicket.ticketToken | テキストまたは URL | バーコード画像がサイトでホストされている場合、フィールドの値は画像の URL、または「barcode128:AB34」などのバーコードまたは QR URI になります。(ISO-15417 バーコード)、「qrCode:AB34」(QR コード)、「aztecCode:AB34」(Aztec コード)、「barcodeEAN:1234」(EAN コード)と「barcodeUPCA:1234」(UPCA コード)。 |
reservedTicket.additionalTicketText | テキスト | チケットに関する追加の説明文。 |
reservedTicket.price | テキスト | チケットの合計金額。 |
reservedTicket.priceCurrency | テキスト | チケットの価格の通貨(3 文字の ISO 4217 形式)。 |
reservedTicket.underName | Person または Organization | チケットの対象となる個人または組織。 |
reservedTicket.underName.name | テキスト | 担当者の名前。 |
reservedTicket.ticketedSeat | 座席: | 予約席の場所(例:27B)。 をタップします。 |
reservedTicket.ticketedSeat.seatingType | テキスト | 座席のタイプ/クラス。 |
reservedTicket.ticketedSeat.seatNumber | テキスト | 予約席の場所。 |
reservedTicket.ticketedSeat.seatRow | テキスト | 予約された座席の行の場所。 |