Carrosséis de dados estruturados (Beta)

O Google usa dados estruturados para entender o conteúdo da página e exibir as informações de uma forma mais útil nos resultados da pesquisa, o que é chamado de pesquisa aprimorada. Este guia se concentra em uma nova pesquisa aprimorada de carrossel que está em versão Beta, uma pesquisa aprimorada semelhante a uma lista que as pessoas podem rolar horizontalmente para ver mais entidades de um determinado site (também conhecido como carrossel de host). Cada bloco no carrossel pode ter informações do seu site sobre preço, classificação e imagens das entidades na página.

Para se qualificar para essa pesquisa aprimorada Beta, adicione dados estruturados ItemList em combinação com pelo menos um dos seguintes itens de dados estruturados compatíveis:

Veja como os eles podem aparecer na Pesquisa Google quando você combina a marcação ItemList e um tipo de conteúdo compatível:

Nova pesquisa aprimorada de carrossel

Disponibilidade do recurso

Esse recurso está na versão Beta, então você pode notar mudanças nos requisitos ou nas diretrizes enquanto o desenvolvemos. Caso sua empresa esteja sediada no EEE ou atenda usuários nesse espaço e você queira saber mais e demonstrar interesse nessas novas experiências, comece preenchendo o formulário aplicável (para consultas de voos, use o formulário de interesse para consultas de voos).

No momento, esse recurso está disponível apenas nos países do Espaço Econômico Europeu (EEE), em computadores e dispositivos móveis. Ele está disponível para consultas de viagens, locais e compras. Para consultas de compras, ele está sendo testado primeiro na Alemanha, França, República Tcheca e Reino Unido.

Adicionar dados estruturados

Os dados estruturados são um formato padronizado para fornecer informações sobre uma página e classificar o conteúdo dela. Caso você não saiba muito sobre o assunto, descubra como os dados estruturados funcionam.

Esta é uma visão geral de como adicionar dados estruturados ao seu site.

  1. Escolha uma única página de resumo que contenha algumas informações sobre cada entidade da lista. Por exemplo, uma página de categoria que lista os "Principais hotéis em Paris", com links para páginas de detalhes específicas no seu site com mais informações sobre cada hotel. É possível misturar e combinar diferentes tipos de entidades (por exemplo, hotéis, restaurantes), se necessário para seu caso. Por exemplo, se você tiver um artigo "Coisas legais para fazer na Suíça" que lista eventos e empresas locais.
  2. Adicione as propriedades necessárias a essa página de resumo. Não é preciso adicionar marcação às páginas de detalhes para se qualificar para esse recurso Beta. Com base no formato que você está usando, saiba onde inserir dados estruturados na página.
  3. Adicione as propriedades obrigatórias e recomendadas para o tipo de conteúdo específico relacionado ao carrossel:

    Dependendo do seu caso, você pode escolher o melhor tipo a ser usado. Por exemplo, se você tiver uma lista de hotéis e propriedades de aluguéis por temporada na sua página, use os tipos Hotel e VacationRental. Embora seja ideal usar o tipo mais próximo do seu casp, você pode optar por um tipo mais genérico (por exemplo, LocalBusiness).

  4. Siga as diretrizes.
  5. Valide o código usando o teste de pesquisa aprimorada.
  6. Implante algumas páginas que incluam os dados estruturados e use a Ferramenta de inspeção de URL para testar como o Google vê a página. Confirme se a página está acessível ao Google e se não está bloqueada por um arquivo robots.txt, pela tag noindex ou por requisitos de login. Se estiver tudo certo, peça ao Google para rastrear novamente seus URLs.
  7. Para manter o Google informado sobre alterações futuras, recomendamos que você envie um sitemap. É possível automatizar isso com a API Search Console Sitemap.

Diretrizes

