Pergunta

Eu estou trabalhando com FOAF e RDFa, e lutando para descobrir se eu deveria estar usando foaf: representação ou foaf: retrata e a maneira correta de usá-los. Aqui está o que eu já estabelecidos:

<div class="profile" typeof="foaf:Person">
<p>Employee Name: <span property="foaf:name">Fred Flintstone</span></p>
<p><img src="http://www.example.com/fred.jpg" alt="Photo of Fred Flintstone" /></p>
</div>

Eu entendo que retrata e representação são inversamente proporcionais. Eu procurei em toda a imensidão da Internet, mas não consegue encontrar qualquer exemplos concretos. Pelo que tenho lido, imagem descreve Pessoa, então estou me sentindo inclinado a usar foaf: representação, porque o meu assunto é Pessoa, mas não tenho certeza de como fazê-lo corretamente. Rel ou rev? No próprio imagem ou no parágrafo delimitador?

Foi útil?

Solução

Parece que estou lidando com um assunto de nicho. Já fiz mais algumas pesquisas e ler, e eu acho que eu encontrei a minha resposta aqui: http://www.w3.org/TR/2008/WD-xhtml-rdfa-primer-20080317/#using-src-on-img .

Para resumir, minhas suspeitas sobre a terminologia estavam corretos:
Imagem -> retrata -> Pessoa
Pessoa -> representação -> Imagem

No entanto, a foaf: img propriedade é um termo mais específico do que simplesmente representação especificamente para relacionar uma pessoa à imagem que os representa. Por isso, teria sido correto para usar rel="foaf:depiction", é mais correto (na minha situação) para uso rel="foaf:img".

Aqui está o código final:

<div class="profile" typeof="foaf:Person">
<p>Employee Name: <span property="foaf:name">Fred Flintstone</span></p>
<p rel="foaf:img" rev="foaf:depicts"><img src="http://www.example.com/fred.jpg" alt="Photo of Fred Flintstone" /></p>
</div>

O atributo rev especifica a relação inversa da parte de trás para a pessoa. Isso solidifica que há uma relação mútua entre esses objetos, e não uma relação unilateral.

Então, se é correto usar rel ou rev depende do que o assunto é. Se eu tivesse um foaf:. Imagem e com uma lista de várias pessoas na imagem, a marcação correta seria rel="depicts"

É uma pena que muitos exemplos foram removidos em versão futura do RDFa Primer, mas felizmente todas as versões anteriores são mantidas para o futuro.

Outras dicas

Scott - a resposta é que retrata e representação são propriedades inversas uma da outra, como você descobriu, ela é definida como esta no FOAF spec:

<rdf:Property rdf:about="http://xmlns.com/foaf/0.1/depicts" rdfs:comment="A thing depicted in this representation.">
[...]
<owl:inverseOf rdf:resource="http://xmlns.com/foaf/0.1/depiction"/>

Isto significa que se você tem inferência adequada em sua loja, não importa qual você usa, eles devem aparecer tanto.

FOAF usa algumas coisas assim, primaryTopic / isTopicOf, tópico / página, fabricante / feito, etc. FOAF também faz uso de inverseFunctionalProperties, i.e. propriedades onde um determinado valor é amarrado exclusivamente a uma única pessoa. O exemplo mais comum é mbox, se você encontrar duas entidades FOAF pessoa com o mesmo endereço de e-mail, você pode inferir que eles são realmente a mesma pessoa, uma vez que são uniqiuely identificados pelo seu endereço de e-mail.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top