Anwendungsfälle
Die folgenden Anwendungsfälle zeigen gängige Beispiele für die Verwendung des Schemas BusReservation. Anhand dieser Beispiele können Sie prüfen, ob Ihr Markup richtig strukturiert ist.
Einfache Reservierungsbestätigung
Betten Sie das folgende Markup in Ihre E‑Mail ein, wenn Sie eine Reservierungsbestätigung senden.
In der Google App werden am Tag der Reise die Reservierungsdetails angezeigt. Außerdem wird der Nutzer benachrichtigt, wann er losfahren muss, um rechtzeitig an der Bushaltestelle zu sein (unter Berücksichtigung des Verkehrsmittels, des Verkehrs usw.). Wenn Sie eine Check-in-URL wie im folgenden Beispiel angeben, wird sie dem Nutzer 24 Stunden vor der Reise in der Google App angezeigt.
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>
Mikrodaten
<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>
Bordkarte und Ticket
Zusätzlich zu einer Reservierungsbestätigung können Sie in einer separaten E‑Mail eine Bordkarte mit Bestätigungskarte auslösen.
Bestätigungskarten können dem Nutzer nicht nur helfen, rechtzeitig an der Bushaltestelle zu sein, sondern ihm auch das Ticket während der Reise anzeigen. Dazu müssen einige zusätzliche Felder in das Markup aufgenommen werden. Wenn zusätzliche Felder für das Einsteigen von Passagieren erforderlich sind, fügen Sie sie dem Feld additionalTicketText hinzu.
Für Tickets ohne reservierte Sitzplätze sind dies die Felder : 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>
Mikrodaten
<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>
Für Tickets mit reservierten Sitzplätzen sind dies die Felder : 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>
Mikrodaten
<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>
Beispiel mit allen unterstützten Feldern
Hier ist ein Beispiel mit allen ausgefüllten unterstützten Feldern:
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>
Mikrodaten
<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>
Markup testen
Sie können Ihr Markup mit dem Tool zum Testen von E‑Mail-Markup validieren. Fügen Sie Ihren Markup-Code ein und klicken Sie auf die Schaltfläche Validieren , um den Inhalt zu scannen und einen Bericht zu allen Fehlern zu erhalten.
Spezifikation
Prüfen Sie die Details Ihrer E‑Mail, um festzustellen, ob eine dieser Eigenschaften auf Ihre Busreservierung zutrifft. Wenn Sie diese zusätzlichen Eigenschaften kennzeichnen, kann Google dem Nutzer eine viel detailliertere Beschreibung der Busreservierung anzeigen.
| Attribut | Typ | Beschreibung |
|---|---|---|
| reservationNumber | Text | (Erforderlich) Die Nummer oder ID der Reservierung. |
| url | URL | Webseite, auf der die Reservierung eingesehen werden kann. |
| underName | Person oder Organisation | (Erforderlich) Der Passagier. |
| underName.name | Text | (Erforderlich) Name der Person. |
| underName.email | Text | E-Mail-Adresse. |
| programMembership | ProgramMembership | Alle Mitgliedschaften in einem Vielfliegerprogramm, Hotel-Treueprogramm usw., die auf die Reservierung angewendet werden. |
| programMembership.memberNumber | Text | Die ID der Mitgliedschaft. |
| programMembership.program | Text | Der Name des Programms. |
| bookingAgent | Organisation oder Person | Agentur. Akzeptiert auch einen String (z.B. ""). |
| bookingAgent.name | Text | Name des Agenten/Dienstes. |
| bookingAgent.url | URL | Webseite des Agenten/Dienstes. |
| bookingTime | DateTime | Datum, an dem die Reservierung vorgenommen wurde. |
| modifiedTime | DateTime | (Empfohlen für Bestätigungskarten/Suchantworten) Zeitpunkt, an dem die Reservierung zuletzt geändert wurde. |
| confirmReservationUrl | URL | Webseite, auf der die Reservierung bestätigt werden kann. |
| cancelReservationUrl | URL | Webseite, auf der die Reservierung storniert werden kann. |
| modifyReservationUrl | URL | (Empfohlen für Bestätigungskarten/Suchantworten) Webseite, auf der die Reservierung geändert werden kann. |
| checkinUrl | URL | Webseite, auf der der Passagier einchecken kann. |
| reservationStatus | ReservationStatus | (Erforderlich) Aktueller Status der Reservierung. |
| reservationFor | BusTrip | (Erforderlich) Informationen zur Busfahrt. |
| reservationFor.name | Text | Name der Busreise. |
| reservationFor.busNumber | Text | z.B. 101. |
| reservationFor.busName | Text | z.B. Bolt Express. |
| reservationFor.busCompany | Organisation | (Erforderlich) z.B. Bolt NYC. Akzeptiert auch einen String (z.B. „Bolt NYC“). |
| reservationFor.busCompany.name | Text | (Erforderlich) Name der Organisation. |
| reservationFor.departureBusStop | BusStop oder BusStation | (Erforderlich) Ort, von dem der Bus abfährt. |
| reservationFor.departureBusStop.name | Text | (Erforderlich) Name der Bushaltestelle. |
| reservationFor.departureBusStop.address | PostalAddress | Adresse der Abfahrtsbushaltestelle/-station. |
| reservationFor.departureBusStop.address.streetAddress | Text | (Empfohlen für Bestätigungskarten/Suchantworten) Straße der Abfahrtsbushaltestelle/-station. |
| reservationFor.departureBusStop.address.addressLocality | Text | (Empfohlen für Bestätigungskarten/Suchantworten) Ort (z.B. Stadt) der Abfahrtsbushaltestelle/-station. |
| reservationFor.departureBusStop.address.addressRegion | Text | (Empfohlen für Bestätigungskarten/Suchantworten) Region (z.B. Bundesstaat) der Abfahrtsbushaltestelle/-station. |
| reservationFor.departureBusStop.address.postalCode | Text | (Empfohlen für Bestätigungskarten/Suchantworten) Postleitzahl der Abfahrtsbushaltestelle/-station. |
| reservationFor.departureBusStop.address.addressCountry | Text oder Land | (Empfohlen für Bestätigungskarten/Suchantworten) Land der Abfahrtsbushaltestelle/-station. |
| reservationFor.departureBusStop.directions | Text | Wegbeschreibung zur Bushaltestelle. |
| reservationFor.departureTime | DateTime | (Erforderlich) Abfahrtszeit des Busses. |
| reservationFor.arrivalBusStop | BusStop oder BusStation | (Erforderlich) Ort, an dem der Bus ankommt. |
| reservationFor.arrivalBusStop.name | Text | (Erforderlich) Name der Bushaltestelle. |
| reservationFor.arrivalBusStop.address | PostalAddress | Adresse der Ankunftsbushaltestelle/-station. |
| reservationFor.arrivalBusStop.address.streetAddress | Text | (Empfohlen für Bestätigungskarten/Suchantworten) Straße der Ankunftsbushaltestelle/-station. |
| reservationFor.arrivalBusStop.address.addressLocality | Text | (Empfohlen für Bestätigungskarten/Suchantworten) Ort (z.B. Stadt) der Ankunftsbushaltestelle/-station. |
| reservationFor.arrivalBusStop.address.addressRegion | Text | (Empfohlen für Bestätigungskarten/Suchantworten) Region (z.B. Bundesstaat) der Ankunftsbushaltestelle/-station. |
| reservationFor.arrivalBusStop.address.postalCode | Text | (Empfohlen für Bestätigungskarten/Suchantworten) Postleitzahl der Ankunftsbushaltestelle/-station. |
| reservationFor.arrivalBusStop.address.addressCountry | Text oder Land | (Empfohlen für Bestätigungskarten/Suchantworten) Land der Ankunftsbushaltestelle/-station. |
| reservationFor.arrivalBusStop.directions | Text | Wegbeschreibung zur Bushaltestelle. |
| reservationFor.arrivalTime | DateTime | (Erforderlich) Ankunftszeit des Busses. |
| reservedTicket | Ticket | Ticketinformationen. |
| reservedTicket.ticketNumber | Text | Die Nummer oder ID des Tickets. |
| reservedTicket.downloadUrl | URL | . |
| reservedTicket.printUrl | URL | . |
| reservedTicket.ticketToken | Text oder URL | Wenn das Barcodebild auf Ihrer Website gehostet wird, ist der Wert des Feldes die URL des Bildes oder ein Barcode oder QR-URI, z. B. „barcode128:AB34“ (ISO-15417-Barcodes), „qrCode:AB34“ (QR-Codes), „aztecCode:AB34“ (Aztec-Codes), „barcodeEAN:1234“ (EAN-Codes) und „barcodeUPCA:1234“ (UPCA-Codes). |
| reservedTicket.additionalTicketText | Text | Zusätzlicher erläuternder Text zum Ticket. |
| reservedTicket.price | Text | Gesamtpreis des Tickets. |
| reservedTicket.priceCurrency | Text | Die Währung des Ticketpreises im dreistelligen ISO 4217-Format. |
| reservedTicket.underName | Person oder Organisation | Die Person oder Organisation, für die das Ticket bestimmt ist. |
| reservedTicket.underName.name | Text | Name der Person. |
| reservedTicket.ticketedSeat | Sitz | Der Ort des reservierten Sitzplatzes (z.B. 27B). . |
| reservedTicket.ticketedSeat.seatingType | Text | Der Typ/die Klasse des Sitzplatzes. |
| reservedTicket.ticketedSeat.seatNumber | Text | Der Ort des reservierten Sitzplatzes. |
| reservedTicket.ticketedSeat.seatRow | Text | Die Reihe des reservierten Sitzplatzes. |