Para que sua página se qualifique para a pesquisa aprimorada de carrossel (Beta), siga os Fundamentos da Pesquisa e as diretrizes gerais de dados estruturados. Além disso, as seguintes diretrizes se aplicam à pesquisa aprimorada de carrossel (Beta):

  • O uso de tipos genéricos é permitido. No entanto, para usar as propriedades recomendadas, é necessário utilizar os respectivos tipos. Por exemplo, para usar amenityFeature, utilize o tipo LodgingBusiness.
  • O uso de campos adicionais ou extras é permitido, mas pode não aparecer na pesquisa aprimorada.
  • Seu site precisa ter uma página de resumo e várias páginas de detalhes. No momento, esse recurso não foi projetado para oferecer suporte a outros cenários, como uma página completa em que os "detalhes" são pontos de fixação na mesma página.
  • A marcação precisa estar em uma página de resumo ou de categoria, que é uma página semelhante a uma lista e contém informações sobre pelo menos três entidades e, em seguida, direciona a outras páginas no seu site para mais informações sobre essas entidades. Embora não seja necessário adicionar a marcação às páginas de detalhes, você precisa incluir os URLs delas na marcação da sua página de resumo.

Exemplos

Veja a seguir uma estrutura de alto nível do carrossel. A ordem especificada na marcação é a ordem que será usada para ordenar os blocos na pesquisa aprimorada de carrossel.


  <html>
    <head>
      <title>Top 5 Restaurants in Italy</title>
      <script type="application/ld+json">
        {
        "@context": "https://schema.org",
        "@type": "ItemList",
          "itemListElement": [
            {
              "@type": "ListItem",
                "position": 1,
                "item": {
                  "@type": "Restaurant",
                  "name": "Trattoria Luigi",
                  "image": [
                    "https://example.com/photos/1x1/photo.jpg",
                    "https://example.com/photos/4x3/photo.jpg",
                    "https://example.com/photos/16x9/photo.jpg"
                  ],
                  "priceRange": "$$$",
                  "servesCuisine": "Italian",
                  "aggregateRating": {
                    "@type": "AggregateRating",
                    "ratingValue": 4.5,
                    "reviewCount": 250
                  },
                "url": "https://www.example.com/trattoria-luigi"
              }
            },
            {
              "@type": "ListItem",
                "position": 2,
                "item": {
                  "@type": "Restaurant",
                  "name": "La Pergola",
                  "image": [
                    "https://example.com/photos/1x1/photo.jpg",
                    "https://example.com/photos/4x3/photo.jpg",
                    "https://example.com/photos/16x9/photo.jpg"
                  ],
                  "priceRange": "$$$",
                  "servesCuisine": "Italian",
                  "aggregateRating": {
                    "@type": "AggregateRating",
                    "ratingValue": 4.9,
                    "reviewCount": 1150
                  },
                "url": "https://www.example.com/la-pergola"
              }
            },
            {
              "@type": "ListItem",
              "position": 3,
              "item": {
                "@type": "Restaurant",
                "name": "Pasta e Basta",
                "image": [
                  "https://example.com/photos/1x1/photo.jpg",
                  "https://example.com/photos/4x3/photo.jpg",
                  "https://example.com/photos/16x9/photo.jpg"
                ],
                "priceRange": "$$$",
                "servesCuisine": "Italian",
                "aggregateRating": {
                  "@type": "AggregateRating",
                  "ratingValue": 4.2,
                  "reviewCount": 690
                },
              "url": "https://www.example.com/pasta-e-basta"
              }
            }
          ]
        }
      </script>
    </head>
    <body>
    </body>
  </html>
  

Definições de tipos de dados estruturados

É necessário incluir as propriedades obrigatórias para que seu conteúdo seja qualificado para exibição na pesquisa aprimorada. Você também pode incluir as propriedades recomendadas para adicionar mais informações sobre o conteúdo, o que pode proporcionar uma melhor experiência do usuário.

ItemList

ItemList é o item de contêiner que tem todos os elementos da lista. Todos os URLs dos elementos da lista precisam apontar para páginas diferentes no mesmo domínio.

A definição completa de ItemList está disponível em schema.org/ItemList (em inglês).

Propriedades obrigatórias
itemListElement

ListItem

É uma lista de itens. Para especificar uma lista, defina uma ItemList que contenha pelo menos três elementos itemListElement.item.

itemListElement.item

Subtipo de LocalBusiness, Product ou Event

Um item individual em uma lista. Preencha esse objeto com:

Exemplo: para um hotel, forneça as propriedades priceRange e amenityFeature.

itemListElement.position

Integer

É a posição do item no carrossel. Trata-se de um número baseado em 1.

Propriedades comuns de itens da lista (LocalBusiness, Product, ou Event)

Todos os tipos de itens do carrossel têm as seguintes propriedades em comum.

Propriedades obrigatórias
image

Repetição de URL ou ImageObject

