Práticas recomendadas para adicionar semântica a um site
Estou um pouco confuso sobre a semântica dos sites. Eu entendo que cada URI deve representar um recurso. Suponho que todas as informações fornecidas pelo RDFa dentro de uma página da Web descrevam o recurso representado pelo URI dessa página da Web. Minha pergunta é: quais são as melhores práticas para fornecer dados semânticos parasubpáginas de um site.
No meu caso, quero criar um site para um grupo de teatro chamado magma usando o RDFa com o schema.org e vocabulários opengraph. Digamos que eu tenha a página de boas vindas (http://magma.com/
), uma página de contato (http://magma.com/contact/
) e páginas para jogos individuais (http://magma.com/play/<playid>/
).
Agora, eu pensaria que tanto a página de boas-vindas quanto a de contato representam o mesmo recurso (magma) enquanto fornecem informações diferentes sobre esse recurso. As páginas de jogo, no entanto, representam peças que só são realizadas por magma. Ou é melhor dizer que as páginas de jogo também representam o magma, mas fornecem informações sobre as jogadas que serão executadas por esse grupo? A terceira opção que eu encontrei éhttp://schema.org/WebPage. Especialmente subtipos comoContactPage
parece ser relevante.
Quando se trata de implementação, onde coloco o RDFa?
E finalmente: Como minha escolha mudará a forma como o site é tratado por terceiros (google, facebook, ...)?
Eu percebo que esta pergunta é um pouco embaçada. Para torná-lo mais concreto, adicionarei um exemplo que você pode criticar:
<html vocab="http://schema.org/" typeof="TheaterGroup">
<head>
<meta charset="UTF-8"/>
<title>Magma - Romeo and Juliet</title>
<!-- magma sematics from a template file -->
<meta property="name" content="Magma"/>
<meta property="logo" content="/static/logo.png"/>
<link rel="home" property="url" content="http://magma.com/"/>
</head>
<body>
<h1>Romeo and Juliet</h1>
<!-- semantics of the play -->
<div typeof="CreativeWork" name="Romeo and Juliet">
...
</div>
<h2>Shows</h2>
<!-- samantics of magma events -->
<ul property="events">
<li typeof="Event"><time property="startDate">...</time></li>
...
</ul>
</body>
</html>