在食谱微数据中标记不精确的持续时间

5 duration recipe microdata rich-snippets schema.org

如果在特定的时间范围内,可以很容易地标记食谱的烹饪或准备时间:

Prep time: <time datetime="PT30M" itemprop="prepTime">30 min</time>
Cook time: <time datetime="PT1H" itemprop="cookTime">1 hour</time>
Run Code Online (Sandbox Code Playgroud)

但是,许多食谱使用估计的持续时间:

Prep time: 10-30 minutes
Cook time: 1 - 1½ hours
Run Code Online (Sandbox Code Playgroud)

以Google将会采用的方式标记此类信息的最佳方式是什么据我所知,ISO 8601持续时间格式似乎不支持"模糊"持续时间/持续时间范围.

插入时间范围很诱人,因此机器可读值位于人类可读的最小值/最大值之间:

Prep time: <time datetime="PT20M" itemprop="prepTime">10-30 minutes</time>

Humans see:           10-30 minutes
Google/machines see:  20 minutes
Run Code Online (Sandbox Code Playgroud)

然而,这感觉很hacky和强迫,并且感觉我为搜索引擎优化提供搜索引擎不正确的数据与细节.

sid*_*ker 1

简短回答:我不认为time当前指定的元素提供了任何指定 \xe2\x80\x9cfuzzy\xe2\x80\x9d 持续时间的好方法。

\n\n

更长的答案

\n\n

time这是HTML 规范中当前元素定义中的一个已知问题/限制。\xe2\x80\x99s 对此进行了讨论,并提出了一些扩展范围以time解决该用例的建议;请参阅https://wiki.whatwg.org/wiki/Time_element#Fuzzy_dates

\n\n

\xe2\x80\x99s 最具吸引力的提议是添加一个certainty属性time,允许您执行如下操作:

\n\n
Prep time: <time datetime="PT20M" certainty="10M">10-30 minutes</time>\n
Run Code Online (Sandbox Code Playgroud)\n\n

除了该certainty-attribute 想法之外,\xe2\x80\x99s 还讨论了更新实际时间格式的规范,以包括使用方法?~字符来指定近似值;请参阅http://www.loc.gov/standards/datetime/pre-submission.html#uncertain

\n\n

无论如何,\xe2\x80\x99s 尚未就任何提议的解决方案达成一致,因此其要点仍然是\xe2\x80\x99s 不幸的是,还没有任何标准方法来表达模糊持续时间\xe2\x80\x94and我认为除了问题中提到的解决方法之外,甚至没有任何非常好的解决方法。

\n

  • 干杯。如果您强烈认为有必要这样做,您可以考虑发送电子邮件至“whatwg.org@whatwg.org”,看看您是否能够召集其他一些有兴趣继续将“确定性”纳入 HTML 规范的人。或者在 https://www.w3.org/Bugs/Public/enter_bug.cgi?product=WHATWG&amp;component=HTML 上提交错误报告。(我们希望很快就能找到一种方法,您可以通过 github 问题跟踪器针对 HTML 规范提出问题,但我们还没有做到这一点。) (3认同)