Casos de uso
Os casos de uso a seguir mostram exemplos comuns de como o esquema BusReservation é usado. Use esses exemplos para garantir que sua marcação esteja estruturada corretamente.
Confirmação de reserva básica
Incorpore a marcação a seguir em seu e-mail ao enviar uma confirmação de reserva.
O Google app vai mostrar os detalhes da reserva no dia da viagem e notificar o usuário sobre a hora de sair para chegar ao ponto de ônibus a tempo, considerando o meio de transporte, o trânsito etc. Se você fornecer um URL de check-in como no exemplo abaixo, o Google app o exibirá para o usuário 24 horas antes da viagem.
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>
Microdados
<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>
Cartão de embarque e ingresso
Além de uma confirmação de reserva, você pode acionar um cartão de embarque com um cartão de confirmação em um e-mail separado.
Os cartões de confirmação não só ajudam a chegar ao ponto de ônibus a tempo e também mostram a passagem para o usuário durante a viagem. Para isso, é preciso incluir alguns campos adicionais na marcação. Inclua outros campos necessários para embarcar no campo additionalTicketText.
Estes são os campos de ingressos sem assentos reservados :  numSeats, ticketNumber e 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>
Microdados
<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>
Para ingressos com assentos reservados, estes campos são :  seatNumber, seatingType, ticketNumber e 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>
Microdados
<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>
Exemplo com todos os campos compatíveis
Como referência, veja um exemplo com todos os campos aceitos preenchidos:
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>
Microdados
<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>
Testar sua marcação
É possível validar sua marcação usando a Ferramenta para testar a marcação em e-mails. Cole seu código de marcação e clique no botão Validar para digitalizar o conteúdo e receber um relatório sobre os erros presentes.
Especificação
Revise os detalhes do seu e-mail para ver se alguma dessas propriedades é aplicável à sua reserva de ônibus. Ao marcar essas propriedades adicionais, você permite que o Google mostre ao usuário uma descrição muito mais detalhada da reserva de ônibus.
| Propriedade | Tipo | Descrição | 
|---|---|---|
| reservationNumber | Texto | (obrigatório) O número ou ID da reserva. | 
| url | URL | Página da Web em que as reservas podem ser visualizadas. | 
| underName | Pessoa ou organização | (obrigatório) O passageiro. | 
| underName.name | Texto | (obrigatório) Nome da pessoa. | 
| underName.email | Texto | Endereço de e-mail. | 
| programMembership | ProgramMembership | Qualquer associação em um programa de milhagem, programa de fidelidade de hotel etc. que esteja sendo aplicada à reserva. | 
| programMembership.memberNumber | Texto | O identificador da assinatura. | 
| programMembership.program | Texto | É o nome do programa. | 
| bookingAgent | Organização ou Pessoa | Agente ou agência de reservas. Também aceita uma string (por exemplo, ""). | 
| bookingAgent.name | Texto | Nome do agente/serviço. | 
| bookingAgent.url | URL | Site do agente/serviço. | 
| bookingTime | DateTime | Data em que a reserva foi feita. | 
| modifiedTime | DateTime | (recomendado para cartões de confirmação/respostas da pesquisa) Hora em que a reserva foi modificada pela última vez. | 
| confirmReservationUrl | URL | Página da Web em que é possível confirmar a reserva. | 
| cancelReservationUrl | URL | Página da Web em que é possível cancelar a reserva. | 
| modifyReservationUrl | URL | (recomendado para cartões de confirmação/respostas da pesquisa) Página da Web em que a reserva pode ser modificada. | 
| checkinUrl | URL | Página da Web em que o passageiro pode fazer check-in. | 
| reservationStatus | ReservationStatus | (obrigatório) Status atual da reserva. | 
| reservationFor | BusTrip | (obrigatório) Informações sobre a viagem de ônibus. | 
| reservationFor.name | Texto | Nome do BusTrip. | 
| reservationFor.busNumber | Texto | Por exemplo: 101. | 
| reservationFor.busName | Texto | Por exemplo: Bolt Express. | 
| reservationFor.busCompany | Organização | (obrigatório), por exemplo, Parafuso Nova York. Também aceita uma string (por exemplo, "Parafuso Nova York"). | 
| reservationFor.busCompany.name | Texto | (obrigatório) Nome da organização. | 
| reservationFor.departureBusStop | BusStop ou BusStation | (obrigatório) De onde parte o ônibus. | 
| reservationFor.departureBusStop.name | Texto | (obrigatório) Nome do BusStop. | 
| reservationFor.departureBusStop.address | PostalAddress | Endereço do ponto de ônibus / estação de partida. | 
| reservationFor.departureBusStop.address.streetAddress | Texto | (recomendado para cartões de confirmação/respostas da pesquisa) Endereço da estação / ponto de ônibus de partida. | 
| reservationFor.departureBusStop.address.addressLocality | Texto | (recomendado para cartões de confirmação/respostas da pesquisa) Região administrativa (por exemplo, cidade) do ponto de ônibus / estação de partida. | 
| reservationFor.departureBusStop.address.addressRegion | Texto | (recomendado para cartões de confirmação/respostas da pesquisa) Região (por exemplo, estado) do ponto de ônibus / estação de partida. | 
| reservationFor.departureBusStop.address.postalCode | Texto | (recomendado para cartões de confirmação/respostas da pesquisa) CEP do ponto de ônibus / estação de partida. | 
| reservationFor.departureBusStop.address.addressCountry | Texto ou país | (recomendado para cartões de confirmação/respostas da pesquisa) País do ponto de ônibus / estação de partida. | 
| reservationFor.departureBusStop.directions | Texto | Rotas até o ponto de ônibus. | 
| reservationFor.departureTime | DateTime | (obrigatório) Horário de partida do ônibus. | 
| reservationFor.arrivalBusStop | BusStop ou BusStation | (obrigatório) O local de chegada do ônibus. | 
| reservationFor.arrivalBusStop.name | Texto | (obrigatório) Nome do BusStop. | 
| reservationFor.arrivalBusStop.address | PostalAddress | Endereço do ponto de ônibus / estação de chegada. | 
| reservationFor.arrivalBusStop.address.streetAddress | Texto | (recomendado para cartões de confirmação/respostas da pesquisa) Endereço da estação / ponto de ônibus de chegada. | 
| reservationFor.arrivalBusStop.address.addressLocality | Texto | (recomendado para cartões de confirmação/respostas da pesquisa) Região administrativa (por exemplo, cidade) do ponto de ônibus / estação de chegada. | 
| reservationFor.arrivalBusStop.address.addressRegion | Texto | (recomendado para cartões de confirmação/respostas da pesquisa) Região (por exemplo, estado) do ponto de ônibus / estação de chegada. | 
| reservationFor.arrivalBusStop.address.postalCode | Texto | (recomendado para cartões de confirmação/respostas da pesquisa) CEP do ponto de ônibus / estação de chegada. | 
| reservationFor.arrivalBusStop.address.addressCountry | Texto ou país | (recomendado para cartões de confirmação/respostas da pesquisa) País do ponto de ônibus / estação de chegada. | 
| reservationFor.arrivalBusStop.directions | Texto | Rotas até o ponto de ônibus. | 
| reservationFor.arrivalTime | DateTime | (obrigatório) Horário de chegada do ônibus. | 
| reservedTicket | "Ticket" (Tíquete) | Informações sobre passagens. | 
| reservedTicket.ticketNumber | Texto | O número ou ID do tíquete. | 
| reservedTicket.downloadUrl | URL | . | 
| reservedTicket.printUrl | URL | . | 
| reservedTicket.ticketToken | Texto ou URL | Se a imagem do código de barras estiver hospedada no seu site, o valor do campo será o URL da imagem, ou um URI de código de barras ou QR, como "barcode128:AB34" (códigos de barras ISO-15417), "qrCode:AB34" (QR codes), "aztecCode:AB34" (códigos Astec), "barcodeEAN:1234" (códigos EAN) e "barcodeUPCA:1234" (códigos UPCA). | 
| reservedTicket.additionalTicketText | Texto | Texto explicativo adicional sobre o ingresso. | 
| reservedTicket.price | Texto | Preço total do ingresso. | 
| reserveTicket.priceCurrency. | Texto | A moeda (no formato ISO 4217 de três letras) do preço do ingresso. | 
| reservedTicket.underName | Pessoa ou organização | A pessoa ou organização a que o tíquete se destina. | 
| reservedTicket.underName.name | Texto | Nome da pessoa. | 
| reservedTicket.ticketedSeat | Assento | O local do assento reservado (por exemplo, 27B). . | 
| reservedTicket.ticketedSeat.seatingType | Texto | O tipo/classe do assento. | 
| reservedTicket.ticketedSeat.seatNumber | Texto | O local do assento reservado. | 
| reservedTicket.ticketedSeat.seatRow | Texto | O local da fila do assento reservado. |