我尝试使用HTML5 microdata标记我网站上的活动。问题是我的活动有工作日频率(例如,"每周一从20:00到22:00 hs")并且根据HTML5 microdata specification开始时间应该使用ISO 8601 date format但我无法弄清楚如何指定"每周一"使用ISO 8601.
有可能吗?是否有标签工作日事件的替代方案?
提前感谢。
答案 0 :(得分:1)
考虑向schema.org提出有关改进事件标记的提案:EventSchemaUpdate,pdf
其中一项变化是对重复活动的支持:
重复发生的事件
我们希望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微数据规范仅支持单个日期,而不是重复发生的事件。