Schema.org itemref - Связь нескольких спортивных событий в одном месте - PullRequest
2 голосов
/ 04 января 2012

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

<!--Sports Events -->
<div itemscope itemtype="http://schema.org/SportsEvent">
    <span itemprop="name" style="font-weight:bold;">Event One</span><br />
    <meta itemprop="location" content="venue" itemscope itemtype="http://schema.org/Place" itemref="olympicpark" />
    <meta itemprop="startDate" content="2011-08-04T10:00">
    <meta itemprop="endDate" content="2011-08-04T13:45">        
</div>
<div itemscope itemtype="http://schema.org/SportsEvent">
    <span itemprop="name" style="font-weight:bold;">Event Two</span><br />
    <meta itemprop="location" content="venue" itemscope itemtype="http://schema.org/Place" itemref="olympicpark" />
    <meta itemprop="startDate" content="2011-08-04T10:00">
    <meta itemprop="endDate" content="2011-08-04T13:45">        
</div>
<!--End Events -->

<!--Places -->
<h3>Venues</h3>
<div id="olympicpark">  
    <a itemprop="url" href="http://www.london2012.com/olympic-park">Olympic Park</a>
    <div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
        <span itemprop="streetAddress">Olympic Park</span>
        <span itemprop="addressLocality">Stratford</span>
        <span itemprop="addressRegion">London</span>
        <span itemprop="postalCode">E20 2ST</span>
    </div>
    <div itemprop="geo" itemscope itemtype="http://schema.org/GeoCoordinates">
        <meta itemprop="latitude" content="51.54615" />
        <meta itemprop="longitude" content="-0.01269" />
    </div>
    <div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating">
        <span itemprop="ratingValue">4</span> stars - based on 
        <span itemprop="reviewCount">250</span> reviews
    </div>
</div>
<!-- End Places -->

Свойство "location" каждого спортивного события связано с местом "olympic park" через свойство itemref.Кажется, это правильно, и инструмент Google Rich Snippets не сообщает об ошибках.Меня беспокоит только то, что в данных расширенного фрагмента показано, что свойство location указывает не на олимпийский парк, а на другой элемент, который на него ссылается.

Это можно увидеть ниже:

Item 
Type: http://schema.org/sportsevent
name = Event Two 
location = Item( 2 ) 
startdate = 2011-08-04T10:00 
enddate = 2011-08-04T13:45 

Item 2 
Type: http://schema.org/place
Ref to item: Item( olympicpark ) 

Что яХотелось бы, чтобы в каждом элементе спортивного события были указаны отчеты о местоположении "location = Item (olympicpark)".Я могу получить это, если я изменю местоположение на следующее

<span itemprop="location" content="venue" itemscope itemtype="http://schema.org/Place" itemref="olympicpark">

Если я сделаю это, однако, даты начала и окончания не используются, что я могу понять, потому что тег span не закрывается.

Я иду кругами, пытаясь решить эту проблему, буду очень признателен за помощь, если это возможно.Извиняюсь, если это кажется запутанным, мне трудно описать проблему.

Майк

Ответы [ 3 ]

1 голос
/ 28 марта 2013

Вы, вероятно, должны указать itemscope и itemtype в вашем div олимпийского парка и использовать itemid вместо idПроверьте это: Как мне связать элементы в schema.org?

1 голос
/ 15 января 2012

Я не вижу ничего плохого в вашей первоначальной реализации.Исходя из того, что я прочитал и испытал на своих сайтах, правильно делать так, чтобы вы не создавали в явном виде несколько мест, вложенных в каждое событие.

Причина, по которой инструмент фишка Google показывает вампотому что это должно передать, какой тип это местоположение.Если бы он просто сделал location = Item ( olympicpark ) так, как вы хотите, вам было бы интересно узнать, какой тип он распознал Item ( olympicpark) как.

0 голосов
/ 23 мая 2013

Меня беспокоит только то, что расширенные данные фрагмента показывают, что свойство location указывает не непосредственно на олимпийский парк, а на другой объект, который ссылается на него.

Это полностью правильно, вы не должнызапутался: вы создаете itemprop="location" itemscope itemtype="http://schema.org/Place" вложенный / вложенный элемент с собственными свойствами, которые правильно отображаются как свойства item2

...