html - Schema.org itemref - 将多个 SportEvents 链接到一个地方

标签 html semantic-markup microformats microdata schema.org

我正在试验微数据,尤其是 schema.org 标签的使用。我正在尝试描述可能具有相同位置属性的多项体育赛事。

<!--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 -->

每个体育赛事的属性“位置”都通过 itemref 属性链接到“奥林匹克公园”地点。这似乎是正确的,而且 google rich snippets 工具报告没有错误。我唯一担心的是,丰富网页摘要数据显示的位置属性并未直接指向奥林匹克公园,而是指向引用它的另一个项目。

这可以在下面看到:

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 标签不会关闭。

我正在兜圈子试图解决这个问题,如果可能的话,我真的很感激一些帮助。如果这看起来令人困惑,我深表歉意,我发现很难描述这个问题。

迈克

最佳答案

我没有发现您的原始实现有任何问题。根据我在自己的网站上阅读和体验的内容,按照您的方式进行操作是正确的,可以避免在每个事件中明确创建嵌套的多个位置。

Google 丰富网页摘要工具向您显示的原因是它需要传达位置的类型。如果它只是像您希望的那样执行 location = Item (olympicpark),您可能会想知道它将 Item (olympicpark) 识别为什么类型。

关于html - Schema.org itemref - 将多个 SportEvents 链接到一个地方,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8726413/

相关文章:

javascript - 努力让一些基本的 JQuery 和 JS 代码工作

html - 用文本包裹 anchor 元素

html - 如何在 html5 中的标题、部分、文章等中使用 h1 到 h6?

seo - Rich Snippet 错误 "This is not verified publisher markup"和 "Missing required field ' 更新'/'author' "

javascript - innerHTML 无法将文本注入(inject)到标记中

html - 如何强制网络浏览器不缓存图像

javascript - 多屏应用的两侧数据绑定(bind)javascript库使用

html - <aside>侧边栏中<section>和<div>的区别

validation - 有没有办法验证 hAtom 微格式?

html - 是否可以在 HTML 文档中包含多个具有相同 rel ="..."值的链接标记?