Anwendungsfälle
Die folgenden Anwendungsfälle zeigen gängige Beispiele für die Verwendung des BusReservation
-Schemas. Anhand dieser Beispiele kannst du dafür sorgen, dass dein 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 die Reservierungsdetails am Tag der Fahrt angezeigt und der Nutzer wird benachrichtigt, wenn er sich auf den Weg zur Bushaltestelle machen muss (unter Berücksichtigung von Verkehrsmitteln, Verkehr usw.). Wenn Sie wie im folgenden Beispiel eine Check-in-URL 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 eine Bordkarte für die Bestätigungskarte in einer separaten E-Mail auslösen.
Mithilfe von Bestätigungskarten kann der Nutzer nicht nur rechtzeitig zur Bushaltestelle gelangen, sondern auch das Ticket während der Fahrt anzeigen. Dazu müssen einige zusätzliche Felder im Markup enthalten sein. Wenn für die Passagiere zusätzliche Felder erforderlich sind, fügen Sie diese in das Feld additionalTicketText
ein.
Bei Tickets ohne reservierte Sitzplätze lauten diese 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>
Bei Tickets mit reservierten Sitzen gibt es folgende 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 ein Beispiel, bei dem alle unterstützten Felder ausgefüllt sind:
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
Du kannst dein Markup mit dem E-Mail-Markup-Tester validieren. Fügen Sie den Markup-Code ein und klicken Sie auf die Schaltfläche Validieren, um den Inhalt zu scannen und einen Fehler zu melden.
Spezifikation
Sehen Sie in den Details Ihrer E-Mail nach, ob eine dieser Unterkünfte für Ihre Busreservierung gilt. Wenn du diese zusätzlichen Properties mit Markup versiehst, kann Google den Nutzern eine deutlichere Beschreibung der Busreservierung anzeigen.
Attribut | Typ | Beschreibung |
---|---|---|
Reservierungsnummer | Text | (erforderlich) Die Nummer oder ID der Reservierung. |
url | URL | Webseite, auf der die Reservierung angezeigt werden kann. |
underName (Untername) | Person oder Organisation | (erforderlich) Der Passagier. |
underName.Name | Text | (Erforderlich) Name der Person. |
underName.E-Mail | Text | E-Mail-Adresse. |
Programmmitgliedschaft | Programme | Jede Mitgliedschaft in einem Vielfliegerprogramm, in einem Treuepunkteprogramm usw. für die Reservierung. |
programMitgliedschaft.memberNumber | Text | Die ID der Mitgliedschaft. |
programMembership.Programm | Text | Der Name des Programms. |
BookingAgent | Organisation oder Person | Buchungsagentur oder Agentur. Akzeptiert auch einen String (z.B. „). |
bookingAgent.Name | Text | Name des Agents/Dienstes. |
bookingAgent.URL | URL | Website des Agents/Dienstes. |
BookingTime | DateTime | Datum der Reservierung. |
Änderungszeit | DateTime | Empfohlen für Bestätigungskarten/Suchantworten Der Zeitpunkt der letzten Änderung der Reservierung. |
Reservierungs-URL bestätigen | URL | Webseite, auf der die Reservierung bestätigt werden kann. |
storniertReservierungs-URL | URL | Webseite, auf der Reservierungen storniert werden können. |
Reservierungs-URL ändern | URL | Empfohlen für Bestätigungskarten/Suchantworten Webseite, auf der Reservierungen geändert werden können. |
Check-in-URL | URL | Webseite, auf der der Passagier einchecken kann. |
Reservierungsstatus | Reservierungsstatus | (Erforderlich) Aktueller Status der Reservierung. |
Reservierung für | Busreisen | (Erforderlich) Informationen zur Busfahrt. |
reservationFor.Name | Text | Name der Busfahrt. |
reservationFor.busNummer | Text | Beispiel: 101. |
reservationFor.busName | Text | z.B. Bolt Express. |
reservationFor.busUnternehmen | Organisation | (erforderlich) z. B. Bolt NYC Akzeptiert auch einen String (z.B. „Bolt NYC“). |
reservationFor.busCompany.Name | Text | (Erforderlich) Name der Organisation. |
reservationFor.Abfahrtsbushaltestelle | BusStop oder BusStation | (erforderlich) Der Abfahrtsort des Buss. |
reservationFor.originBusStop.Name | Text | (erforderlich) Der Name der Bushaltestelle. |
reservationFor.AbflugBusStop.-Adresse | PostalAddress | Adresse der Haltestelle / Haltestelle der Abfahrt. |
reservationFor.originBusStop.address.streetAddress | Text | (für Bestätigungskarten/Antworten auf die Suche empfohlen) Adresse der Abfahrts-/Haltestelle. |
reservationFor.originBusStop.address.addressLocality | Text | Empfohlen für Bestätigungskarten/Suchantworten: Ort (z.B. Stadt) der Abfahrts-/Haltestelle. |
reservationFor.unsubscribeBusStop.address.addressRegion | Text | (für Bestätigungskarten/Antworten in der Suche empfohlen) Region (z.B. Bundesland) der Abfahrts-/Haltestelle. |
reservationFor.AbflugBusStop.address.postalCode | Text | (für Bestätigungskarten/Antworten in der Suche empfohlen) Postleitzahl der Abfahrts-/Haltestelle. |
reservationFor.originBusStop.address.addressCountry | Text oder Land | (für Bestätigungskarten/Antworten in der Suche empfohlen) Land, in dem die Haltestelle oder Haltestelle der Abfahrt ist. |
reservationFor.originBusStop.Route | Text | Wegbeschreibung zur Bushaltestelle. |
reservationFor.Abfahrtszeit | DateTime | (Erforderlich) Abfahrtszeit des Busses. |
reservationFor.arrivalBusStop | BusStop oder BusStation | (Erforderlich) Ankunftsort des Busses. |
reservationFor.arrivalBusStop.Name | Text | (erforderlich) Der Name der Bushaltestelle. |
reservationFor.arrivalBusStop.-Adresse | PostalAddress | Adresse der Bushaltestelle / Haltestelle. |
reservationFor.arrivalBusStop.address.streetAddress | Text | (für Bestätigungskarten/Antworten in der Suche empfohlen) Adresse der Bushaltestelle / Haltestelle. |
reservationFor.arrivalBusStop.address.addressLocality | Text | Empfohlen für Bestätigungskarten / Suchantworten: Ort (z.B. Stadt) der Bushaltestelle/Haltestelle. |
reservationFor.arrivalBusStop.address.addressRegion | Text | (empfohlen für Bestätigungskarten/Suchantworten) Region (z.B. Bundesstaat) der Bushaltestelle / Haltestelle. |
reservationFor.arrivalBusStop.address.postalCode | Text | (für Bestätigungskarten/Antworten in der Suche empfohlen) Postleitzahl der Ankunftshaltestelle/-haltestelle |
reservationFor.arrivalBusStop.address.addressCountry | Text oder Land | (für Bestätigungskarten/Antworten in der Suche empfohlen) Land, in dem die Bushaltestelle/Station der Ankunft ankommt. |
reservationFor.arrivalBusStop.Route | Text | Wegbeschreibung zur Bushaltestelle. |
reservationFor.Ankunftszeit | DateTime | (Erforderlich) Ankunftszeit des Busses. |
reserviertesTicket | Ticket | Ticketinformationen. |
reservierungTicket.ticketNummer | Text | Die Nummer oder ID des Tickets. |
reservedTicket.downloadUrl | URL | . |
reservedTicket.printUrl | URL | . |
reservedTicket.ticketToken | Text oder URL | Wenn das Barcode-Bild auf Ihrer Website gehostet wird, ist der Wert des Felds die URL des Bildes oder ein Barcode oder QR-URI, z. B. „barcode128:AB34“ (ISO-15417-Barcodes), „qrCode:AB34“ (QR-Codes), „aztecCode:AB34“ (Aztekencodes) oder „barcodeEAN:1234“ (EAN-Codes2). |
reservedTicket.additionalTicketText | Text | Zusätzliche Erklärung zum Ticket. |
reservedTicket | 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 gilt. |
reservedTicket.underName.Name | Text | Name der Person. |
reservedTicket.ticketedSeat | Sitz | Der Standort des reservierten Platzes (z.B. 27B). . |
reservedTicket.ticketedSeat.se | Text | Typ/Klasse des Sitzes. |
reserviertesTicket.ticketedSeat.seatNumber | Text | Die Position des reservierten Platzes. |
reservedTicket.ticketedSeat.seatRow | Text | Die Zeilenposition des reservierten Sitzplatzes. |