O que é o hasPart?

Detalhadamente o que é e como funciona a propriedade hasPart no contexto do Schema.org
Vamos explorar isso de forma clara e abrangente para que você entenda completamente seu propósito e uso.
O que é o Schema.org?
Antes de entrarmos no hasPart, é importante entender o contexto geral. O Schema.org é um vocabulário de marcação estruturada desenvolvido colaborativamente por grandes empresas de tecnologia, como Google, Microsoft, Yahoo e Yandex. Ele é usado para ajudar os mecanismos de busca a entenderem melhor o conteúdo de uma página da web, permitindo que eles apresentem resultados mais relevantes e enriquecidos (como snippets ricos, cards de conhecimento, etc.).
O que é o hasPart?
O hasPart é uma propriedade definida no Schema.org que faz parte da hierarquia de relacionamentos entre entidades. Ele é usado para indicar que uma entidade “contém” ou “inclui” outra entidade como parte de sua estrutura. Em outras palavras, ele estabelece uma relação de composição ou pertencimento entre dois objetos.
Definição formal:
Nome da propriedade: hasPart
Tipo esperado: CreativeWork ou qualquer subtipo de CreativeWork (como Book, Article, WebPage, etc.)
Descrição oficial: “Indica que uma entidade criativa contém ou inclui outra entidade criativa como parte de si mesma.”
Para que serve o hasPart?
A principal função do hasPart é descrever relações de composição hierárquica entre diferentes elementos de uma entidade maior. Por exemplo:
- Um livro pode ter capítulos.
- Uma página da web pode conter seções ou artigos.
- Um curso pode ser composto por várias lições.
Essa propriedade ajuda os mecanismos de busca a entenderem como as partes individuais se relacionam com o todo, permitindo uma indexação mais precisa e uma apresentação mais rica nos resultados de pesquisa.
Exemplos práticos de uso do hasPart:
1. Livro com capítulos
Imagine que você está marcando um livro que possui vários capítulos. Você pode usar o hasPart para indicar que cada capítulo faz parte do livro.
{
"@context": "https://schema.org",
"@type": "Book",
"name": "Dom Quixote",
"author": {
"@type": "Person",
"name": "Miguel de Cervantes"
},
"hasPart": [
{
"@type": "Chapter",
"name": "Capítulo 1: Onde se conta quem era Dom Quixote"
},
{
"@type": "Chapter",
"name": "Capítulo 2: A primeira saída de Dom Quixote"
}
]
}
Neste exemplo, o hasPart indica que os capítulos são partes do livro “Dom Quixote”.
2. Página da web com seções
Se você está marcando uma página da web que contém várias seções ou artigos, pode usar o hasPart para organizar essas partes.
{
"@context": "https://schema.org",
"@type": "WebPage",
"name": "Guia de Viagem para Paris",
"hasPart": [
{
"@type": "Article",
"headline": "Os melhores restaurantes de Paris",
"author": {
"@type": "Person",
"name": "João Silva"
}
},
{
"@type": "Article",
"headline": "Dicas para visitar a Torre Eiffel",
"author": {
"@type": "Person",
"name": "Maria Souza"
}
}
]
}
Aqui, o hasPart indica que a página da web contém dois artigos como parte de seu conteúdo.
3. Curso com lições
Se você está marcando um curso online que é dividido em várias lições, pode usar o hasPart para descrever essa estrutura.
{
"@context": "https://schema.org",
"@type": "Course",
"name": "Introdução ao Marketing Digital",
"provider": {
"@type": "Organization",
"name": "Escola Online"
},
"hasPart": [
{
"@type": "Course",
"name": "Lição 1: Conceitos básicos de marketing digital"
},
{
"@type": "Course",
"name": "Lição 2: Estratégias de SEO"
}
]
}
Neste caso, o hasPart mostra que o curso é composto por várias lições.
Diferença entre hasPart e outras propriedades semelhantes
hasPart vs. isPartOf
hasPart: Indica que uma entidade contém outra entidade.
isPartOf: Indica que uma entidade faz parte de outra entidade.
Exemplo:
{
"@type": "Book",
"name": "Dom Quixote",
"hasPart": {
"@type": "Chapter",
"name": "Capítulo 1"
}
}
Equivale a:
{
"@type": "Chapter",
"name": "Capítulo 1",
"isPartOf": {
"@type": "Book",
"name": "Dom Quixote"
}
}
hasPart vs. contains
hasPart é mais genérico e pode ser usado para qualquer tipo de entidade criativa.
contains (ou similar) pode ser específico para certos contextos, como listas ou coleções.
Benefícios do uso do hasPart
- Melhor indexação: Os mecanismos de busca podem entender melhor a estrutura do conteúdo.
- Resultados enriquecidos: Pode habilitar recursos como snippets ricos ou visualizações detalhadas.
- Organização clara: Facilita a organização hierárquica de informações complexas.
Conclusão
O hasPart é uma propriedade poderosa do Schema.org que permite descrever relações de composição entre entidades. Ele é especialmente útil quando você precisa representar estruturas hierárquicas, como livros com capítulos, páginas da web com seções ou cursos com lições. Ao usá-lo corretamente, você melhora a semântica do seu conteúdo e ajuda os mecanismos de busca a fornecerem resultados mais relevantes.
Se precisar de mais exemplos ou tiver dúvidas específicas, fique à vontade para perguntar!
Resposta final
O hasPart é uma propriedade do Schema.org usada para indicar que uma entidade contém ou inclui outra entidade como parte de si mesma, estabelecendo uma relação de composição hierárquica.