Я немного запутался, как моделировать отношения между писателем и агентом, используя RDFa (Lite), schema.org и FOAF. Я даже не уверен, нужен ли мне FOAF.
Допустим, я публикую книгу, я являюсь писателем и представлен агентом. Итак, у нас есть два человека, один я, а другой агент. Чтобы уточнить, мое намерение состоит в том, чтобы связать агента в качестве точки контакта для автора, в то же время указав, что автором является я, тема страницы:
<!-- the agent representing me -->
<div resource="/Writecorp/Michael Stern" vocab="http://schema.org/" typeof="Person">
<span property="name">Michael Stern</span>
<div property="memberOf">
<div typeof="Organization">
<span property="name">Writecorp Inc. agency</span>
</div>
</div>
</div>
<!-- the writer, me -->
<div rel="me" vocab="http://schema.org/" typeof="Person">
<link rel="agent" property="contactPoint" href="/Writecorp/Michael Stern" />
<span property="name">H. P. Lovecraft</span>
</div>
Решение <link>
я почерпнул из https://stackoverflow.com/a/19389163/441662.
Когда я передаю это в RDFa 1.1 Distiller and Parser, он показывает следующий вывод :
@prefix ns1: <http://www.w3.org/ns/rdfa#> .
@prefix ns2: <http://schema.org/> .
<> ns2:me [ a ns2:Person;
ns2:contactPoint </Writecorp/Michael Stern>;
ns2:name "H. P. Lovecraft" ];
ns1:usesVocabulary ns2: .
</Writecorp/Michael Stern> a ns2:Person;
ns2:memberOf """
Writecorp Inc. agency
""";
ns2:name "Michael Stern" .
[] a ns2:Organization;
ns2:name "Writecorp Inc. agency" .
- Правильно ли он распознал
rel="me"
? Он показывает ns1:me, но я ничего не могу найти об этом в упомянутом словаре пространства имен, schema.org. Должен ли я использовать префикс FOAF, а затем использоватьfoaf:me
? Я не могу найти много примеров по этому поводу. - Как смоделировать агент как контактную точку? Согласно schema.org и инструменту тестирования Google,
Person
не допускается. бытьcontactPoint
.
Решение?
Одно из предложенных ниже решений состоит в том, чтобы иметь объект, который одновременно является ContactPoint
и Person
, но Валидатору Google это, похоже, не очень нравится.
Другое возможное решение состоит в том, чтобы агент и писатель указывали на один и тот же ресурс ContactPoint
(см. https://stackoverflow.com/a/30055747/441662).
Что касается rel="me"
, это взято из примера микроформатов и невозможно с schema.org (тем не менее, как утверждает @unor в своем ответе) или пенопласт.
/edit 05.07.2015: я поднял вопрос GitHub для этого проблема. Я обновлю этот пост, когда узнаю больше...