Casi d'uso
I seguenti casi d'uso mostrano esempi comuni di come viene utilizzato lo schema BusReservation. Utilizza questi esempi per assicurarti che il markup sia strutturato correttamente.
Conferma di prenotazione di base
Incorpora il seguente markup nell'email quando invii una conferma di prenotazione.
L'app Google mostrerà i dettagli della prenotazione il giorno del viaggio e avviserà l'utente dell'ora di partenza per arrivare alla fermata dell'autobus in tempo (tenendo conto della modalità di trasporto, del traffico e così via). Se fornisci un URL di check-in come nell'esempio riportato di seguito, l'app Google lo mostrerà all'utente 24 ore prima del viaggio.
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>
Microdati
<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>
Carta d'imbarco e biglietto
Oltre a una conferma della prenotazione, potresti attivare una carta di imbarco con conferma in un'email separata.
Le schede di conferma non solo possono aiutare l'utente ad arrivare in tempo alla fermata dell'autobus, ma anche a mostrare il biglietto durante il viaggio. Per questo, è necessario includere alcuni campi aggiuntivi nel markup. Se sono necessari campi aggiuntivi per l'imbarco dei passeggeri, includili nel campo additionalTicketText.
Per i biglietti senza posti assegnati, questi campi sono : 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>
Microdati
<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>
Per i biglietti con posti assegnati, questi campi sono : 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>
Microdati
<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>
Esempio con tutti i campi supportati
Per riferimento, ecco un esempio con tutti i campi supportati compilati:
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>
Microdati
<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>
Verifica il codice di markup
Puoi convalidare il markup utilizzando lo Strumento di test del markup delle email. Incolla il codice di markup e fai clic sul pulsante Convalida per analizzare i contenuti e ricevere un report sugli eventuali errori presenti.
Specifica
Controlla i dettagli dell'email per verificare se una di queste proprietà si applica alla tua prenotazione dell'autobus. Se contrassegni queste proprietà aggiuntive, consenti a Google di mostrare all'utente una descrizione molto più ricca della prenotazione dell'autobus.
| Proprietà | Tipo | Descrizione |
|---|---|---|
| reservationNumber | Testo | (obbligatorio) Il numero o l'ID della prenotazione. |
| url | URL | Pagina web in cui è possibile visualizzare la prenotazione. |
| underName | Person o Organization | (obbligatorio) Il passeggero. |
| underName.name | Testo | (obbligatorio) Nome della persona. |
| underName.email | Testo | Indirizzo email. |
| programMembership | ProgramMembership | Qualsiasi iscrizione a un programma frequent flyer, fedeltà hotel e così via applicata alla prenotazione. |
| programMembership.memberNumber | Testo | L'identificatore dell'abbonamento. |
| programMembership.program | Testo | Il nome del programma. |
| bookingAgent | Organization o Person | Agente prenotazioni o agenzia. Accetta anche una stringa (ad es. ""). |
| bookingAgent.name | Testo | Nome dell'agente/servizio. |
| bookingAgent.url | URL | Sito web dell'agente/servizio. |
| bookingTime | DateTime | Data in cui è stata effettuata la prenotazione. |
| modifiedTime | DateTime | (consigliato per le schede di conferma/risposte della Ricerca) Ora dell'ultima modifica della prenotazione. |
| confirmReservationUrl | URL | Pagina web in cui è possibile confermare la prenotazione. |
| cancelReservationUrl | URL | Pagina web in cui è possibile annullare la prenotazione. |
| modifyReservationUrl | URL | (consigliato per le schede di conferma/risposte della ricerca) Pagina web in cui è possibile modificare la prenotazione. |
| checkinUrl | URL | Pagina web in cui il passeggero può eseguire il check-in. |
| reservationStatus | ReservationStatus | (obbligatorio) Stato attuale della prenotazione. |
| reservationFor | BusTrip | (obbligatorio) Informazioni sul viaggio in autobus. |
| reservationFor.name | Testo | Nome del BusTrip. |
| reservationFor.busNumber | Testo | ad es. 101. |
| reservationFor.busName | Testo | ad es. Bolt Express. |
| reservationFor.busCompany | Organizzazione | (obbligatorio) ad es. Bolt NYC. Accetta anche una stringa (ad es. "Bolt NYC"). |
| reservationFor.busCompany.name | Testo | (obbligatorio) Nome dell'organizzazione. |
| reservationFor.departureBusStop | BusStop o BusStation | (obbligatorio) Il luogo di partenza dell'autobus. |
| reservationFor.departureBusStop.name | Testo | (obbligatorio) Nome della fermata dell'autobus. |
| reservationFor.departureBusStop.address | PostalAddress | Indirizzo della fermata / stazione dell'autobus di partenza. |
| reservationFor.departureBusStop.address.streetAddress | Testo | (consigliato per le schede di conferma/risposte della ricerca) Indirizzo della fermata / stazione di partenza dell'autobus. |
| reservationFor.departureBusStop.address.addressLocality | Testo | (consigliato per le schede di conferma/risposte della ricerca) Località (ad es. città) della fermata / stazione dell'autobus di partenza. |
| reservationFor.departureBusStop.address.addressRegion | Testo | (consigliato per le schede di conferma/risposte della ricerca) Regione (ad es. stato) della fermata / stazione dell'autobus di partenza. |
| reservationFor.departureBusStop.address.postalCode | Testo | (consigliato per le schede di conferma/risposte della Ricerca) Codice postale della fermata / stazione dell'autobus di partenza. |
| reservationFor.departureBusStop.address.addressCountry | Testo o Paese | (consigliato per le schede di conferma/risposte della Ricerca) Fermata / stazione dell'autobus del paese di partenza. |
| reservationFor.departureBusStop.directions | Testo | Indicazioni stradali per la fermata dell'autobus. |
| reservationFor.departureTime | DateTime | (obbligatorio) Orario di partenza dell'autobus. |
| reservationFor.arrivalBusStop | BusStop o BusStation | (obbligatorio) Dove arriva l'autobus. |
| reservationFor.arrivalBusStop.name | Testo | (obbligatorio) Nome della fermata dell'autobus. |
| reservationFor.arrivalBusStop.address | PostalAddress | Indirizzo della fermata / stazione dell'autobus di arrivo. |
| reservationFor.arrivalBusStop.address.streetAddress | Testo | (consigliato per le schede di conferma/risposte della ricerca) Indirizzo della fermata / stazione dell'autobus di arrivo. |
| reservationFor.arrivalBusStop.address.addressLocality | Testo | (consigliato per le schede di conferma/risposte della ricerca) Località (ad es. città) della fermata / stazione dell'autobus di arrivo. |
| reservationFor.arrivalBusStop.address.addressRegion | Testo | (consigliato per le schede di conferma/risposte della Ricerca) Regione (ad es. stato) della fermata / stazione dell'autobus di arrivo. |
| reservationFor.arrivalBusStop.address.postalCode | Testo | (consigliato per le schede di conferma/risposte della Ricerca) Codice postale della fermata / stazione dell'autobus di arrivo. |
| reservationFor.arrivalBusStop.address.addressCountry | Testo o Paese | (consigliato per le schede di conferma/risposte della ricerca) Fermata / stazione dell'autobus del paese di arrivo. |
| reservationFor.arrivalBusStop.directions | Testo | Indicazioni stradali per la fermata dell'autobus. |
| reservationFor.arrivalTime | DateTime | (obbligatorio) Ora di arrivo dell'autobus. |
| reservedTicket | Biglietto | Informazioni sui biglietti. |
| reservedTicket.ticketNumber | Testo | Il numero o l'ID del ticket. |
| reservedTicket.downloadUrl | URL | . |
| reservedTicket.printUrl | URL | . |
| reservedTicket.ticketToken | Testo o URL | Se l'immagine del codice a barre è ospitata sul tuo sito, il valore del campo è l'URL dell'immagine o un URI di codice a barre o QR, ad esempio "barcode128:AB34" (codici a barre ISO-15417), "qrCode:AB34" (codici QR), "aztecCode:AB34" (codici Aztec), "barcodeEAN:1234" (codici EAN) e "barcodeUPCA:1234" (codici UPCA). |
| reservedTicket.additionalTicketText | Testo | Testo esplicativo aggiuntivo sul ticket. |
| reservedTicket.price | Testo | Il prezzo totale del biglietto. |
| reservedTicket.priceCurrency | Testo | La valuta (in formato ISO 4217 da 3 lettere) del prezzo del biglietto. |
| reservedTicket.underName | Person o Organization | La persona o l'organizzazione a cui è destinato il biglietto. |
| reservedTicket.underName.name | Testo | Nome della persona. |
| reservedTicket.ticketedSeat | Posto | La posizione del posto riservato (ad es. 27B). . |
| reservedTicket.ticketedSeat.seatingType | Testo | Il tipo/la classe del posto. |
| reservedTicket.ticketedSeat.seatNumber | Testo | La posizione del posto prenotato. |
| reservedTicket.ticketedSeat.seatRow | Testo | La posizione della fila del posto riservato. |