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 invierà una notifica all'utente sull'orario di partenza per raggiungere la 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 di prenotazione, puoi attivare una carta d'imbarco nella scheda di conferma in un'email separata.
Le schede di conferma non solo possono aiutare l'utente a raggiungere la fermata dell'autobus in tempo, ma anche a mostrare il biglietto durante il viaggio. Per questo, è necessario includere alcuni campi aggiuntivi nel markup. Se sono necessari altri campi per l'imbarco dei passeggeri, includili nel campo additionalTicketText.
Per i biglietti senza posti riservati, 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 riservati, 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 per il markup delle email. Incolla il codice di markup e fai clic sul pulsante Convalida per scansionare i contenuti e ricevere un report sugli eventuali errori presenti.
Specifica
Esamina 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ù completa 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 oppure 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, a un programma fedeltà di un hotel e così via applicata alla prenotazione. |
| programMembership.memberNumber | Testo | L'identificatore dell'iscrizione. |
| programMembership.program | Testo | Il nome del programma. |
| bookingAgent | Organización o Persona | Agente o agenzia di prenotazioni. 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 di 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 di ricerca) Pagina web in cui è possibile modificare la prenotazione. |
| checkinUrl | URL | Pagina web in cui il passeggero può effettuare il check-in. |
| reservationStatus | ReservationStatus | (Obbligatorio) Stato attuale della prenotazione. |
| reservationFor | BusTrip | (Obbligatorio) Informazioni sul viaggio in autobus. |
| reservationFor.name | Testo | Nome del viaggio in autobus. |
| reservationFor.busNumber | Testo | Ad es. 101. |
| reservationFor.busName | Testo | Ad es. Bolt Express. |
| reservationFor.busCompany | Organization | (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 di ricerca) Indirizzo stradale della fermata / stazione dell'autobus di partenza. |
| reservationFor.departureBusStop.address.addressLocality | Testo | (Consigliato per le schede di conferma/risposte di ricerca) Località (ad es. città) della fermata / stazione dell'autobus di partenza. |
| reservationFor.departureBusStop.address.addressRegion | Testo | (Consigliato per le schede di conferma/risposte di ricerca) Regione (ad es. stato) della fermata / stazione dell'autobus di partenza. |
| reservationFor.departureBusStop.address.postalCode | Testo | (Consigliato per le schede di conferma/risposte di ricerca) Codice postale della fermata / stazione dell'autobus di partenza. |
| reservationFor.departureBusStop.address.addressCountry | Testo o Country | (Consigliato per le schede di conferma/risposte di ricerca) Paese della fermata / stazione dell'autobus di partenza. |
| reservationFor.departureBusStop.directions | Testo | Indicazioni per raggiungere la fermata dell'autobus. |
| reservationFor.departureTime | DateTime | (Obbligatorio) Orario di partenza dell'autobus. |
| reservationFor.arrivalBusStop | BusStop o BusStation | (Obbligatorio) Il luogo di arrivo dell'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 di ricerca) Indirizzo stradale della fermata / stazione dell'autobus di arrivo. |
| reservationFor.arrivalBusStop.address.addressLocality | Testo | (Consigliato per le schede di conferma/risposte di ricerca) Località (ad es. città) della fermata / stazione dell'autobus di arrivo. |
| reservationFor.arrivalBusStop.address.addressRegion | Testo | (Consigliato per le schede di conferma/risposte di ricerca) Regione (ad es. stato) della fermata / stazione dell'autobus di arrivo. |
| reservationFor.arrivalBusStop.address.postalCode | Testo | (Consigliato per le schede di conferma/risposte di ricerca) Codice postale della fermata / stazione dell'autobus di arrivo. |
| reservationFor.arrivalBusStop.address.addressCountry | Testo o Country | (Consigliato per le schede di conferma/risposte di ricerca) Paese della fermata / stazione dell'autobus di arrivo. |
| reservationFor.arrivalBusStop.directions | Testo | Indicazioni per raggiungere la fermata dell'autobus. |
| reservationFor.arrivalTime | DateTime | (Obbligatorio) Orario di arrivo dell'autobus. |
| reservedTicket | Ticket | Informazioni sul biglietto. |
| reservedTicket.ticketNumber | Testo | Il numero o l'ID del biglietto. |
| 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 del 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 biglietto. |
| reservedTicket.price | Testo | Prezzo totale del biglietto. |
| reservedTicket.priceCurrency | Testo | La valuta (in formato ISO 4217 da 3 lettere) del prezzo del biglietto. |
| reservedTicket.underName | Person oppure 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 riservato. |
| reservedTicket.ticketedSeat.seatRow | Testo | La posizione della fila del posto riservato. |