OpeningHoursSpecification

OpeningHoursSpecification

我在Microdata / Schema.org中是一个新手,因此仍然可以找到解决方法。
既然我了解了将内容放在关系和引用中的全部目的,那么通过将公司的整个网页添加到itemscope标记中来将公司的整个网页放在一个body中是一个好主意吗?因此,您将获得如下结构:

<body itemscope itemtype="http://schema.org/BarOrPub">
    <header>
        <img itemprop="logo" src="logo.jpg" alt="Logo" />
        <h1 itemprop="name">The Bar</h1>
    </header>
    <p>Bla bla</p>
    <table itemscope itemtype="http://schema.org/OpeningHoursSpecification">
        <tr><th itemprop="dayOfWeek">Monday</th><td itemprop="opens">17:00-02:00</td></tr>
        <tr><th itemprop="dayOfWeek">Tuesday</th><td itemprop="opens">17:00-02:00</td></tr>
        <tr><th itemprop="dayOfWeek">Wednesday</th><td itemprop="opens">17:00-02:00</td></tr>
        <tr><th itemprop="dayOfWeek">Thursday</th><td itemprop="opens">17:00-02:00</td></tr>
        <tr><th itemprop="dayOfWeek">Friday</th><td itemprop="opens">17:00-02:00</td></tr>
    </table>
    <p>Bla bla</p>
    <div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
        <span itemprop="streetAddress">straatnaam huisnummer</span>
        <span itemprop="addressLocality">Plaats</span>
    </div>
</body>


如果这是个好主意,我可以像上面一样使用itemtype“ OpeningHoursSpecification”,还是需要让它成为itemprop的子代?

最佳答案

是的,您可以使用body(甚至是html)元素。

还可以将项(例如OpeningHoursSpecification)添加为子项。但是请注意,只有使用属性(itemprop)“链接”它们时,它们才与父项有关系(就像您通过使用address属性对PostalAddress进行的操作一样。)

因此,如果要声明这是BarOrPub的OpeningHoursSpecification,则应使用openingHoursSpecification属性:

<body itemscope itemtype="http://schema.org/BarOrPub">

  <table itemprop="openingHoursSpecification" itemscope itemtype="http://schema.org/OpeningHoursSpecification">
  </table>

  <div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
  </div>

</body>


(我不确定,也没有检查您本身对OpeningHoursSpecification的使用是否正确,但是对于这个问题而言,这始终是题外话。)

08-25 10:17