Uma ou mais imagens da entidade ou do item (por exemplo, uma imagem do hotel). Não inclua logotipos nessa propriedade de imagem.

Outras diretrizes para imagens:

  • Cada página precisa conter pelo menos uma imagem, tendo marcação ou não. O Google escolherá a melhor imagem para exibir nos resultados da Pesquisa com base na proporção e na resolução.
  • Os URLs das imagens precisam ser rastreáveis e indexáveis. Para verificar se o Google consegue acessar os URLs, use a Ferramenta de inspeção de URL.
  • As imagens precisam representar o conteúdo marcado.
  • O formato do arquivo precisa ser compatível com o Imagens do Google.
  • Para conseguir os melhores resultados, recomendamos fornecer várias imagens de alta resolução, com no mínimo 50 mil pixels ao multiplicar a largura e a altura, nas seguintes proporções: 16 x 9, 4 x 3 e 1 x 1.

Exemplo:

"image": [
  "https://example.com/photos/1x1/photo.jpg",
  "https://example.com/photos/4x3/photo.jpg",
  "https://example.com/photos/16x9/photo.jpg"
]
name

Text

É o nome da string da entidade ou do item. Por exemplo, o nome de um hotel ou um anúncio de aluguel por temporada. O item.name é exibido como o título de um item individual no carrossel. A formatação HTML é ignorada.

url

URL

O URL canônico da página de detalhes do item. Por exemplo, a página independente de uma única listagem de hotel ou aluguel por temporada que foi referenciada na página de resumo. Todos os URLs da lista precisam ser exclusivos, mas têm que estar no mesmo domínio (o mesmo domínio ou sub/superdomínio da página de resumo).

Propriedades recomendadas
aggregateRating.bestRating

Number

É o maior valor permitido no sistema de notas (por exemplo, 5 / 10). Se bestRating for omitido, 5 será usado.

aggregateRating.ratingCount

Number

É o número total de notas dadas ao item no seu site.

aggregateRating.ratingValue

Number ou Text

É uma classificação numérica da qualidade do item, que pode ser um número inteiro, uma fração ou porcentagem (por exemplo, 4, 60% ou 6 / 10). O Google entende a escala das frações e porcentagens, já que a escala está implícita na própria fração ou na porcentagem. A escala padrão para números é de 5 pontos, em que 1 é o valor mais baixo e 5 é o mais alto. Se outra escala for aplicada, use bestRating e worstRating.

Para números decimais, use um ponto em vez de uma vírgula para especificar o valor (por exemplo, 4.4 em vez de 4,4). Em microdados e RDFa, você pode usar atributos content para substituir o conteúdo visível. Dessa forma, você pode mostrar ao usuário qualquer convenção de estilo desejada e atender ao requisito de ponto dos dados estruturados. Exemplo:

<span itemprop="ratingValue" content="4.4">4,4</span> stars

Outras definições de propriedades específicas dos tipos

LocalBusiness (e subtipos)

Além das propriedades ListItem, o Google é compatível com as seguintes propriedades LocalBusiness (incluindo os subtipos) para a pesquisa aprimorada de carrossel. Aninhe essas propriedades em itemListElement.item.

Propriedades recomendadas
amenityFeature

LocationFeatureSpecification

Somente para LodgingBusiness: um recurso de comodidade (por exemplo, uma característica ou serviço) da acomodação.

"amenityFeature": {
  "@type": "LocationFeatureSpecification",
  "name" : "beachAccess",
  "value": true
}
priceRange

Text

A faixa de preço relativa de uma empresa, normalmente especificada por um número padronizado de cifrões. Forneça a faixa de preço em um dos seguintes formatos:

  • Nível de preço:por exemplo, "$", "$$", "$$$"
  • Intervalo: por exemplo, "$-$$".

Este campo precisa ter menos de 12 caracteres. Se ele ultrapassar esse limite, o Google não mostrará uma faixa de preço para a empresa.

servesCuisine

Text

Somente para restaurantes: o tipo de culinária que o restaurante serve.

Product

Além das propriedades ListItem, o Google é compatível com as seguintes propriedades Product para pesquisas aprimoradas de carrossel. Aninhe essas propriedades em itemListElement.item.

Propriedades recomendadas
offers

Offer ou AggregateOffer

