Схемы вложения

Я впервые использую схемы schema.org, и, как назло, элемент, который я пытаюсь поместить в схема не совсем подходит.

Чтобы дать вам представление. У меня есть пищевой продукт, сведения о питании и аллергии которого хорошо совпадают с схемой рецепта. Однако моя проблема именно в этом: это продукт, а не рецепт.

Могу ли я встроить схему рецепта в элемент div, в котором содержится схема продукта?

I.e.

<div itemtype="http://schema.org/Product">
    <div itemtype="http://schema.org/Recipe">
        <div itemtype="http://schema.org/Nutrition">
            @* Nutrition goes here *@
        </div>
        <div itemtype="http://schema.org/Allergy">
            @* Allergy goes here *@
        </div>
   </div
</div>

person ediblecode    schedule 23.10.2012    source источник


Ответы (3)


Вам следует использовать additionalType

Дополнительный тип элемента, обычно используемый для добавления более конкретных типов из внешних словарей в синтаксисе микроданных. Это связь между чем-то и классом, в котором находится эта вещь. В синтаксисе RDFa лучше использовать родной синтаксис RDFa — атрибут 'typeof' — для нескольких типов. Инструменты Schema.org могут иметь лишь слабое представление о дополнительных типах, в частности о тех, которые определены извне.

Из http://schema.org/Recipe

Пример:

<div itemscope itemtype="http://schema.org/Product" additionalType="http://schema.org/Recipe">
    <div itemscope itemtype="http://schema.org/Nutrition">
        @* Nutrition goes here *@
    </div>
    <div itemscope itemtype="http://schema.org/Allergy">
        @* Allergy goes here *@
    </div>
</div>

Я предполагаю, что вы хотите сделать это, потому что вы продаете рецепты или что-то подобное. Как сказано в приведенной выше цитате, инструменты Schema.org могут иметь более слабое понимание того, почему вы использовали http://schema.org/Product и http://schema.org/Recipe, но, по крайней мере, вы готовы к любому возможному пониманию этого использования.

person Josh Davenport    schedule 23.10.2012
comment
Страница не продает рецепты. Просто у продукта есть информация о питании - person ediblecode; 23.10.2012
comment
Небольшое примечание: только что заметил, что инструмент проверки структурированных данных Google не распознает additionalType определяется так. Если он определен как элемент meta, он распознается, как и ожидалось. - person harriha; 09.01.2013
comment
@harriha у вас есть пример с мета-определением? - person Nicolas Janel; 26.11.2014

@Николас Жанель

<meta itemprop="additionaltype" content="http://schema.org/Recipe">

Однако при этом дополнительные свойства не признаются. Мы используем два блока на нашем сайте прямо сейчас, и, похоже, они работают должным образом на наших страницах продуктов для естественного поиска (расширенные фрагменты) и Google PLA. НАПРИМЕР.

<div itemscope itemtype="http://schema.org/Product"></div>
<div itemscope itemtype="http://schema.org/Recipe"></div>
person iamw00t    schedule 08.12.2014
comment
на самом деле это ответ на первый вопрос и последующие вопросы Николя. w00t первый комментарий!!! - person iamw00t; 09.12.2014
comment
Год спустя. Должны ли мы все еще использовать этот обходной путь? - person Geert-Jan; 11.12.2015

используя микроданные => вы можете использовать ответ «Джош Дэвенпорт» или следующий

<div itemscope itemtype="http://schema.org/Product">
  <link property="additionalType" href="http://schema.org/Recipe"/>
  <link property="additionalType" href="http://schema.org/X"/>
  <link property="additionalType" href="http://schema.org/Y"/>
  <link property="additionalType" href="http://schema.org/Z"/>
</div>

с помощью RDFa

<div vocab="https://schema.org/" typeof="Product Recipe X Y Z">

</div>
person deadManN    schedule 13.03.2016