会社の営業時間を HTML5 の microdata でマークアップすることになっています。Google と schema.org で少し検索した後、次のコードを書きました。
<time itemprop="openingHours" datetime="Mo 13:00-17:30"><span class="day">Maandag:</span> <span class="hours">13:00-17:30</span></time>
<time itemprop="openingHours" datetime="Tu 09:00-17:30"><span class="day">Dinsdag:</span> <span class="hours">09:00-17:30</span></time>
<time itemprop="openingHours" datetime="We 09:00-17:30"><span class="day">Woensdag:</span> <span class="hours">09:00-17:30</span></time>
<time itemprop="openingHours" datetime="Th 09:00-17:30"><span class="day">Donderdag:</span> <span class="hours">09:00-17:30</span></time>
<time itemprop="openingHours" datetime="Fr 09:00-21:00"><span class="day">Vrijdag:</span> <span class="hours">09:00-21:00</span></time>
<time itemprop="openingHours" datetime="Sa 08:30-15:00"><span class="day">Zaterag:</span> <span class="hours">08:30-15:00</span></time>
Google の構造化データ テスト ツールで Web サイトをチェックインすると、構造化データが正しく認識されていることがわかります。問題は、この割り当ての要件の 1 つが、W3C の HTML バリデーターに準拠しているということです。時間要素ごとに、次のエラーが発生します。
Bad value Mo 13:00-17:30 for attribute datetime on element time: The literal did not satisfy the time-datetime format.
このエラーが発生する理由はわかりますが、HTML5 Microdata でマークアップされ、HTML5 バリデーターに従って有効な HTML であるという方法で営業時間を指定する方法はわかりません。
皆さんがこれについて私を助けてくれることを願っています。:)