É uma Offer ou AggregateOffer aninhada para vender o produto. Inclua as propriedades recomendadas para Offer ou AggregateOffer, o que for aplicável ao seu conteúdo.

Se você estiver usando Offer, incluindo as seguintes propriedades:

  • offers.price
  • offers.priceCurrency

Se você estiver usando AggregateOffer, incluindo as seguintes propriedades:

  • offers.highPrice
  • offers.lowPrice
  • offers.priceCurrency
offers.highPrice

Number

É o preço mais alto de todas as ofertas disponíveis. Se você especificar um único preço com price, não será necessário incluir as propriedades highPrice e lowPrice.

offers.lowPrice

Number

É o preço mais baixo de todas as ofertas disponíveis. Se você especificar um único preço com price, não será necessário incluir as propriedades highPrice e lowPrice.

offers.price

Number

O preço da oferta de um produto ou de um componente de preço quando associado a PriceSpecification e os subtipos dele. Se você estiver especificando uma faixa de preço com lowPrice e highPrice, não inclua a propriedade price.

offers.priceCurrency

Text

É a moeda usada para descrever o preço do produto, no formato ISO 4217 de três letras. Se uma moeda não for fornecida, o Google usará USD por padrão.

Event

Além das propriedades ListItem, o Google é compatível com as seguintes propriedades Event para pesquisas aprimoradas de carrossel. Aninhe essas propriedades em itemListElement.item.

Propriedades recomendadas
offers

Offer ou AggregateOffer

É uma Offer ou AggregateOffer aninhada para vender o produto. Inclua as propriedades recomendadas para Offer ou AggregateOffer, o que for aplicável ao seu conteúdo.

Se você estiver usando Offer, incluindo as seguintes propriedades:

  • offers.price
  • offers.priceCurrency

Se você estiver usando AggregateOffer, incluindo as seguintes propriedades:

  • offers.highPrice
  • offers.lowPrice
  • offers.priceCurrency
offers.highPrice

Number

É o preço mais alto de todas as ofertas disponíveis. Se você especificar um único preço com price, não será necessário incluir as propriedades highPrice e lowPrice.

offers.lowPrice

Number

É o preço mais baixo de todas as ofertas disponíveis. Se você especificar um único preço com price, não será necessário incluir as propriedades highPrice e lowPrice.

offers.price

Number

O preço dos seus ingressos, incluindo taxas de serviço e outras cobranças. Não se esqueça de atualizar o valor conforme os preços mudarem ou os ingressos se esgotarem. Se você estiver especificando uma faixa de preço com lowPrice e highPrice, não inclua a propriedade price.

Se o evento estiver disponível sem pagamentos, taxas ou cobranças, defina price como 0.

"offers": {
  "@type": "Offer",
  "price": 0
}
offers.priceCurrency

Text

É a moeda usada para descrever o preço do evento, no formato ISO 4217 de três letras. Se uma moeda não for fornecida, o Google usará USD por padrão.

Exemplos de situações comuns

Exemplo de Restaurant

Veja o exemplo de um carrossel de restaurante em JSON-LD.


<html>
    <head>
      <title>Top 5 Restaurants in Paris</title>
      <script type="application/ld+json">
        {
          "@context": "https://schema.org",
          "@type": "ItemList",
          "itemListElement": [
            {
              "@type": "ListItem",
              "position": 1,
              "item": {
                "@type": "Restaurant",
                "name": "Trattoria Luigi",
                "image": [
                  "https://example.com/photos/1x1/photo.jpg",
                  "https://example.com/photos/4x3/photo.jpg",
                  "https://example.com/photos/16x9/photo.jpg"
                ],
                "priceRange": "$$$",
                "servesCuisine": "Italian",
                "aggregateRating": {
                  "@type": "AggregateRating",
                  "ratingValue": 4.5,
                  "reviewCount": 250
                },
                "url": "https://www.example.com/restaurant-location-1"
              }
            },
            {
              "@type": "ListItem",
              "position": 2,
              "item": {
                "@type": "Restaurant",
                "name": "La Pergola",
                "image": [
                  "https://example.com/photos/1x1/photo.jpg",
                  "https://example.com/photos/4x3/photo.jpg",
                  "https://example.com/photos/16x9/photo.jpg"
                ],
                "priceRange": "$$$",
                "servesCuisine": "Italian",
                "aggregateRating": {
                  "@type": "AggregateRating",
                  "ratingValue": 4.9,
                  "reviewCount": 1150
                },
                "url": "https://www.example.com/restaurant-location-2"
              }
            },
            {
              "@type": "ListItem",
              "position": 3,
              "item": {
                "@type": "Restaurant",
                "name": "Pasta e Basta",
                "image": [
                  "https://example.com/photos/1x1/photo.jpg",
                  "https://example.com/photos/4x3/photo.jpg",
                  "https://example.com/photos/16x9/photo.jpg"
                ],
                "priceRange": "$$$",
                "servesCuisine": "Italian",
                "aggregateRating": {
                  "@type": "AggregateRating",
                  "ratingValue": 4.2,
                  "reviewCount": 690
                },
                "url": "https://www.example.com/restaurant-location-3"
              }
            }
          ]
        }
      </script>
    </head>
    <body>
    </body>
  </html>

