如何使用HTML5微数据标记“每周一”发生的事件

时间:2013-09-08 21:56:02

标签: html5 date microdata

我尝试使用HTML5 microdata标记我网站上的活动。问题是我的活动有工作日频率(例如,"每周一从20:00到22:00 hs")并且根据HTML5 microdata specification开始时间应该使用ISO 8601 date format但我无法弄清楚如何指定"每周一"使用ISO 8601.

有可能吗?是否有标签工作日事件的替代方案?

提前感谢。

2 个答案:

答案 0 :(得分:1)

考虑向schema.org提出有关改进事件标记的提案:EventSchemaUpdatepdf

其中一项变化是对重复活动的支持:

  

重复发生的事件

     

我们希望startDate和endDate对是可重复的   (即用于重复枚举所描述的事件   比ISO8601重复规则)。这是通过允许任何   带有'occurrence事件'属性的事件,其值是另一个   事件实体。实际上,这是一个单一的一般事件   description作为一种引用特定的模板   然后通常使用至少startDate描述的出现   和endDate,但可能是任何其他面向事件的词汇表。   (旁白:这与Good Relations ProductModel类似   建筑,即http://schema.org/ProductModel,也使用了   捕获模板般重复的原型实例)。如果单身   event有多个列出的开始和结束日期对(通过   occurenceEvent),表示事件在每个事件上重复   场合。

     

例如:

     

1)事件在2012年1月的每个星期一重复。

<div itemscope itemtype="http://schema.org/Event"> ...
<span itemprop="occurenceEvent" itemscope itemtype="http://schema.org/Event">
<time itemprop=”startDate” datetime=”201212”></
time>
</span>
<span itemprop="occurenceEvent" itemscope itemtype="http://schema.org/Event">
<time itemprop=”startDate” datetime=”2012116”></
time>
</span>
<span itemprop="occurenceEvent" itemscope itemtype="http://schema.org/Event">
<time itemprop=”startDate” datetime=”2012123”></
time>
</span>
<span itemprop="occurenceEvent" itemscope itemtype="http://schema.org/Event">
<time itemprop=”startDate” datetime=”2012130”></
time>
</span>
</div>
     

2)2012年2月每个周末都会重复比赛。

<div itemscope itemtype="http://schema.org/Event"> ...
<span itemprop="occurenceEvent" itemscope itemtype="http://schema.org/Event">
<time itemprop=”startDate” datetime=”201223”></
time>
<time itemprop=”endDate” datetime=”201225”></
time>
</span>
<span itemprop="occurenceEvent" itemscope itemtype="http://schema.org/Event">
<time itemprop=”startDate” datetime=”2012210”></
time>
<time itemprop=”endDate” datetime=”2012212”></
time>
</span>
<span itemprop="occurenceEvent" itemscope itemtype="http://schema.org/Event">
<time itemprop=”startDate” datetime=”2012217”></
time>
<time itemprop=”endDate” datetime=”2012219”></
time>
</span>
<span itemprop="occurenceEvent" itemscope itemtype="http://schema.org/Event">
<time itemprop=”startDate” datetime=”2012224”></
time>
<time itemprop=”endDate” datetime=”2012226”></
time>
</span>
</div>
     

这种标记方法很冗长,但在概念上很简单   代表日期范围的任何组合。请注意,没有办法   指定一个复发永远发生(即“每周四在   因为必须明确列出每个实例。这是   设计,以防止来自网页的过时,不正确的数据   从永远存在到未来的更长时间。

     

请注意,经常性事件(即摄影课程提供三个   连续几天)与多日事件(即三维音乐)不同   虽然差异有时可能会模糊(考虑艺术   展览或百老汇表演)。 ISO 8601重复间隔也是如此   支持允许更简洁的非常规的表示   复发。这不是对实际架构的改变,而是一个   澄清如何使用该字段明确地调用   支持这种类型的复发。重复ISO 8601的实例   重复间隔是可能的,但仅限于结果事件的位置   不要重叠,不要气馁。

现在不确定在这个设计中使用它(存在一些变化的风险)。但您可以关注讨论并参加maillist

答案 1 :(得分:0)

HTML5微数据规范仅支持单个日期,而不是重复发生的事件。