Exemplo de hospedagem (Hotels e VacationRental)

Veja um exemplo de carrossel de hospedagem em JSON-LD.


<html>
    <head>
      <title>Top 5 Hotels in Paris</title>
      <script type="application/ld+json">
        {
        "@context": "https://schema.org",
        "@type": "ItemList",
            "itemListElement": [
              {
                "@type": "ListItem",
                "position": 1,
                "item": {
                  "@type": "Hotel",
                  "name": "Four Seasons Hotel George V, Paris",
                  "image": [
                    "https://example.com/photos/1x1/photo.jpg",
                    "https://example.com/photos/4x3/photo.jpg",
                    "https://example.com/photos/16x9/photo.jpg"
                  ],
                  "priceRange": "$$$$",
                  "amenityFeature": {
                      "@type": "LocationFeatureSpecification",
                      "name" : "internetType",
                      "value": "Free"
                  },
                  "aggregateRating": {
                    "@type": "AggregateRating",
                    "ratingValue": 4.9,
                    "reviewCount": 50
                  },
                  "url": "https://www.example.com/four-seasons"
                }
              },
              {
                "@type": "ListItem",
                "position": 2,
                "item": {
                  "@type": "VacationRental",
                  "name": "Downtown Condo",
                  "image": [
                    "https://example.com/photos/1x1/photo.jpg",
                    "https://example.com/photos/4x3/photo.jpg",
                    "https://example.com/photos/16x9/photo.jpg"
                  ],
                  "priceRange": "$$",
                  "amenityFeature": {
                    "@type": "LocationFeatureSpecification",
                    "name" : "instantBookable",
                    "value": true
                  },
                  "aggregateRating": {
                    "@type": "AggregateRating",
                    "ratingValue": 4.7,
                    "reviewCount": 827
                  },
                  "url": "https://www.example.com/downtown-condo"
                }
              },
              {
                "@type": "ListItem",
                "position": 3,
                "item": {
                  "@type": "Hotel",
                  "name": "Ritz Paris",
                  "image": [
                    "https://example.com/photos/1x1/photo.jpg",
                    "https://example.com/photos/4x3/photo.jpg",
                    "https://example.com/photos/16x9/photo.jpg"
                  ],
                  "priceRange": "$$$$",
                  "amenityFeature": {
                    "@type": "LocationFeatureSpecification",
                    "name" : "freeBreakfast",
                    "value": true
                },
                "aggregateRating": {
                  "@type": "AggregateRating",
                  "ratingValue": 4.9,
                  "reviewCount": 1290
                },
                "url": "https://www.example.com/ritz-paris"
              }
            }
          ]
        }
      </script>
    </head>
    <body>
    </body>
  </html>

Exemplo de Coisas legais para fazer

Confira um exemplo de carrossel de coisas legais para fazer em JSON-LD.


<html>
    <head>
      <title>Top 5 Things To Do in Paris</title>
      <script type="application/ld+json">
        {
          "@context": "https://schema.org",
          "@type": "ItemList",
          "itemListElement": [
            {
              "@type": "ListItem",
              "position": 1,
              "item": {
                "@type": "Event",
                "name": "Paris Seine River Dinner Cruise",
                "image": [
                  "https://example.com/photos/1x1/photo.jpg",
                  "https://example.com/photos/4x3/photo.jpg",
                  "https://example.com/photos/16x9/photo.jpg"
                ],
                "offers": {
                  "@type": "Offer",
                  "price": 45.00,
                  "priceCurrency": "EUR"
                },
                "aggregateRating": {
                  "@type": "AggregateRating",
                  "ratingValue": 4.2,
                  "reviewCount": 690
                },
                "url": "https://www.example.com/event-location1"
              }
            },
            {
              "@type": "ListItem",
              "position": 2,
              "item": {
                "@type": "LocalBusiness",
                "name": "Notre-Dame Cathedral",
                "image": [
                  "https://example.com/photos/1x1/photo.jpg",
                  "https://example.com/photos/4x3/photo.jpg",
                  "https://example.com/photos/16x9/photo.jpg"
                ],
                "priceRange": "$",
                "aggregateRating": {
                  "@type": "AggregateRating",
                  "ratingValue": 4.8,
                  "reviewCount": 4220
                },
                "url": "https://www.example.com/localbusiness-location"
              }
            },
            {
              "@type": "ListItem",
              "position": 3,
              "item": {
                "@type": "Event",
                "name": "Eiffel Tower With Host Summit Tour",
                "image": [
                  "https://example.com/photos/1x1/photo.jpg",
                  "https://example.com/photos/4x3/photo.jpg",
                  "https://example.com/photos/16x9/photo.jpg"
                ],
                "offers": {
                  "@type": "Offer",
                  "price": 59.00,
                  "priceCurrency": "EUR"
                },
                "aggregateRating": {
                  "@type": "AggregateRating",
                  "ratingValue": 4.9,
                  "reviewCount": 652
                },
                "url": "https://www.example.com/event-location2"
              }
            }
          ]
        }
      </script>
    </head>
    <body>
    </body>
  </html>
  

Exemplo de Product

Confira o exemplo de um carrossel de produtos em JSON-LD.


<html>
    <head>
      <title>Top coats of the season</title>
      <script type="application/ld+json">
        {
          "@context": "https://schema.org",
          "@type": "ItemList",
          "itemListElement": [
            {
              "@type": "ListItem",
              "position": 1,
              "item": {
                "@type": "Product",
                "name": "Puffy Coat Series by Goat Coat",
                "image": [
                  "https://example.com/photos/1x1/photo.jpg",
                  "https://example.com/photos/4x3/photo.jpg",
                  "https://example.com/photos/16x9/photo.jpg"
                ],
                "offers": {
                  "@type": "AggregateOffer",
                  "lowPrice": 45.00,
                  "highPrice": 60.00,
                  "priceCurrency": "EUR"
                },
                "aggregateRating": {
                  "@type": "AggregateRating",
                  "ratingValue": 4.9,
                  "reviewCount": 50
                },
                "url": "https://www.example.com/puffy-coats"
              }
            },
            {
              "@type": "ListItem",
              "position": 2,
              "item": {
                "@type": "Product",
                "name": "Wool Coat Series by Best Coats Around",
                "image": [
                  "https://example.com/photos/1x1/photo.jpg",
                  "https://example.com/photos/4x3/photo.jpg",
                  "https://example.com/photos/16x9/photo.jpg"
                ],
                "offers": {
                  "@type": "AggregateOffer",
                  "lowPrice": 189.00,
                  "highPrice": 200.00,
                  "priceCurrency": "EUR"
                },
                "aggregateRating": {
                  "@type": "AggregateRating",
                  "ratingValue": 4.7,
                  "reviewCount": 827
                },
                "url": "https://www.example.com/wool-coats"
              }
            },
            {
              "@type": "ListItem",
              "position": 3,
              "item": {
                "@type": "Product",
                "name": "Antartic Coat by Cold Coats",
                "image": [
                  "https://example.com/photos/1x1/photo.jpg",
                  "https://example.com/photos/4x3/photo.jpg",
                  "https://example.com/photos/16x9/photo.jpg"
                ],
                "offers": {
                  "@type": "Offer",
                  "price": 45.00,
                  "priceCurrency": "EUR"
                },
                "aggregateRating": {
                  "@type": "AggregateRating",
                  "ratingValue": 4.9,
                  "reviewCount": 1290
                },
                "url": "https://www.example.com/antartic-coat"
              }
            }
          ]
        }
      </script>
    </head>
    <body>
    </body>
  </html>
  

Solução de problemas

Se você tiver problemas para implementar ou depurar dados estruturados, veja alguns recursos que podem ajudar.